スポンサーリンク

合同式は法が素数のベキ乗の場合に帰着する

代数学

本記事の内容

本記事は、一般の整数が法であるような多項式の合同式の解き方について解説する記事です。

本記事を読むに当たり、法が素数のベキ乗であるような場合の多項式の合同式の解の存在条件について知っている必要があるため、以下の記事も合わせてご覧ください。

サラッと復習(読み飛ばしてもOK)

前回解説したことをサラッと復習します。

整数係数多項式

整(数)係数多項式、整(数)係数多項式関数

  1. 整(数)係数多項式
  2. P(x)=ni=0aixi=anxn+an1xn1++a2x2+a1x+a0 (aiZnN{0})の形の式をx整(数)係数多項式(Polynomial with real coefficients)という。
  3. 整(数)係数多項式関数
  4. 関数f:XYが任意のxXに対してf(x)=P(x)を満たすとき、f(整(数)係数)多項式関数という。

整数係数多項式の合同式

f(x)を整数係数多項式、すなわち
f(x)=ni=0aixi=anxn+an1xn1++a2x2+a1x+a0
(aiZnN{0})とします。
このとき、mZに対して、合同式
f(x) (mod m)
整数係数多項式の合同式といいます。

次数

f(x)を整数係数多項式、すなわち
f(x)=ni=0aixi=anxn+an1xn1++a2x2+a1x+a0
(aiZnN{0})とします。
このとき、mZに対して、合同式
f(x) (mod m)
を解くには、各係数aνを、mを法としてaνと合同な数で置き換えてOKです。

なぜなら、次が成り立つからです。

定理1.

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) である。

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

また、aνの中で、mで割り切れるときはaνxνの項は消してOKです。
このような消去を行った後に、an0 (mod m)であれば、上記の合同式
f(x) (mod m)
n次の合同式と呼ぶことにします。

法が素数の場合の整数係数多項式の合同式の解の個数

定理2.

pが素数であるとき、n次の合同式 f(x) (mod p)n個より多くの解を持つことはない。ただし、解の個数はpを法として互いに合同でないものを数えていう。

一般の法に関する多項式の合同式の解は、法が素数ベキの場合に帰着します。

実は、これについては以前にサラッと述べています。
しかし、主張として明言しておらず、証明の伴っていなかったため、ここで明言しておこう、という記事です。

なぜ素数のベキ乗の場合に帰着するのか?(サラッと流れを紹介)

結論から言えば「中国式剰余定理が成り立つから」です

f(x)n次の整数係数多項式とします。
また、mZが合成数(素数でない整数)であるとします。
本来考察したい合同式は
f(x)0 (mod m)
です。
この(1)の解法は法が素数の場合に帰着します。

mは以下のように一意的に変形することができます。

m=pa11pa21pakk (p1<p2<<pkは素数)

なぜなら、次の事実が成り立っているからです。

定理3.(素因数分解定理)

合成数は重複を許して素数の積に分解することができる。また、その分解は一意的である。すなわち、aが正の整数であれば、素数p1,,ptが重複を許して存在し、 a=p1pt と書くことができる。ただし、a=1の場合はt=0と解釈する。また、p1,,ptは順序を除いて一意的である。

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

要するに、mを素因数分解した、ということです。

これを踏まえて(1)を変形すると、
f(x)0 (mod m)f(x)0 (mod pa11pa21pakk)
です。

すなわち、
(lZ) s.t. f(x)=lpa11pa21pakk
です。

このとき、中国式剰余定理を使います。

定理4.(連立合同式の解の存在条件、中国式剰余定理)

m1,m2,,mkZが2つずつ互いに素、すなわち、 (i,j{1,2,,k}:ij) gcd(mi,mj)=1 (どの2つのmimjも自身以外と互いに素)であり、a1,a2,,akZとする。このとき、 {xa1 (mod m1)xa2 (mod m2)xak (mod mk) を満たすxの類はM=kl=1ml=m1m2mkを法として、唯一存在する。

定理4.(中国式剰余定理)の証明は【代数学の基礎シリーズ】初等整数論編 その12を御覧ください。

中国式剰余定理から、pa11pa21pakkに対して、
(iN ; 1ik) f(x)0 (mod paii)f(x)0 (mod pa11pa21pakk)
が成り立つのです。

したがって、結局の所は素数pと自然数nに対して
f(x)0 (mod pn)
という形の合同式の解がわかれば良い、ということになるのです。

主張の明示とその証明

では、主張を明示します。

定理0.

mZm=pa1pa2pan と素因数分解したとし、f(x)を整数係数多項式とする。このとき f(x)0 (mod pa1)f(x)0 (mod pa2)f(x)0 (mod pan) がそれぞれν1, ν2,,νn個の解を持つならば、 f(x)0 (mod m)ν1ν2νn個の解を持つ。そして、それらの解は {xα1 (mod pa1)xα2 (mod pa2)xαn (mod pan) から求められる。ただし、α1, α2,,αnはそれぞれpa1, pa2,,panを法としてのf(x)0の解、すなわち {f(x)0 (mod pa1)f(x)0 (mod pa2)f(x)0 (mod pan) の解の任意の一組である。

文自体は長いですが、主張としてはシンプルです。

要するに、整数係数の多項式の連立合同式に対して、その法が一般の整数だった場合、各合同式の解の個数の積が元の連立合同式の解の個数となり、解も各合同式の解から導けますよ、という主張です。

平たく言えば、

解の個数も解そのものも、各合同式から導けるよ。

と言う主張なのです。

この定理の証明は今まで扱った主張を組み合わせることで直ちに証明完了です。

いざ、証明

では、証明をしていきます。
ただ、先述の通り、今まで扱った主張を組み合わせて順々に論をすすめることで証明できるので、是非挑戦してみて下さい。

定理0.の証明

xZが(4)の解、すなわち
f(x)0 (mod m)
を満たすとしましょう。

このとき、法mZ

m=pa11pa21pank (p1<p2<<pnは素数)

と変形します。
なぜこのように変形できるかというと、定理3.(素因数分解定理)が成り立っているからです。

これを踏まえれば、(4)を変形すると、
f(x)0 (mod m)f(x)0 (mod pa11pa21pakk)
です。
すなわち、
(lZ) s.t. f(x)=lpa11pa21pakk
です。

ここで定理4.(中国式剰余定理)を使えば、pa11pa21pakkに対して、
(iN ; 1ik) f(x)0 (mod paii)f(x)0 (mod pa11pa21pakk)
が成り立ちます。

したがって、(4)の解xZ
f(x)0 (mod pa1)f(x)0 (mod pa2)f(x)0 (mod pan)
を満たすわけですから、勿論(2)も満たすし、(3)も満たします。

そして、α1, α2,,αnはそれぞれ(p^{a_1},\ p^{a_2},\cdots,p^{a_n})を法としての(f(x)\equiv0)の解、すなわち
{f(x)0 (mod pa1)f(x)0 (mod pa2)f(x)0 (mod pan)
の解の任意の一組だったため、
{xα1 (mod pa1)xα2 (mod pa2)xαn (mod pan)
を満たします。

逆に、(5)を満たしているようなxZは、
f(x)0 (mod pa1)f(x)0 (mod pa2)f(x)0 (mod pan)
を満たしているわけですから、結局は
f(x)0 (mod m)
を満たしているということになります。

あとは、α1, α2,,αn
{f(x)0 (mod pa1)f(x)0 (mod pa2)f(x)0 (mod pan)
の解の任意の一組だっため、この連立合同式の各合同式の解の個数を(\nu_1,\ \nu_2,\cdots,\nu_n\)個とすれば、α1, α2,,αnのパターンはν1ν2νn個ある、ということになるわけです。

定理0.の証明終わり

解いてみる

例題を解いてみましょう。

例. x20 (mod 12)

12=223と素因数分解します。
x21 (mod 3)は2つの解α±1 (mod 3)を持ちます。
また、x21 (mod 22)は2つの解β±1 (mod 22)を持ちます。

故に、x20 (mod 12)は4つの解を持ちます。
そしてそれらの4つの解は
{x1 (mod 3)x1 (mod 22), {x1 (mod 3)x1 (mod 22), {x1 (mod 3)x1 (mod 22), {x1 (mod 3)x1 (mod 22)
から求まります。
すなわち、
x1, 7, 5, 11 (mod 12)
が答えです。

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

新年度が始まって1ヶ月が経とうとしています。
新環境で頑張っていらっしゃる方も多いことでしょう。

4月はどんな月でしたか?
お仕事、学生生活、どうですか?
筆者は新社会人となりましたが、会社の方々に良くしていただいています。

是非コメントで教えて下さい!

今回は、一般の整数が法であるような多項式の合同式の解き方について解説しました。
法が合成数の場合は結局の所、法が素数の場合に帰着されます。
今回で「中国式剰余定理って強力じゃん!」と思った方も多いのではないでしょうか。
そうです。強力です。

次回は、数論的関数(平たく言えば数論でよく使われる関数)の代表例、オイラー関数について解説します。

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

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

コメントをする

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