中国剰余定理は
連立一次合同式のおさらい
前回の記事では、連立一次合同式を用いてライバルのテストの点を暴きました。
その概略は、次です。
まず、ライバルのテストの点を3,5,7で割った余りを聞き出します。
例えば、余りがそれぞれ1,2,6だったとすると、
\[ \left\{ \begin{array}{ll} x\equiv 1 && (\mod 3) \cdots ①\\ x\equiv 2 && (\mod 5)\cdots ② \\ x\equiv 6 && (\mod 7) \cdots ③ \end{array} \right. \]
という連立一次合同式が立式されます。
これの具体的な解き方は、2パターンありました。
今回は、簡略バージョンを思い出しておきましょう。
簡略バージョンでは、先ほどの連立一次合同式を、
70×1+21×2+15×6=202
$202 \equiv 97 (\mod 105)$
よって$x=97$
という驚くべきスピードで解いてしまいます。
この発想をおさらいします。
$x$は3で割って1余り、5で割って2余り、7で割って6余る数です。
要するに、$x$には青い条件、緑の条件、黄色の条件んが付いています。
ここで、70は3で割って1余り、かつ5,7で割った余りは0です。
なので、70は青い条件だけを表し、緑と黄色の条件の邪魔をしません。
同様に、21は5で割って1余り、3,7で割った余りは0です。
緑の条件は、5で割った余りが2なので、21は1個ではなく2個必要です。
同様に、黄色の条件は15×6で表されます。
以上のことから、
70×1+21×2+15×6=202
となり、202は100点を超えているので、
105(3×5×7)を法として202と合同な100点以下の数を探し、
$202 \equiv 97 (\mod 105)$
からテストの点は97点という結論を得ます。
問題は、70,21,15という都合のいい数をどうやって見つけるのか、という点です。
70は3で割ると1あまり、5,7で割ると0余る数です。
$5×7x\equiv 1(\mod3)$
を解いて$x$を求めると、
$5×7x$がこの条件を満たすことが分かると思います。
したがって、
$5×7x-1=3k$ $(kは整数)$
となり、一次不定方程式
$5×7x-3k=1$
を解けばよいことになります。
$5×7$と$3$は互いに素なので、
この一次不定方程式は解くことができ、
例えば$x=2, k=23$とすると
$5×7x=5×7×2=70$
となり、70が求まります。
のこりの21と15も同様です。
結果だけまとめると、
\[ \left\{ \begin{array}{ll} x\equiv 1 && (\mod 3) \cdots ①\\ x\equiv 2 && (\mod 5)\cdots ② \\ x\equiv 6 && (\mod 7) \cdots ③ \end{array} \right. \]
を満たす整数$x$が存在し、$0≦x≦105-1$の範囲では97ただ一つであった。
となります。
これを文字で表して一般化すると次のようになります。
$n_1, n_2, n_3$が、どの2つをとっても互いに素な自然数であるとする。
このとき、任意の整数$a_1, a_2, a_3$に対して、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
を満たす整数$x$が$0≦x≦n_1n_2n_3-1$の範囲にただ一つ存在する
この主張を中国剰余定理(文字3つバージョン)というのでした。
さて。
それでは本題。
これを証明していきましょう。
中国剰余定理(式3つバージョン)の証明
中国剰余定理(式3つバージョン)
$n_1, n_2, n_3$が、どの2つをとっても互いに素な自然数であるとする。
このとき、任意の整数$a_1, a_2, a_3$に対して、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
を満たす整数$x$が$0≦x≦n_1n_2n_3-1$の範囲にただ一つ存在する
~脳内会議~
まずは、ライバルのテストの点を暴いた際の
70,21,15に相当する数を見つけなければなりません。
70に相当する数は、
$n_1$で割った余りが$a_1$で、かつ$n_2, n_3$でわった余りが0なので、
$n_2×n_3u\equiv a_1(\mod n_1)$
を満たす$u$です。
これの解の存在が保証できれば、
あとは
70×1+21×2+15×6
に相当する式を立式して終了です。
(証明)
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
を満たす整数$x$が存在することと、
$0≦x≦n_1n_2n_3-1$にそのような$x$はただ一つであることを示せばよい。
まず解の存在を示す。
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
について、
$n_1$で割った余りが$a_1$で、$n_2, n_3$で割った余りが0である数$u_1$を考える。
$n_2×n_3u\equiv 1 (\mod n_1)$
を考える。
$n_2n_3u-1=n_1p$ ($p$は整数)
である。
整理すると、
$n_2n_3u-n_1p=1$
となる。
条件より、
$n_2, n_3, n_1$はどの2つをとっても互いに素であるので、
$n_2n_3$と$n_1$は互いに素である。
よって、一次不定方程式
$n_2n_3u-n_1p=1$
は解を持ち、それを$u=u_1m p=p_1$と置く。
すると、
$n_2n_3u_1$は$n_1$で割った余りが$1$で、$n_2, n_3$で割った余りが0となる。
同様にして、
$n_2$で割った余りが$1$で、$n_3, n_1$で割った余りが0となる数を
$n_3n_1u_2$とし、
$n_3$で割った余りが$1$で、$n_1, n_2$で割った余りが0となる数を
$n_1n_2u_3$とする。
ここで、
$x_0=(n_2n_3u_1)a_1+(n_3n_1u_2)a_2+(n_1n_2u_3)a_3$
と定めると、$u_1, u_2, u_3$の定義から、
$x_0\equiv a_1(\mod n_1)$かつ
$x_0\equiv a_2(\mod n_2)$かつ
$x_0\equiv a_3(\mod n_3)$が成り立つので、
$x=x_0$とすれば、
連立一次合同式
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
の解の存在が示される。
さらに、$x_0$を$n_1n_2n_3$で割った余りも
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
を満たすので、これを$x=x_1$とすると、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
と$0≦x≦n_1n_2n_3-1$を満たす整数の存在が示された。
次に、このような数が$0≦x≦n_1n_2n_3-1$
にただ一つであることを示す。
このような数が$0≦x≦n_1n_2n_3-1$
に2つあると仮定し、それを$x_2, x_3 $ $x_2<x_3$をする。
連立合同式の条件から、
$x_3\equiv x_2\equiv a_1 (\mod n_1)$
$x_3\equiv x_2 \equiv a_2(\mod n_2)$
$x_3\equiv x_2 \equiv a_3(\mod n_3)$
である。
よって、
$x_3-x_2$は$n_1$の倍数かつ$n_2$の倍数かつ$n_3$の倍数である。
したがって、
$x_3-x_3$は$n_1n_2n_3$の倍数でなければならない。
しかし、
$0≦x_2<x_2≦n_1n_2n_3-1$
であり、
$0<x_3-x_2<n_1n_2n_3$
であるが、この範囲に$n_1n_2n_3$の倍数は存在しないので矛盾
よって、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \end{array} \right. \]
と
$0≦x≦n_1n_2n_3-1$
を満たす整数$x$がただ一つ存在することが示された。
(証明終了)
$u_1, u_2, u_3$の存在を示し、
$x_0=(n_2n_3u_1)a_1+(n_3n_1u_2)a_2+(n_1n_2u_3)a_3$
と定めるところが証明の本質です。
ここから先は完全におまけですが、
実は中国剰余定理は式$k$個バージョンまで一般化できますので、
次の見出しでそれを証明しようと思います。
中国剰余定理(式$k$個バージョン)
(定理)
$n_1, n_2, n_3, \cdots, n_k$が、どの2つをとっても互いに素な自然数であるとする。
このとき、任意の整数$a_1, a_2, a_3, \cdots, a_k$に対して、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod a_3) \\ \vdots&&\\ x\equiv a_k && (\mod n_k) \end{array} \right. \]
を満たす整数$x$が$0≦x≦n_1n_2n_3\cdots n_k-1$の範囲にただ一つ存在する
文字と式が増えただけで、証明の本質は式3つバージョンと同じなので、
忙しい方は読み飛ばしてOKです。
(証明)
$N=n_1×n_2×\cdots ×n_k$と置く。
また、$N_i=\dfrac{N}{n_i}$ $i=1, 2, \cdots, k$と置く。
このとき、
$N_iu\equiv 1(\mod n_i)$
を考える。
$N_iu-1=n_ip$ $p$は整数
である。
整理すると
$n_1u-n_ip=1$
である。
$n_1, n_2, \cdots, n_k$はどの2つをとっても互いに素であるので、
$N_i$と$n_i$は互いに素である。
したがって、
一次不定方程式$n_1u-n_ip=1$は解を持つことが示される。
この解を$u=u_i, p=p_i$
と置く。
このとき、
$x_0=(N_1u_1)a_1+(N_2u_2)a_2+\cdots +(N_ku_k)a_k$
と置く。
すると、$x=x_0$とすれば
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \\ \vdots&&\\ x\equiv a_k && (\mod n_k) \end{array} \right. \]
に解が存在することが確認される。
さらに、$x_0$を$N$で割った余りも
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \\ \vdots&&\\ x\equiv a_k && (\mod n_k) \end{array} \right. \]
を満たすので、これを$x=x_1$とすると、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \\ \vdots&&\\ x\equiv a_k && (\mod n_k) \end{array} \right. \]
と
$0≦x≦n_1n_2n_3\cdots n_k-1$
を満たす$x$の存在が示される。
次に、このような$x$がただ一つであることを示す。
$0≦x≦N-1$の範囲にこのような$x$が2つ存在すると仮定し、
$x_2, x_3$と置く。 $x_3>x_2$
定義より、
$x_3\equiv x_2 \equiv a_i (\mod n_1)$ $i=1, 2, 3, \cdots, k$
であるので、
$x_3-x_2$は$n_1×n_2×\cdots n_k$の倍数である。
しかし、
$0≦x_2<x_3≦n_1×n_2×\cdots ×n_k-1$
であり、
$0<x_3-x_2<n_1×n_2×\cdots ×n_k$
でなければならない。
しかしこの範囲に$n_1×n_2×\cdots ×n_k-1$の倍数は存在しないので、これは矛盾
よって、
\[ \left\{ \begin{array}{ll} x\equiv a_1 && (\mod n_1) \\ x\equiv a_2 && (\mod n_1) \\ x\equiv a_3 && (\mod n_3) \\ \vdots&&\\ x\equiv a_k && (\mod n_k) \end{array} \right. \]
と
$0≦x≦n_1n_2n_3\cdots ×n_k-1$
を満たす$x$がただ一つ存在することが示された
(証明終了)
まとめ
いかがでしたか。
・中国剰余定理(式3つバージョン)の証明
・中国剰余定理(式n個バージョン)の証明
を押さえていただれればと思います。
中国剰余定理はあまりに関する定理です。
複数の文字で割った余りを考察する際にとても便利で、
オイラー関数という大変興味深い数学概念の定理の証明で活躍します。
ではまた次回の記事でお会いしましょう!
コメント