中国剰余定理(高校数学)

同義語:Chinese remainder theorem (high school mathematics)

概要

中国剰余定理(Chinese remainder theorem)とは、互いに素な $2$ 以上の整数 $m,n$ と任意の整数 $a,b$ について、連立合同式 $x\equiv a\pmod m$、$x\equiv b\pmod n$ が解をもち、解が法 $mn$ でただ 1 つに決まるという定理である。$ms+nt=1$ となる整数 $s,t$ をとると $x=a\cdot nt+b\cdot ms$ が解である。どの 2 つも互いに素な 3 つ以上の法でも同じである。互いに素でないときは、解があるのは $\gcd(m,n)$ が $a-b$ を割るときに限り、解は法 $\operatorname{lcm}(m,n)$ でただ 1 つである。例として、$3,5,7$ で割った余りが $2,3,2$ の整数は、法 $105$ で $23$ である。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 合同式の計算規則, 合同式の割り算と逆元, 整数の割り算と互除法

高校での出発点:2 つの余りから数を決める

「$3$ で割ると $2$ 余り、$5$ で割ると $3$ 余る数」は、$8$ である。$8+15=23$ も、$8+30=38$ も同じ条件をみたす。では、条件をみたす数は $15$ ずつ離れたこれらで全部だろうか。そもそも、余りの組をどう選んでも、こういう数はあるのだろうか。この記事では、2 つ以上の「割った余り」の条件を同時にみたす数について、いつあって・どれだけあるかを決める 中国剰余定理 を証明する。

$3$ で割って $2$ 余り、$5$ で割って $3$ 余る数

$0$ から $14$ までで、$3$ で割って $2$ 余る数は
$$ 2,\ 5,\ 8,\ 11,\ 14 $$
である。これを $5$ で割った余りは順に $2,0,3,1,4$ で、$3$ になるのは $8$ だけである。$0$ から $14$ までには条件をみたす数がちょうど 1 つある。

$0$ から $14$ までを余りの表に並べる

$0$ から $14$ までの $15$ 個の数を、「$3$ で割った余り」を行、「$5$ で割った余り」を列とする $3\times5$ の表に置く(図 1)。たとえば $8$ は、$3$ で割って $2$ 余り $5$ で割って $3$ 余るので、2 行目・3 列目(行・列の番号は $0$ から数える)に入る。$15$ 個の数が $15$ 個のマスにちょうど 1 つずつ入り、空いたマスも、2 つ入るマスもない。

0 から 14 までを、3 で割った余り(行)と 5 で割った余り(列)で決まるマスに置いた表。灰色の矢印は x から x+1 への移動で、右下へ 1 マスずつ進み、端に来ると反対側へ回り込む 0 から 14 までを、3 で割った余り(行)と 5 で割った余り(列)で決まるマスに置いた表。灰色の矢印は x から x+1 への移動で、右下へ 1 マスずつ進み、端に来ると反対側へ回り込む
図 1 の矢印のように、$x$ を $1$ 増やすと、行も列も $1$ ずつ進む(端に来たら $0$ に戻る)。行は $3$ 回、列は $5$ 回で元に戻るので、両方が同時に元に戻るのは $15$ 回目で、それまでに同じマスを 2 回通らない。これが「ちょうど 1 つずつ」の理由の直感である。

うまくいかない組:$4$ と $6$

$4$ で割って $1$ 余り、$6$ で割って $2$ 余る数はない。$4$ で割って $1$ 余る数は奇数、$6$ で割って $2$ 余る数は偶数だからである。一方、$4$ で割って $1$ 余り、$6$ で割って $3$ 余る数は $9,21,33,\dots$ とあり、$12$ ずつ離れている($24$ ずつではない)。$4$ と $6$ は公約数 $2$ をもつので、ex-crths-start-table のようにはいかない。

この記事で答える問いは次の 4 つである。

  1. ex-crths-start-table で、なぜちょうど 1 つずつ入るのか。→ thm-crths-main
  2. 条件をみたす数を、表を作らずにどう求めるか。→ ex-crths-main-use、ex-crths-successive
  3. 3 つ以上の条件ではどうなるか。→ cor-crths-many
  4. ex-crths-start-fail のように法が互いに素でないときは、いつ解があるか。→ thm-crths-general
    高校の計算この記事の言葉大学の言葉
    余りの表にちょうど 1 つずつ入る中国剰余定理(thm-crths-main)$\mathbb{Z}/mn\mathbb{Z}\to\mathbb{Z}/m\mathbb{Z}\times\mathbb{Z}/n\mathbb{Z}$ が全単射
    $3s+5t=1$ となる $s,t$ を探すBézout の等式で解を作る(prf-crths-main)$m\mathbb{Z}+n\mathbb{Z}=\mathbb{Z}$
    条件を 1 つずつ代入する逐次代入(ex-crths-successive)同型を順に合成する
    足し算・掛け算を余りごとに行う和と積を保つ対応(prop-crths-ring)環の同型、剰余環 の直積
    中国剰余定理は大学向けの用語解説 中国剰余定理 でも扱っている。この記事では、高校で習う合同式と互除法だけを使って、一行ずつ追える証明を書く。

連立合同式

連立合同式とその解

$m,n$ を $2$ 以上の整数、$a,b$ を整数とする。2 つの合同式
$$ x\equiv a\pmod m,\qquad x\equiv b\pmod n $$
を同時にみたす整数 $x$ を、この 連立合同式 の 解 という。3 つ以上の合同式の組についても同じように言う。解の全体が、ある整数 $x_0$ と $L$ を使って「$x\equiv x_0\pmod L$ をみたす整数全体」になるとき、解は 法 $L$ でただ 1 つ であるという。

$x\equiv a\pmod m$ は「$x-a$ が $m$ で割り切れる」ことで、$x$ を $m$ で割った余りと $a$ を $m$ で割った余りが等しいことと同じである(合同式の計算規則)。

解が法 $15$ でただ 1 つ

ex-crths-start-find の連立合同式 $x\equiv2\pmod3$、$x\equiv3\pmod5$ の解の全体は、$x\equiv8\pmod{15}$ をみたす整数全体
$$ \dots,\ -7,\ 8,\ 23,\ 38,\ \dots $$
である(thm-crths-main で示す)。$-7$ も、$3$ で割ると $-7=3\cdot(-3)+2$ で $2$ 余り、$5$ で割ると $-7=5\cdot(-2)+3$ で $3$ 余る。

証明で使う 2 つの事実

証明には、整数の割り算と互除法 で示した次の 2 つを使う。

  • Bézout の等式:整数 $m,n$ の最大公約数を $g$ とすると、$ms+nt=g$ となる整数 $s,t$ がある。特に $m,n$ が互いに素($\gcd(m,n)=1$)なら $ms+nt=1$ となる $s,t$ がある。$s,t$ は互除法を逆にたどれば求まる。
  • 互いに素な数による割り算:$n$ が $mk$ を割り、$\gcd(m,n)=1$ なら、$n$ は $k$ を割る。
Bézout の等式と互いに素な数による割り算
  1. $3\cdot2+5\cdot(-1)=6-5=1$ なので $(s,t)=(2,-1)$ である。
  2. $15=7\cdot2+1$ なので $15\cdot1+7\cdot(-2)=1$、つまり $(s,t)=(-2,1)$ で $7\cdot(-2)+15\cdot1=1$ である。
  3. $5$ は $3k$ を割るなら $k$ を割る。たとえば $3k=45$ なら $k=15$ で、確かに $5$ の倍数である。

主定理:中国剰余定理

中国剰余定理

$m,n$ を互いに素な $2$ 以上の整数とする。どんな整数 $a,b$ に対しても、連立合同式
$$ x\equiv a\pmod m,\qquad x\equiv b\pmod n $$
は解をもち、解は法 $mn$ でただ 1 つである。$ms+nt=1$ となる整数 $s,t$ をとると、
$$ x_0=a\cdot nt+b\cdot ms $$
が解の 1 つである。

Bézout の等式で解を作り、差が $mn$ で割り切れることを示す

方針:$nt$ は「$m$ で割って $1$ 余り、$n$ で割り切れる数」、$ms$ は「$m$ で割り切れ、$n$ で割って $1$ 余る数」になっている。これに $a,b$ を掛けて足すと、両方の条件をみたす数ができる(段 1〜3)。一意性は、2 つの解の差が $m$ でも $n$ でも割り切れることから出す(段 4・5)。
段 1($s,t$ をとる)。$m,n$ は互いに素なので、Bézout の等式により $ms+nt=1$ となる整数 $s,t$ がある。
段 2($x_0$ を $m$ で割った余り)。$nt=1-ms$ なので $nt\equiv1\pmod m$ である。$ms\equiv0\pmod m$ である。よって合同式の計算規則により
$$ x_0=a\cdot nt+b\cdot ms\equiv a\cdot1+b\cdot0=a\pmod m $$
である。
段 3($x_0$ を $n$ で割った余り)。同じく $ms=1-nt\equiv1\pmod n$、$nt\equiv0\pmod n$ なので
$$ x_0\equiv a\cdot0+b\cdot1=b\pmod n $$
である。よって $x_0$ は解である。
段 4($x\equiv x_0\pmod{mn}$ なら解)。$x-x_0$ が $mn$ で割り切れるなら、$m$ でも $n$ でも割り切れるので、$x\equiv x_0\equiv a\pmod m$、$x\equiv x_0\equiv b\pmod n$ である。
段 5(解はすべて $x\equiv x_0\pmod{mn}$)。$x$ を解とし、$z=x-x_0$ とおく。$x\equiv a\equiv x_0\pmod m$ なので $z$ は $m$ で割り切れ、$z=mk$($k$ は整数)と書ける。$x\equiv b\equiv x_0\pmod n$ なので $n$ は $z=mk$ を割る。$\gcd(m,n)=1$ なので、互いに素な数による割り算により $n$ は $k$ を割り、$k=nl$($l$ は整数)と書ける。よって $z=mnl$ で、$x\equiv x_0\pmod{mn}$ である。
段 4・5 から、解の全体は $x\equiv x_0\pmod{mn}$ をみたす整数全体で、法 $mn$ でただ 1 つである。$\square$

同じ主張は Ste17 Theorem 2.2.2 にあり、そこでは存在を $x=a+tm$ と置いて $t$ の 1 次合同式を解く形で示している(この記事の ex-crths-successive の方法)。$\gcd(m,n)=1$ を使ったのは段 1 と段 5 で、どちらも ex-crths-start-fail で崩れている。段 1 が崩れると解がない組が出る($4s+6t=1$ となる $s,t$ はない)。段 5 が崩れると解が法 $mn$ で 1 つに決まらない($12$ は $4$ でも $6$ でも割り切れるが $24$ では割り切れない)。
ex-crths-start-table の「$15$ 個のマスにちょうど 1 つずつ」は、thm-crths-main の言いかえである。$0$ から $mn-1$ までの $mn$ 個の数は法 $mn$ で互いに合同でないので、どのマス(余りの組 $(a,b)$)にも、その解がちょうど 1 つ入る。

定理の式で解く
  1. $x\equiv2\pmod3$、$x\equiv3\pmod5$。ex-crths-bezout の (1) から $s=2$、$t=-1$ で、$nt=5\cdot(-1)=-5$、$ms=3\cdot2=6$ である。
    $$ x_0=2\cdot(-5)+3\cdot6=-10+18=8 $$
    なので、解は $x\equiv8\pmod{15}$ である。
  2. 同じ法で、余りの組を変えても $nt=-5$ と $ms=6$ はそのまま使える。$-5\equiv10\pmod{15}$ なので、$x\equiv a\pmod3$、$x\equiv b\pmod5$ の解は
    $$ x\equiv10a+6b\pmod{15} $$
    である。$10$ は「$3$ で割って $1$ 余り、$5$ で割り切れる数」、$6$ は「$3$ で割り切れ、$5$ で割って $1$ 余る数」である。たとえば $a=1$、$b=4$ なら $x\equiv10+24=34\equiv4$ で、確かに $4$ は $3$ で割って $1$ 余り、$5$ で割って $4$ 余る(図 1 の 1 行目・4 列目)。

逐次代入で解く

$s,t$ を探さなくても、条件を 1 つずつ代入していけば解ける。

逐次代入:$3$・$5$・$7$ で割った余り

$3$ で割ると $2$ 余り、$5$ で割ると $3$ 余り、$7$ で割ると $2$ 余る数を求める。この問いは古い中国の算術書の問題として知られ、Ste17 Question 2.2.1 にも紹介されている。
段 1。$x\equiv2\pmod3$ なので $x=2+3t$($t$ は整数)と書ける。$x\equiv3\pmod5$ に代入すると $2+3t\equiv3$、つまり $3t\equiv1\pmod5$ である。$3\cdot2=6\equiv1$ なので $t\equiv2\pmod5$、$t=2+5u$ と書ける。よって $x=2+3(2+5u)=8+15u$ である。
段 2。$x\equiv2\pmod7$ に代入すると $8+15u\equiv2\pmod7$ である。$8\equiv1$、$15\equiv1\pmod7$ なので $1+u\equiv2$、つまり $u\equiv1\pmod7$、$u=1+7v$ と書ける。よって
$$ x=8+15(1+7v)=23+105v $$
である。
答えは $x\equiv23\pmod{105}$ で、たとえば $23=3\cdot7+2=5\cdot4+3=7\cdot3+2$ である。

ex-crths-successive の段 1 で $3t\equiv1\pmod5$ を解いたのは、1 次合同式を逆元で解く操作である(合同式の割り算と逆元 の主定理 2)。$\gcd(3,5)=1$ なので $3$ は法 $5$ で逆元 $2$ をもち、$t$ が法 $5$ でただ 1 つに決まる。

同じ問題を定理の式の形で解く(別解)

$3$ で割って $1$ 余り $35$ で割り切れる数は $70$、$5$ で割って $1$ 余り $21$ で割り切れる数は $21$、$7$ で割って $1$ 余り $15$ で割り切れる数は $15$ である($70=69+1$、$21=20+1$、$15=14+1$)。よって $x\equiv a\pmod3$、$x\equiv b\pmod5$、$x\equiv c\pmod7$ の解は $x\equiv70a+21b+15c\pmod{105}$ で、$a=2$、$b=3$、$c=2$ なら

$$70\cdot2+21\cdot3+15\cdot2=140+63+30=233=105\cdot2+23$$

から $x\equiv23$ である。

3 つ以上の法

ex-crths-successive のように、2 つずつまとめていけば、法がいくつあっても解ける。そのためには、まとめた法 $m_1m_2$ が次の法 $m_3$ と互いに素である必要がある。

互いに素な数の積

$m_1,m_2$ がどちらも $m_3$ と互いに素なら、$m_1m_2$ も $m_3$ と互いに素である。

共通の素因数を探す

要点:$m_1m_2$ と $m_3$ に共通の素因数 $p$ があれば、$p$ は $m_1$ か $m_2$ を割り、そのどちらかと $m_3$ の公約数になって仮定に反する。

詳しい証明を開く

$m_1m_2$ と $m_3$ の最大公約数が $1$ でないとすると、その素因数 $p$ が 1 つあり、$p$ は $m_1m_2$ と $m_3$ を割る。素数 $p$ が積 $m_1m_2$ を割るので、$p$ は $m_1$ か $m_2$ を割る(Euclid の補題。整数の割り算と互除法 の系「互いに素な数による割り算」の後半)。$p$ が $m_1$ を割るなら $p$ は $m_1$ と $m_3$ の公約数で、$\gcd(m_1,m_3)=1$ に反する。$m_2$ でも同じである。よって $\gcd(m_1m_2,m_3)=1$ である。$\square$

3 つ以上の法

$m_1,m_2,\dots,m_k$ を $2$ 以上の整数とし、どの 2 つも互いに素(対ごとに互いに素)とする。どんな整数 $a_1,\dots,a_k$ に対しても、連立合同式 $x\equiv a_i\pmod{m_i}$($i=1,\dots,k$)は解をもち、解は法 $m_1m_2\cdots m_k$ でただ 1 つである。

2 つずつまとめる($k$ についての帰納法)

方針:最初の $j$ 個の条件を 1 つの条件 $x\equiv c\pmod{m_1\cdots m_j}$ にまとめ、次の条件と thm-crths-main で合わせる。
段 1($k=2$)。thm-crths-main そのものである。
段 2($j$ 個から $j+1$ 個へ)。最初の $j$ 個の条件をみたす整数全体が、$M_j:=m_1\cdots m_j$ を法として $x\equiv c$ をみたす整数全体に一致しているとする。lem-crths-product-coprime を $j-1$ 回使うと、$m_{j+1}$ はどの $m_i$($i\le j$)とも互いに素なので $\gcd(M_j,m_{j+1})=1$ である。thm-crths-main により、$x\equiv c\pmod{M_j}$ と $x\equiv a_{j+1}\pmod{m_{j+1}}$ の解は法 $M_jm_{j+1}=M_{j+1}$ でただ 1 つである。これが最初の $j+1$ 個の条件をみたす整数全体である。$\square$

$3$・$4$・$5$ で割った余り

$x\equiv2\pmod3$、$x\equiv3\pmod4$、$x\equiv1\pmod5$ を解く。$3,4,5$ はどの 2 つも互いに素なので、解は法 $60$ でただ 1 つであり、ex-crths-successive と同じ逐次代入で $x\equiv11\pmod{60}$ と求まる。

逐次代入の計算を開く

$x\equiv1\pmod5$ から $x=1+5t$。$x\equiv3\pmod4$ に代入して $1+5t\equiv1+t\equiv3$、$t\equiv2\pmod4$ なので $x=11+20u$。$x\equiv2\pmod3$ に代入して $11+20u\equiv2+2u\equiv2$、$2u\equiv0$、$u\equiv0\pmod3$ なので $x\equiv11\pmod{60}$ である。確かめると $11=3\cdot3+2=4\cdot2+3=5\cdot2+1$ である。

法が互いに素でないとき

ex-crths-start-fail の $4$ と $6$ では、解がない組もあり、解があっても法 $24$ ではなく法 $12$ で 1 つに決まった。$12$ は $4$ と $6$ の最小公倍数である。

最小公倍数

$2$ 以上の整数 $m,n$ の両方で割り切れる整数を 公倍数 といい、正の公倍数のうち最小のものを 最小公倍数 $\operatorname{lcm}(m,n)$ という。$mn$ は正の公倍数なので、最小公倍数はある。

最小公倍数の例

$\operatorname{lcm}(4,6)=12$、$\operatorname{lcm}(3,5)=15$、$\operatorname{lcm}(6,10)=30$ である。$\gcd(m,n)\cdot\operatorname{lcm}(m,n)=mn$ が成り立ち($2\cdot12=24$、$1\cdot15=15$、$2\cdot30=60$)、互いに素なら $\operatorname{lcm}(m,n)=mn$ である。この関係は素因数分解を使って示せる(素因数分解の一意性。本記事では証明しない)。下の比較表でだけ使う。

公倍数は最小公倍数の倍数

$m,n$ の公倍数は、すべて $\operatorname{lcm}(m,n)$ の倍数である。

最小公倍数で割った余りを調べる

要点:公倍数を最小公倍数 $L$ で割った余りも公倍数になり、$L$ より小さいので $0$ しかありえない。

詳しい証明を開く

$L=\operatorname{lcm}(m,n)$ とし、$c$ を公倍数とする。$c$ を $L$ で割って $c=Lq+r$($0\le r< L$)とする。$c$ と $L$ はどちらも $m$ の倍数なので、$r=c-Lq$ も $m$ の倍数であり、同じく $n$ の倍数でもある。$r>0$ なら $r$ は $L$ より小さい正の公倍数になり、$L$ の最小性に反する。よって $r=0$ で、$c=Lq$ は $L$ の倍数である。$\square$

互いに素でない法の中国剰余定理

$m,n$ を $2$ 以上の整数、$g=\gcd(m,n)$、$L=\operatorname{lcm}(m,n)$ とする。連立合同式 $x\equiv a\pmod m$、$x\equiv b\pmod n$ が解をもつための必要十分条件は、$g$ が $a-b$ を割ることである。解をもつとき、解は法 $L$ でただ 1 つである。

1 次合同式に直す

方針:$x=a+mt$ と書いて第 2 の条件に代入すると、$t$ についての 1 次合同式になる。その解ける条件は 合同式の割り算と逆元 の主定理 2(1 次合同式の解)で分かる。一意性は lem-crths-lcm から出す。
段 1(必要)。$x$ が解なら $x-a=mk$、$x-b=nl$($k,l$ は整数)と書ける。引くと $a-b=nl-mk$ で、$g$ は $m$ と $n$ を割るので右辺を割り、$a-b$ を割る。
段 2(十分)。$x\equiv a\pmod m$ をみたす整数は $x=a+mt$($t$ は整数)の形である。これが $x\equiv b\pmod n$ をみたすことは $mt\equiv b-a\pmod n$ と同じである。合同式の割り算と逆元 の主定理 2 により、この 1 次合同式は $\gcd(m,n)=g$ が $b-a$ を割るときに解 $t$ をもつ。その $t$ で $x=a+mt$ とすれば解である。
段 3(法 $L$ でただ 1 つ)。$x_0$ を解とする。$x\equiv x_0\pmod L$ なら、$L$ は $m$ と $n$ の倍数なので $x$ も解である。逆に $x$ が解なら、$x-x_0$ は $m$ でも $n$ でも割り切れる(prf-crths-main の段 5 と同じ理由)ので公倍数であり、lem-crths-lcm により $L$ で割り切れる。$\square$

この条件は Cri24 §5.5.1 でも、法が互いに素でない場合の解ける条件として紹介されている(証明はない)。$\gcd(m,n)=1$ なら条件「$g$ が $a-b$ を割る」はいつもみたされ、$L=mn$ なので、thm-crths-general は thm-crths-main を含んでいる。ただし thm-crths-main の証明は解の式 $x_0=a\cdot nt+b\cdot ms$ を直接与える点で、別に述べる価値がある。
0 から 11 までを、4 で割った余り(行)と 6 で割った余り(列)で決まるマスに置いた表。数が入るのは 24 マスのうち、行と列の偶奇がそろう 12 マスだけで、どれも 1 つずつ入る 0 から 11 までを、4 で割った余り(行)と 6 で割った余り(列)で決まるマスに置いた表。数が入るのは 24 マスのうち、行と列の偶奇がそろう 12 マスだけで、どれも 1 つずつ入る
図 2 は、図 1 と同じ表を $m=4$、$n=6$ で作ったものである。$x$ を $1$ ずつ増やすと右下へ進むのは同じだが、$12$ 回で両方が同時に元に戻るので、$24$ マスのうち $12$ マスしか通らない。通るのは「$4$ で割った余り」と「$6$ で割った余り」の偶奇がそろうマス、つまり $g=2$ が $a-b$ を割るマスで、thm-crths-general のとおりである。

公約数があるときの解
  1. $x\equiv1\pmod4$、$x\equiv3\pmod6$。$g=2$ は $1-3=-2$ を割るので解がある。$x=1+4t$ を代入して $4t\equiv2\pmod6$ で、$t\equiv2\pmod3$($t=2$ で $8\equiv2$)なので $x=1+4(2+3u)=9+12u$ である。解は $x\equiv9\pmod{12}$ で、法 $24$ で数えると $9$ と $21$ の $2$ つになる。
  2. $x\equiv1\pmod4$、$x\equiv2\pmod6$。$g=2$ は $1-2=-1$ を割らないので解はない(ex-crths-start-fail)。
    同じ型の例 (3) を開く

    (3) $x\equiv7\pmod{10}$、$x\equiv3\pmod{12}$。$g=2$ は $7-3=4$ を割る。$x=7+10t$ を代入して $10t\equiv-4\pmod{12}$。$t=2$ で $20\equiv8\equiv-4$ なので、$x=27$ が解で、解は $x\equiv27\pmod{60}$ である($\operatorname{lcm}(10,12)=60$)。$27=10\cdot2+7=12\cdot2+3$ である。

互いに素(thm-crths-main)互いに素でない(thm-crths-general)
解がある条件いつもある$g=\gcd(m,n)$ が $a-b$ を割る
解が 1 つに決まる法$mn$$\operatorname{lcm}(m,n)=\dfrac{mn}g$
$0$ から $mn-1$ の表全マスに 1 つずつ(図 1)$\dfrac1g$ のマスに $g$ 個ずつ($0$ から $L-1$ までなら 1 個ずつ。図 2)
例$3,5$:$x\equiv8\pmod{15}$$4,6$:$x\equiv9\pmod{12}$

足し算と掛け算を余りごとに行う

余りの組への対応

$n$ で割った余り $0,1,\dots,n-1$ の集合に、「足して(掛けて)$n$ で割った余りをとる」という足し算・掛け算を入れたものを $\mathbb{Z}/n\mathbb{Z}$ と書く(合同式の計算規則)。整数 $x$ に、$x$ を $n$ で割った余りを対応させる操作を $\pi_n$ と書く。たとえば $\pi_5(23)=3$ である。

余りの組への対応は和と積を保つ

$m,n$ を互いに素な $2$ 以上の整数とする。$\mathbb{Z}/mn\mathbb{Z}$ の元 $x$ に、組 $\psi(x)=(\pi_m(x),\pi_n(x))$ を対応させると、次が成り立つ。

  1. $\psi$ は $\mathbb{Z}/mn\mathbb{Z}$ から組全体 $\mathbb{Z}/m\mathbb{Z}\times\mathbb{Z}/n\mathbb{Z}$ への 1 対 1 の対応(全単射)である。
  2. $\psi$ は和と積を保つ:$\psi(x+y)=\psi(x)+\psi(y)$、$\psi(xy)=\psi(x)\psi(y)$。ここで左辺の和・積は法 $mn$ で、右辺の組の和・積は成分ごとに法 $m$・法 $n$ でとる。
    整数 $x$ から見ると、次の図式は可換である。
    $$ \xymatrix{ & \mathbb{Z} \ar[dl]_{\pi_{mn}} \ar[dr]^{(\pi_m,\,\pi_n)} & \\ \mathbb{Z}/mn\mathbb{Z} \ar[rr]_{\psi} & & \mathbb{Z}/m\mathbb{Z}\times\mathbb{Z}/n\mathbb{Z} } $$
    図式が可換とは、どの整数 $x$ についても $\psi(\pi_{mn}(x))=(\pi_m(x),\pi_n(x))$ となること、つまり「先に $mn$ で割った余りをとってから $m$・$n$ で割っても、直接 $m$・$n$ で割っても、余りは同じ」ということである。
定理と合同式の計算規則から

要点:$mn$ で割った余りを $m$ で割った余りは、元の数を $m$ で割った余りと同じである($mn$ が $m$ の倍数だから)。これで図式の可換性が分かり、和と積は合同式の計算規則からそのまま保たれる。全単射であることは thm-crths-main の言いかえである。

詳しい証明を開く

段 1(可換性)。$x$ を $mn$ で割った余りを $r$ とすると、$x-r$ は $mn$ の倍数なので $m$ の倍数でもあり、$x\equiv r\pmod m$ である。よって $\pi_m(r)=\pi_m(x)$ で、$n$ についても同じである。

段 2(全単射)。$\mathbb{Z}/mn\mathbb{Z}$ も組全体も $mn$ 個の元をもつ。thm-crths-main により、どの組 $(a,b)$ にも $\psi(x)=(a,b)$ となる $x$($0\le x\le mn-1$)がちょうど 1 つある。これは $\psi$ が全単射であることを言っている。

段 3(和と積)。$x,y$ を整数とする。段 1 により、$\pi_{mn}(x+y)$ を $m$ で割った余りは、$x+y$ を $m$ で割った余りに等しい。合同式の計算規則により $x+y\equiv\pi_m(x)+\pi_m(y)\pmod m$ なので、これは組の第 1 成分の和 $\pi_m(x)+\pi_m(y)$(法 $m$)に等しい。第 2 成分も同じで、積についても掛け算の規則で同じように言える。$\square$

法 $15$ の計算を法 $3$ と法 $5$ に分ける

$7$ と $11$ は $\psi(7)=(1,2)$、$\psi(11)=(2,1)$ である。

  • 和:$7+11=18\equiv3\pmod{15}$ で $\psi(3)=(0,3)$。成分ごとに足すと $(1+2,\ 2+1)=(3,3)\equiv(0,3)$ で一致する。
  • 積:$7\cdot11=77=15\cdot5+2$ なので $\psi(2)=(2,2)$。成分ごとに掛けると $(1\cdot2,\ 2\cdot1)=(2,2)$ で一致する。

対応を使って数える・計算する

prop-crths-ring により、法 $mn$ の問題は、法 $m$ の問題と法 $n$ の問題に分けて解ける。解の個数は掛け算になる。

$x^2\equiv1\pmod{15}$ の解

$15$ が $x^2-1$ を割ることは、$3$ と $5$ の両方が $x^2-1$ を割ることと同じである(両方が割るなら、thm-crths-main の証明の段 5 と同じく $15$ も割る)。法 $3$ では $x\equiv1,2$($\pm1$)、法 $5$ では $x\equiv1,4$($\pm1$)が解で、それぞれ $2$ 個ある。組は $2\cdot2=4$ 通りで、対応する $x$ は
$$ x\equiv1,\ 4,\ 11,\ 14\pmod{15} $$
の $4$ 個である(図 3)。たとえば $4^2=16=15+1$、$11^2=121=15\cdot8+1$ である。奇数の素数を法とすると $x^2\equiv1$ の解は $\pm1$ の $2$ 個だけだが(合同式の割り算と逆元)、法 $15$ では $4$ 個になる。法 $105=3\cdot5\cdot7$ なら $2\cdot2\cdot2=8$ 個である。

0 から 14 までの 3×5 の余りの表で、x² を 3 で割った余りと 5 で割った余りがどちらも 1 になるマスを赤く塗ったもの。赤いマスは行 1・2 と列 1・4 が交わる 4 マスで、1, 4, 11, 14 が入る 0 から 14 までの 3×5 の余りの表で、x² を 3 で割った余りと 5 で割った余りがどちらも 1 になるマスを赤く塗ったもの。赤いマスは行 1・2 と列 1・4 が交わる 4 マスで、1, 4, 11, 14 が入る

$7^{2026}$ の下 2 桁

下 2 桁は $100$ で割った余りである。$100=4\cdot25$ で、$4$ と $25$ は互いに素なので、法 $4$ と法 $25$ に分けて計算する。
段 1(法 $4$)。$7\equiv-1\pmod4$ なので $7^{2026}\equiv(-1)^{2026}=1\pmod4$ である。
段 2(法 $25$)。$7^2=49\equiv-1\pmod{25}$ なので $7^4\equiv1$ である。$2026=4\cdot506+2$ なので $7^{2026}=(7^4)^{506}\cdot7^2\equiv49\equiv24\pmod{25}$ である。
段 3(まとめる)。$x\equiv1\pmod4$、$x\equiv24\pmod{25}$ を解く。$x=24+25t$ とおくと、$24\equiv0$、$25\equiv1\pmod4$ なので $x\equiv t\equiv1\pmod4$、$t=1$ として $x=49$ である。よって $7^{2026}$ の下 2 桁は $49$ である。

検算を開く

実は $7^4=2401\equiv1\pmod{100}$ なので直接 $7^{2026}\equiv7^2=49$ とも分かる。法を分ける方法は、このような近道が見つからないときに使える。

例と反例

外す条件反例成り立たなくなること
$m,n$ が互いに素$x\equiv1\pmod4$、$x\equiv2\pmod6$(ex-crths-counter-exist)どんな余りの組にも解がある
$m,n$ が互いに素$x\equiv1\pmod4$、$x\equiv3\pmod6$(ex-crths-counter-unique)解は法 $mn$ でただ 1 つ
対ごとに互いに素法 $4,6,9$(ex-crths-counter-pairwise)3 つ全体の最大公約数が $1$ なら解がある
反例:解がない

$4$ と $6$ は公約数 $2$ をもつ。$x\equiv1\pmod4$ なら $x$ は奇数、$x\equiv2\pmod6$ なら $x$ は偶数なので、両方をみたす $x$ はない。prf-crths-main の段 1 で使った $4s+6t=1$ となる $s,t$ は、左辺がいつも偶数なのでとれない。余りの組 $(1,2)$ は図 2 の灰色のマスで、thm-crths-general の条件($2$ が $1-2$ を割る)をみたさない。

反例:解が法 $mn$ で 1 つに決まらない

$x\equiv1\pmod4$、$x\equiv3\pmod6$ の解は $x\equiv9\pmod{12}$ である(ex-crths-general-use の (1))。法 $24$ で数えると $9$ と $21$ の $2$ 個あり、「法 $mn=24$ でただ 1 つ」は成り立たない。$21-9=12$ は $4$ でも $6$ でも割り切れるが、$24$ では割り切れない。prf-crths-main の段 5 で互いに素を使ったところが崩れている。

反例:全体の最大公約数が 1 でも足りない

$4,6,9$ の 3 つ全部の公約数は $1$ だけである。しかし $x\equiv1\pmod4$、$x\equiv0\pmod6$、$x\equiv0\pmod9$ には解がない。最初の 2 つだけで、奇数と偶数の食い違いが起きるからである。cor-crths-many で「どの 2 つも互いに素」を仮定したのは、2 つずつまとめる段で thm-crths-main を使うためである。

大学数学で見る:環の同型とイデアル

環の直積とイデアルの言葉

足し算と掛け算が決まっていて、ふつうの計算規則(結合法則・分配法則など)をみたす集合を 環 という。$\mathbb{Z}/n\mathbb{Z}$ は環であり(剰余環)、2 つの環の組全体に成分ごとの和と積を入れたものを 直積 という(直積環)。prop-crths-ring は、$\gcd(m,n)=1$ のとき
$$ \mathbb{Z}/mn\mathbb{Z}\cong\mathbb{Z}/m\mathbb{Z}\times\mathbb{Z}/n\mathbb{Z} $$
(和と積を保つ全単射がある、つまり環として同型である)ということを述べている(Cla25 Chapter 8 §2.4。法がいくつあっても、どの法で割っても余りが 0 になる整数は最小公倍数の倍数に限ること、どの余りの組も実現されるのはどの 2 つも互いに素なときに限ることは、同書 Theorem 8.7)。

イデアルの言葉と、多項式での類似(Lagrange の補間)を開く

$m$ の倍数全体を $m\mathbb{Z}$ と書く。Bézout の等式 $ms+nt=1$ は、$m\mathbb{Z}+n\mathbb{Z}=\mathbb{Z}$($m$ の倍数と $n$ の倍数の和で $1$ が作れる)と言いかえられる。prf-crths-main の段 5 は、$m\mathbb{Z}\cap n\mathbb{Z}=mn\mathbb{Z}$($m$ でも $n$ でも割り切れる数は $mn$ の倍数)を示している。大学では、このように「足して全体になる」2 つのイデアル $I,J$ について $R/(I\cap J)\cong R/I\times R/J$ が成り立つ、という形で一般の環に広げる(中国剰余定理。本記事では証明しない)。

同じことは多項式でも起きる。多項式 $f(x)$ を $x-a$ で割った余りは $f(a)$ である(剰余の定理)。「$x-1$ で割って $2$ 余り、$x-2$ で割って $3$ 余り、$x-3$ で割って $5$ 余る 2 次以下の多項式」を探すことは、$f(1)=2$、$f(2)=3$、$f(3)=5$ となる 2 次以下の多項式を探すことと同じで、答えは $f(x)=\dfrac{x^2-x+4}2$ である($f(1)=\dfrac42=2$、$f(2)=\dfrac62=3$、$f(3)=\dfrac{10}2=5$)。ex-crths-successive の別解の $70,21,15$ にあたるのは、$\dfrac{(x-2)(x-3)}2$、$-(x-1)(x-3)$、$\dfrac{(x-1)(x-2)}2$ で、たとえば 1 つ目は $x=1$ で $1$、$x=2,3$ で $0$ になる。この作り方を Lagrange の補間という。

さらに先へ

  • $1$ 以上 $n$ 以下で $n$ と互いに素な数の個数 $\varphi(n)$ は、$m,n$ が互いに素なら $\varphi(mn)=\varphi(m)\varphi(n)$ をみたす。図 1 の表で「$15$ と互いに素な数」が「$3$ と互いに素な行」と「$5$ と互いに素な列」の交わりにちょうど並ぶことから示せる。これは次の記事 Eulerのφ関数(高校数学) で扱う。
  • 型「余りで調べる」の不定方程式の議論(不定方程式の解法)では、法を 2 つの互いに素な数に分けて調べてから、この定理で貼り合わせることがある。
  • $2$ 次の合同式 $x^2\equiv a\pmod n$ の解の個数も、ex-crths-square-one と同じく、$n$ を素数の累乗に分けて掛け算で数える(合成数を法とする合同式)。
  • 法を分けた計算は、大きな数の計算を小さな法の計算に分ける方法として、計算機でも使われる。RSA暗号 の復号を速くする工夫にも使われる。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する