Processing math: 100%
スポンサーリンク

一次合同式の解の存在条件は?方程式との違いは?

代数学

本記事の内容

本記事は「一次合同式の解の存在条件」について解説する記事です。

本記事を読むにあたり、合同式について知っている必要があるため、以下の記事も合わせてご覧ください。

「解く」とは?

端的に言えば、「合同式を解く」というのは

未知の整数が含まれている合同式に対して、その未知数を求めること。

です。
これは、合同式に限らず方程式についてもそうです。
要するに「未知数を求めること」が「解く」ということです。

「一次合同式を解く」とは?

今の話を厳密に書くと以下になります。

合同式を解く

f(x)が整数係数の多項式であるとき、合同式 f(x)0 (mod m) を満たす未知の整数xを求めることを合同式を解くという。

合同式は、一般的な方程式のようには解けない。

例えば、次の問題を考えてみます。

例1. 方程式2x=4を解け。

「んなもんx=2でしょ。」となるでしょう。
勿論正解です。
解き方は1つだけではありませんが、両辺を2で割ってx=2と求めるのが一般的でしょう。
(勿論、2に何かを掛けて4になるんだからx=2だ、と解いてもOKです)

そして、この例の本質的な意味は

解が一つに定まる。

ということです。

では、次はどうでしょう。

例2. 5x3 (mod 7)を解け。

例1.と同様に「5x35で割れば…あれ?」となるのではないでしょうか。
仮に割ったとしても、“形式的に”x35となりますが、そもそも「合同式を解く」というのは「未知の“整数”xを求めること」だったわけですので、35Zですから、この方法ではダメです。

そして、前回解説したように、合同式に対して割り算は一筋縄では行かないのでした。

定理3.

a,b,cZmZ{0}acbc (mod m)であるとする。このとき、gcd(c,m)=1であれば、 ab (mod m) である。
 一般に、gcd(c,m)=dであれば、m=dmと書くとき、 ab (mod m) である。

定理3.の証明は【代数学の基礎シリーズ】初等整数論編 その10を御覧ください。

正直に解いてみる。

では、合同式の性質を使って、正直に解いてみましょう。

5x3 (mod 7)なのですから、
(kZ) s.t. 5x3=7k
となります。
これを満たすようなxZを求めたいわけです。

ただ、「求めたい」は良いのですが、そもそも解が存在するのか?ということから初めなければなりません。
(1)を変形すると
5x7k=3
となります。
要するに、これを満たすような整数x,kが存在するか?ということです。

これは存在します。
なぜなら、次が成り立っているからです。

定理4.

一次の不定方程式 ax+by+cz=k(a,b,c,kZ) が整数解を持つための必要十分条件は、kd=gcd(a,b,c)で割り切れることである(変数の数は任意)。

定理4.の証明は【代数学の基礎シリーズ】初等整数論編 その6を御覧ください。

確かに、gcd(5,7)=1であり、31で割り切れるから、定理4.により5x7k=3は整数解を持つ、すなわち5x7k=3を満たす整数x,kが存在することがわかります。

さて、解が存在することはわかりました。
では、具体的な解は何でしょうか。

(1)を再度変形すれば、
5x=7k+3
となります。
これは、「5x7で割ると3余る」と捉えることができます。
つまり、この場合は「5に何かを掛けて7で割ると3余るような整数を求めよ」ということになるわけです。

鋭い方は「おや?」となるのではないでしょうか。
そうです。
解は唯一つではありません。

x=2とすると、5×2=10=7×1+3となりますから、x=2は解です。
さらに、x=9としても5×9=45=7×6+3となりますから、x=9も解です。

他にもたくさんあります。
このように、解が一つに定まりません。
要するに、x2 (mod 7)を満たす整数であれば、何でも良いのです。

これが一般的な方程式との違いです。

「合同式を解く」とは?

結局の所、合同式は先程の例のように、解が一つの整数に定まるわけではありません。

より一般に、
f(x)0 (mod m)
という合同式に対して、x0をこの合同式の1つの解とします。
x1x0 (mod m)とすれば、
f(x1)f(x0)0 (mod m)
となります。
なぜなら、次が成り立つからです。

定理5.

a,a,b,bZmZ{0}とする。このとき aa (mod m),bb (mod m) が成り立つならば、
  1. a±ba±b (mod m),
  2. abab (mod m)
が成り立つ。
 一般に、aa (mod m)bb (mod m)cc (mod m)で、またf(x,y,z,)x,y,z,に関する整数を係数とする多項式であれば、 f(a,b,c,)f(a,b,c,) (mod m) である。

定理5.の証明は【代数学の基礎シリーズ】初等整数論編 その10を御覧ください。

すなわち、mを法としてx0と同じ同値類(整数の合同は同値関係だから)に含まれる整数はすべて()の解なのです。

したがって、合同式を解くというのは、

合同式を満たす整数の類(同値類)を求めること。

ということになるわけです。

「類を求めること」なので、実は虱潰しに解を求めることができます。
なぜなら、mを法とすれば、Zはちょうどm個の類に分けられるからです。
つまり、Zmで割り切れるグループ、1余るグループ、2余るグループ、m1余るグループのm個の類に分けられます。
したがって、これらを1つずつ当てはめてみれば良いわけなのです。

要するに、手数さえ厭わなければ、合同式を解くことができるのです。

一次合同式の解の存在条件

では、一時の場合について、合同式の解の存在条件を述べます。

定理6.

一次合同式 axb (mod m)gcd(a,m)=1なるときは、1つの解を持つ。gcd(a,m)=d>1であるときは、bdで割り切れるときに限って解を持つ。その解の数はdである。ただし、解の数はmを法としての類の関してである。

解の個数ですが、これはmを方とした同値類の数です。

定理6.の証明

gcd(a,m)=1のとき

xに対して、mを法としたm個の剰余類(同値類)からそれぞれ1つずつ整数を任意に選び、
x1, x2,,xmZ
と書いたとしましょう。
これをmを法とする剰余系といいます。

このとき、
ax1, ax2,,axmZ
もまた、mを法とする剰余系です。
すなわち、m個の剰余類から一つずつ任意に整数を選んだものとなっているわけです(ただし、xiaxiが同じ剰余類に属するとは限りません)。

実際、axhaxk (mod m)となるのは、a(xhxk)mで割り切れるときであり、仮定からgcd(a,m)=1なので、xhxk (mod m)です。
これはh=kのときに限ります。

ただし、ここで以下の事実を使いました。

定理7.

a,b,cZmZ{0}acbc (mod m)であるとする。このとき、gcd(c,m)=1であれば、 ab (mod m) である。
 一般に、gcd(c,m)=dであれば、m=dmと書くとき、 ab (mod m) である。

定理7.の証明は【代数学の基礎シリーズ】初等整数論編 その10を御覧ください。

したがって、bがどんな整数であれ、x1,,xmの中に唯一
axb (mod m)
となるようなxZが存在します。

gcd(a,m)=d>1のとき

axb (mod m)
に解があったとすると、
(yZ) s.t. axb=my
です。
故に、定理4.からb=axmyd=gcd(a,m)で割り切れなければなりません。

bd=gcd(a,m)で割り切れるとすると、d=gcd(a,m)だから、amdの倍数であることに注意して
a=da,m=dm,b=db
と書くことができます。

このとき(1)は
axb (mod m)
となります。
なぜなら、定理3.が成り立っているからです。

ここではgcd(a,m)=1だから(初等整数論編 その10の道中を参照)、(2)を満たすxmを法としての1つの剰余類です。
それをxx0 (mod m)とすると、(2)の解は
x=x0+m(tZ)t
で得られます。

tの2つの値t1およびt2について、これらがmを法として合同になるのはm(t1t2)mで割り切れるとき、すなわちt1t2dで割り切れるときに限ります。
故に、(3)においてt=0,1,2,,d1なる値を与えれば、mを法としての(1)のすべての解が得られるということになります。
したがって、解の数はd個です。

定理6.の証明終わり

実際に解いてみる。

次の一次合同式を解いてみましょう。

問題
26x1 (mod 57)

まず、解が存在するかどうかですが、gcd(26,57)=1ですので、1つの解が存在します。
それをxと書きます。

虱潰しにx=0,1,2,,56まで代入しても解は求まりますが、面倒です。

目標は、なんとかしてxの形に持っていくことです。
26の部分が57に近ければ、26の部分をより小さい整数で表すことができます。
「ん?」となるかと思いますので実際にやってみます。

57=26×2+5ですので、262を掛けると値が近くなります。
故に、
52x2 (mod 57)
という式が得られます(定理5.)。

すると、どんな整数xに対しても
52x+5x=57x0 (mod 57)
なわけですから、
52x5x (mod 57)
です。
したがって、
5x2 (mod 57)
を満たすようなxZを求めれば良いわけです。

ここで、5x2 (mod 57)の両辺に5を掛けると
25x10 (mod 57)
です。
元の式の両辺と足し合わせることで、
26x25x1+10 (mod 57)
となるから、x11 (mod 57)が答えとなるわけです。

皆様のコメントを下さい!

たまたまデカルトを調べていたときに、「困難は分割せよ。」という名言を見つけました。
これを見たときに「これって、数学で言うところの場合分けのことか」と思い至りました。

難しい問題は、いっぺんにすべてを考えるからわからないのであって、細かく場合で分けて、それぞれの場合についてのみ考えるということを繰り返すことで解決を図る、ということなのかなと思いました。

皆様の好きな名言を是非コメントで教えて下さい!

今回は、一次合同式の解の存在条件について解説しました。

合同式は普通の方程式と違って解が1つに定まるとは限りません。
そして、方程式のように「割る」という操作が単純にはできません。
さらに、なによりもまず「そもそも解が存在するのだろうか?」ということから吟味しなければなりません。

次回は合同式の連立方程式について解説します。

乞うご期待!
質問、コメントなどお待ちしております!
どんな些細なことでも構いませんし、「定理〇〇の△△が分からない!」などいただければお答えします!
お問い合わせの内容にもよりますが、ご質問はおおよそ1週間以内にお答えします。
(難しかったらもう少しかかるかもしれませんが…)

初等整数論について、以下の書籍をオススメします!

コメントをする

タイトルとURLをコピーしました