next up previous 次: 合同方程式の解法 上: 合同式 前: 合同式

一次合同方程式

$f(x)$が整数係数の整式であるとき,

\begin{displaymath}
f(x)\equiv 0\quad (\bmod.\ m)
\end{displaymath}

合同方程式と呼ぶ. $x_0$をこの合同式を満たす一つの整数とし, $x_1\equiv x_0$とすれば,定理10より

\begin{displaymath}
f(x_1)\equiv f(x_0)\equiv 0 \quad (\bmod.\ m)
\end{displaymath}

である.すなわち$m$を法として$x_0$と合同な数はすべてこの合同方程式の解である.

以下,合同方程式の解とはその合同方程式を満たす$m$を法とする剰余類のこととする. 合同方程式を解くとは,それを満たす剰余類を求めることとする. 簡単に「合同式を解く」ともいう.

合同方程式のすべての解を求めようとすれば, $x=0,\ 1,\ \cdots,\ m-1$$m$個の値を代入してみればよい.つまりどんな合同方程式の解も,有限回の計算で求めることが出来る. その意味で解を有理整数にかぎるなら,必ず解ける. そのうえで,解の存在とより少ない手順で解を構成する方法を調べよう.

まず一次合同方程式について考える.

定理 12
     一次合同方程式

\begin{displaymath}
ax\equiv b\quad (\bmod.\ m)
\end{displaymath}

$(a,\ m)=1$のときただ一つの解がある. $(a,\ m)=d>1$のときは,$b$$d$で割り切れるときにかぎって解がある. その解の個数は$d$である.■

証明      $(a,\ m)=1$のとき.

\begin{displaymath}
\{x_1,\ x_2,\ \cdots,\ x_m\}
\end{displaymath}

$m$を法とする剰余系とする.このとき

\begin{displaymath}
\{ax_1,\ ax_2,\ \cdots,\ ax_m\}
\end{displaymath}

もまた$m$を法とする剰余系である.なぜならもし

\begin{displaymath}
ax_i\equiv ax_j\quad (\bmod.\ m)
\end{displaymath}

なら, $a$$m$と互いに素であることから

\begin{displaymath}
x_i\equiv x_j\quad (\bmod.\ m)
\end{displaymath}

となる.それは$i=j$のときにかぎるからである. ゆえに任意の$b$に対して $\{x_1,\ x_2,\ \cdots,\ x_m\}$のなかのただ一つ

\begin{displaymath}
ax_i\equiv b\quad (\bmod.\ m)
\end{displaymath}

となる$x_i$が存在する.

$(a,\ m)=d>1$のとき.

\begin{displaymath}
ax\equiv b\quad (\bmod.\ m)
\end{displaymath} (2.3)

に解があるとすると, $ax-b=mN\ (N\ は整数)$と表される.ゆえに$b=ax-mN$$d=(a,\ m)$で割りきれる.そこで

\begin{displaymath}
a=da',\ m=dm',\ b=db'
\end{displaymath}

とおく.(2.3)は定理11 より
\begin{displaymath}
a'x\equiv b'\quad (\bmod\ m')
\end{displaymath} (2.4)

と同値である.ここで$a'$$m'$は互いに素であるから(2.4)を満たす$x$$m'$を法とする一つの類である.それを $x\equiv x_0\quad (\bmod.\ m')$とする. (2.4)の解は
\begin{displaymath}
x=x_0+m't\quad t\ は任意の整数
\end{displaymath} (2.5)

によって与えられる.$t_1$$t_2$に対する$x$$m$を法として合同になるのは

\begin{displaymath}
m'(t_1-t_2)\equiv 0\quad (\bmod.\ m)
\end{displaymath}

つまり

\begin{displaymath}
t_1-t_2\equiv 0\quad (\bmod.\ d)
\end{displaymath}

となるときにかぎる. したがって,(2.5)で$t$に対して,$d$を法とする剰余系 $\{0,\ 1,\ \cdots,\ d-1\}$ の値を与えるとき, $m$を法とする(2.3)のすべての解が得られる.すなわちその 解の個数は$d$である.□


このように合同方程式(2.3)を解くことは,一次不定方程式

\begin{displaymath}
ax+my=b
\end{displaymath}

の整数解を求めることと同じである.

定理 13
     $m_1,\ m_2,\ \cdots,\ m_k$が二つずつ互いに素で, $a_1,\ a_2,\ \cdots,\ a_k$は 任意の整数であるとする.
$\displaystyle x$ $\displaystyle a_1\quad (\bmod.\ m_1)$  
$\displaystyle x$ $\displaystyle a_2\quad (\bmod.\ m_2)$  
 

 …

  (2.6)
$\displaystyle x$ $\displaystyle a_k\quad (\bmod.\ m_k)$  

を満たす$x$ $M=m_1m_2\cdots m_k$を法としてただ一つ存在する.■

証明     第一の合同式を満たす$x$

\begin{displaymath}
x=a_1+m_1t
\end{displaymath} (2.7)

と書ける.これが第二の合同式も満たすのは

\begin{displaymath}
a_1+m_1t\equiv a_2\quad (\bmod.\ m_2)
\end{displaymath}

すなわち

\begin{displaymath}
m_1t\equiv a_2-a_1\quad (\bmod.\ m_2)
\end{displaymath}

のときである.ところが, $m_1$$m_2$は互いに素なのでこれには

\begin{displaymath}
t=t_0+m_2s
\end{displaymath}

のように$m_2$を法とするただ一つの類が解として存在する.これを(2.7)に代入して

\begin{displaymath}
x=a_1+m_1t_0+m_1m_2s
\end{displaymath}

つまり

\begin{displaymath}
x\equiv a_1+m_1t_0\quad (\bmod.\ m_1m_2)
\end{displaymath}

この一つの合同式を(2.6)の最初の二つの合同式に置き換えてよい. 同様の操作を繰りかえすことができる.ついには

\begin{displaymath}
x\equiv x_0\quad (\bmod.\ M)
\end{displaymath}

を得る.□


この定理は 中国の剰余定理(Chinese Remainder Teorem) と呼ばれる. 中国古代(一世紀頃)の書『孫子算経』の中に,「3で割れば2余り,5で割れば3余り, 7で割れば2余るような数は何か」という問いと解の求め方が述べられている. この種の問題が孫子以降の中国の算術の書に見られる.下って16世紀の終わり頃の 『算法統宗』(程大位)にはこの孫子の問いに対する解の求め方が歌で述べられている. このような歴史があるのでこの定理が上のように呼ばれるのである.


ここでガウス(Gauss) による対称性を用いたより美しい別証を紹介する.

ガウスの別証明

$M=m_1m_2\cdots m_k$に対し
\begin{displaymath}
M=m_1M_1=m_2M_2=\cdots=m_kM_k
\end{displaymath} (2.8)

とおく.$M_n$$m_n$は互いに素なので
\begin{displaymath}
M_nt_n\equiv 1\quad (\bmod.\ m_n)\quad (n=1,\ 2,\ \cdots,\ k)
\end{displaymath} (2.9)

となる解 $t_n\ (n=1,\ 2,\ \cdots,\ k)$が存在する. このとき(2.6)の解は

\begin{displaymath}
x\equiv a_1M_1t_1+a_2M_2t_2+\cdots+a_kM_kt_k\quad (\bmod.\ M)
\end{displaymath}

である. 実際,(2.9)から

\begin{displaymath}
a_nM_nt_n\equiv a_n\quad (\bmod.\ m_n)
\end{displaymath}

で, $M_1,\ \cdots,\ M_k$のうち$M_n$以外はすべて$m_n$で割りきれるので,

\begin{displaymath}
x\equiv a_n\quad (\bmod.\ m_n) (n=1,\ 2,\ \cdots,\ k)
\end{displaymath}

である.

唯一の解であることは, $x_1$$x_2$がともに(2.6)を満たせば

\begin{displaymath}
x_1\equiv x_2\quad (\bmod.\ m_n) (n=1,\ 2,\ \cdots,\ k)
\end{displaymath}

なので, $m_1,\ m_2,\ \cdots,\ m_k$の最小公倍数$M$に関して

\begin{displaymath}
x_1\equiv x_2\quad (\bmod.\ M)
\end{displaymath}

となるからである.□

 


next up previous 次: 合同方程式の解法 上: 合同式 前: 合同式
Aozora Gakuen