合同式習ったけど,公式がなんで成り立つのか分かりません。
文字使うとわかんなくなるから,なるべく具体的な例で考えてみようか。
時計で分かる合同式と法のイメージ
合同式とは,余りの部分だけを取り出すと左右イコールであることを示したものです。
a≡ b (mod m)
このとき,a と b は m を法として合同であると言います。
時計で説明すると分かりやすいでしょう。
たとえば,時計の針を 0 分をスタート地点としてぐるぐると回していったとき,5 分と 125分では時計の長針は同じところを指します。このとき5 と 125 は 60 を法として合同であると言うことができるのです。
こんな感じで,1周回ってもとに戻るポイントを法って言う。時計の長針は値を 60 で割った余りを表している。
これを合同式として表すと
5≡125 (mod 60)
となります。右辺を書き換えると
5≡60×2+5 (mod 60)
125 のうち,60で割り切れる部分を取り除いて,残りの部分だけで考えるのが合同式です。時計で言えば,針が何周回ったかは無視して長針の位置だけで考えるということです。
合同式の和と差
合同式では 4 つの公式を学びます。一つずつ見ていきましょう。
a≡ c (mod m),b≡ d (mod m) のとき
公式① a+b≡ c+d (mod m)
時計の長針で考えてみましょう。たとえば長針は 5 分と 65 分ではいずれも 5 分のところを指し,62 分と 182 分はいずれも 2 分のところを指します。よって
5≡65 (mod 60)
62≡182 (mod 60)
と表すことができます。そして,左辺と右辺をそれぞれ足し合わせた
5+62≡65+182 (mod 60)
67≡247 (mod 60)
が成り立ちます。つまり,時計の針が何周回ったか考えずに,長針の位置だけを考え,5 分の位置から 2 分進んで 7 分の位置に移動したということです。
同じように引き算も成り立ちます。
公式② a−b≡ c−d (mod m)
5−62≡65−182 (mod 60)
−57≡−117 (mod 60)
はじめに時計の針を 0 分の位置に合わせ,そこから 57 分戻したら 3 分の位置を指します。117 分戻す場合も同様です。これは長針だけで考えれば,5 分の位置から 2 分戻して 3 分を指しているのと同じことです。
−57=60×(−1)+3 って表せるから,60 で割って余り
3 とする。高校数学では余りは負の数にしないってのが一応ルール。
結局のところ,60 を法とする合同式では,60 のかたまりを取り除いた部分だけで考えるので
5−62≡65−182 (mod 60)
から 60 のかたまりを取り除いて
5−2≡5−2
として考えても同じことです。
合同式の積
公式③ ab≡ cd (mod m)
さきほどの例で考えてみましょう。
5≡65 (mod 60)
62≡182 (mod 60)
のとき
5×62≡65×182 (mod 60)
が成り立ちます。式は
5×(60+2)≡(60+5)×(60×3+2)
5×60+5×2≡602×3+60×2+60×5×3+5×2
両辺から 60 のかたまりを取り除くと 5×2 だけが残ります。
このように考えることもできます。
5×62≡65×182 (mod 60)
結局 60 の積になる部分がいらないのだから,はじめから 60 のかたまりを取り除けばよいのです。
5×62≡65×182 (mod 60)
5×2≡5×2 (mod 60)
上の 2 つの式は同じことを表していて,5×62≡5×2 としたり,65×182≡5×2 と表すこともできます。
とにかく
mod 60 なら,値から 60 のかたまりを取り除いて考える。それが合同式。
累乗
公式④ ak≡ ck (mod m)
この公式は公式③ ab≡ cd から求めることができます。b ⇒ a,d ⇒ c とすれば
a× a≡ c× c
が成り立つので
a× a×⋯× a≡ c× c×⋯×c
ak≡ ck
としても,ちゃんと合同が成り立ちます。
公式③でやった感じで,たとえば
625≡1825 は 60 のかたまり取り除いて
25≡25 って考えても同じことなの。
演習問題
自然数 m は,2 進法で 101 が 6 回連続する表示
101101101101101101(2)
をもつとする。m を 7 で割った余りを求めよ。(九州大2018文系・改)
まず,合同式を使わずに解いてみます。
101(2) は 10 進法になおすと,5 です。よって
m=101101101101101101(2)
=5⋅215+5⋅212+5⋅29+5⋅26+5⋅23+5⋅20
=5(215+212+29+26+23+1)
23=8 だから
=5(85+84+83+82+81+1)
=5{(1+7)5+(1+7)4+(1+7)3+(1+7)2+1+7+1}
二項定理を用いて
=5{(1+5C114⋅71+⋯+75)+(1+4C113⋅71+⋯+74)+(1+3C112⋅71+⋯+73)+(1+2⋅1⋅7+72)+7+2)}
ここで,7 の倍数を 7k とすると
=5(7k+1+1+1+1+2)
と表すことができる。
=5(7k+6)
=35k+30
=7(5k+4)+2
したがって,m を 7 で割った余りは 2。(答え)
合同式を使った場合
8≡1 (mod 7) とする。
右辺が 1 になるように,左辺を設定するのがポイント。
1 は何乗しても 1 であることを利用したいから。
上で紹介した公式 ak≡ ck を用いると
8k≡ 1k≡1 (mod 7)
これは,8 を何乗してもその数を 7 で割ると余りは 1 であるということを意味します。
m=101101101101101101(2)
=5(85+84+83+82+81+80)
ここで
5(85+84+83+82+81+80)≡5(1+1+1+1+1+1) (mod 7)
よって
m≡5⋅6≡30 (mod 7)
ここで,右辺から 7 のかたまりを取り除くと
m≡2 (mod 7)
が成り立ちます。したがって,m を 7 で割った余りは 2。(答え)
2 つの解き方を比べてみると,結局やっていることはほとんど同じです。ただ,合同式を使った方が式がシンプルに書けます。
人によっていろいろ。ある程度練習積んでて使いこなせる自信があるなら使えばいいし,自信なければ使わない。あと,大学によって使わないところはまったく使わないから,志望校の過去問を確認して決めると良い。
関連