スポンサーリンク

多項式の合同式の解の個数と存在条件(法が合成数)

代数学

本記事の内容

本記事は、多項式の合同式(法が合成数の場合)の解の個数と存在条件について解説する記事です。

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

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

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

整数係数多項式

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

  1. 整(数)係数多項式
  2. P(x)=ni=0aixi=anxn+an1xn1++a2x2+a1x+a0P(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を法として互いに合同でないものを数えていう。

法が合成数の場合(素数でない場合)は?

では、本題です。

結論(主張の明示)

結論としては、次が成り立ちます。

定理0.

整数係数多項式の合同式f(x)0 (mod pn)の解はf(x)0 (mod p)の解から導かれる。
  1. f(x0) (mod p)ならば、f(x)0 (mod pn)の解の中に、xx0 (mod p)なるものが、 (mod pn)に関してただ1つ存在する。
  2. f(x0)0 (mod p)の場合には、f(x)0 (mod pn)xx0 (mod pn)なる解を持つとき、その解からf(x)0 (mod pn+1)p個の解が派生することもあり、あるいは、またf(x)0 (mod pn+1)xx0 (mod pn)なる解を持たないこともある。

「おい、ちょっと待ってくれ。“法が合成数の場合”じゃないのか?これだと素数のべき乗ではないか」と疑問に思われる方もいらっしゃると思います。

実は、法が合成数の場合は結局の所、法が素数のベキ乗の場合を考えれば十分なのです。
なぜなのか?を説明しましょう。

なぜ素数のベキ乗の場合を考えるだけで十分なのか?

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

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.の証明

まず、素数pを法とするとき、
f(x)0 (mod p)
(ただし、f(x)は整数係数多項式)の解が求められたとして、それからpの任意のベキを法とするときの解を求める方法について述べます。

f(x)0 (mod p2)
という合同式の解は(3)の解でもあります。
実際、(4)から
(kZ) s.t. f(x)=kp2
ですので、
f(x)=(kp)p
を満たすため、f(x)0=f(x)pの倍数だからです。

さて、x0を(3)の解としましょう。
すなわちx0Z
f(x0)0 (mod p)
を満たすとしましょう。
すると、(4)の解xは、yZを用いて
x=x0+py
という形をしていなければなりません。
これを(4)に代入すると、
f(x)=f(x0+py)0 (mod p2)
となります。

ここで、f(x)が多項式であることから、f(x0+py)(変数はy)はテイラー展開が可能です(1変数実数値関数の微分編 その11)。
f(x0+py)y=0周りでテイラー展開すると、
f(x0+py)=f(x0)+pyf(x0)+p2y2f(x0)2+
となるため、
f(x0)+pyf(x0)+p2y2f(x0)2+0 (mod p2)
となります。

さて、そもそもf(x)は整数係数の多項式でした。
故に、f(x), f(x0)2, f(x0)3!, も整数係数の多項式です。

したがって、f(x0), f(x0)2, f(x0)3!, は整数です。

故に、上記の展開の式の第3項より先の項はすべてp2で割り切れるため、(5)を満たしている整数で(4)も満たすような整数を求めることは
f(x0)+pyf(x0)0 (mod p2)
からyを求めることに帰着するわけです。
(3)から、f(x0)pで割り切れる為、上記の式を変形すると、
f(x0)p+yf(x0)0 (mod p)
です。

さて、ここで以下の2つの場合に分けます。

  1. f(x0)0 (mod p)である場合
  2. f(x0)0 (mod p)である場合

(6)に対して、なぜこの2つの場合に分けるのか?ということを説明します。
結論としては、以下が成り立つからです。

定理5.

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

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

定理5.において、今の状況は
a=f(x0),x=y,b=f(x0)p,m=p
です。
したがって、(6)の解は

  • gcd(a,m)=gcd(f(x0),p)=1のときは1つの解を持つ。
  • gcd(a,m)=gcd(f(x0),p)=d>1のときは、b=f(x0)pd=gcd(f(x0),p)で割り切れる場合にのみ解を持ち、その個数はd個。

という条件下で存在します。
今、pは素数ですので、gcd(f(x0),p)=1であることと、f(x0)pで割り切れないことは同値です。
以上から

  1. f(x0)0 (mod p)である場合
  2. f(x0)0 (mod p)である場合

の2つの場合に分けるのです。

  1. f(x0)0 (mod p)である場合
    このとき、定理5.から(6)は唯一つの解を持ちます。
    それをy0Zとしましょう。
    すなわち、
    yy0 (mod p)
    とします。
    すなわち
    (rZ) s.t. yy0=pr
    です。
    故に、pypy0=p2rだから、py=py0+p2rを得ます。
    これを(5)に代入すれば、
    x=x0+py=x0+py0+p2rx(x0+py0)=p2r
    となるため、
    xx0+py0 (mod p2)
    となります。
    すなわち、(3)の解xx0 (mod p)から(4)の1つの解(7)を得たのです。
  2. f(x0)0 (mod p)である場合
    これも定理5.を使います。
    定理5.から、f(x0)ppで割り切れないならば、解は存在しません。

    もし、f(x0)ppで割り切れるならば、任意のyZに対して(6)が成り立ちます。
    実際、f(x0)ppで割り切れるとすると、
    (sZ) s.t. f(x0)p=sp
    です。
    故に、(6)は
    sp+yf(x0)0 (mod p)
    となり、これを満たすyZを知りたい、という状況になります。
    そもそも(6)は
    (kZ) s.t. f(x0)p+yf(x0)=kp
    ということでしたので、これを基に先の式を変形すれば、
    sp+yf(x0)=kp
    となります。
    今、f(x0)0 (mod p)という状況を考えているため、
    (tZ) s.t. f(x0)=tp
    であるから、
    ytp=(ks)p
    を満たすわけです。
    これはたとえyZがどんな整数であったとしても成り立ちます。
    もっと平たく言えば、
    sp+ytp0 (mod p)
    yZが何であっても成り立つということです。

    さて、以上を踏まえて、(5)に立ち返ってみましょう。
    すると、yZは何でも良いわけですので、
    x=x0+p0, x0+p2,,x0+p(p1),
    の全てが(4)を満たしている、ということになります。
    このyZpを法として考えれば
    xx0, x0+p, x0+2p,,x0+(p1)p (mod p2)
    が(4)を満たすということになります。

すなわち、(5)の形の数xは1つも(4)の解を与えないか、あるいはp2を法として、p個の解を与えるかのいずれか一方が成り立つということになります。

同様にして、(3)の代わりに
f(x)0 (mod pn)(nN)
を考察すれば、(8)の1つの解をx0とするとき、
x=x0+pny
の形の数で、
f(x)0 (mod pn+1)
を満たす数は、

  1. f(x0)0 (mod p)の場合には、pn+1を法として唯一である。
  2. f(x0)0 (mod p)の場合には、pn+1を法として1つも存在しないか、またはp個存在する。
    ただし、p個の解が存在するのはf(x0)0 (mod pn+1)で、(9)においてyを任意に取ったとしても、それが(10)を満たすときである。

ということになります。

定理0.の証明終わり

実際に計算してみる

実例で計算してみます。

例1. 定理0.の1.の場合

x22 (mod 49)の解を求めてみます。

まずは、49=72と書けるため、x22 (mod 7)の解をx±3 (mod 7)と求めます。

x22 (mod 49)の解を求めるためにx=3+7yとおけば、
(3+7y)22 (mod 49)
となるため、
9+42y2 (mod 49)
です。
すなわち、
6u1 (mod 7)
であるから、
y1 (mod 7)
です。
したがって、x10 (mod 49)となり、今1つの解はx1039 (mod 49)となります。

例2. 定理0.の2.の場合

これは初等整数論において重要な事実です。
素数の中で2が別格の素数で有理整数論における特異点ともいうべきものであることをある種表しています。

命題6.

a1 (mod 8)なるとき、 x2a (mod 2n)(n3) の解は4つである。その1つをx0とすれば、解は ±x0, ±x0+2n1 である。

命題6.の証明

x=1+2yを奇数としましょう。
すると、x2=1+4y(y+1)で、yまたはy+1は偶数ですから、x21 (mod 8)です。

故に、a1 (mod 8)aが奇数であるときに命題の合同式が解を持つための必要十分条件です。

n=3であれば、この条件下において、解はx1,3,5,7 (mod 8)です。
あるいはx\p,1, ±1+4 (mod 8)です。

数学的帰納法で証明します。
ある指数nNに対して命題が成り立つとすると、指数n+1のときの解は
±x0+2ny(±x0+2n+1)+2ny (mod 2n+1)
でなければなりません。
そのy(y=0または1)は
(±x0+2ny)2a (mod 2n+1)
あるいは
{(±x0+2n1+2ny)}2a (mod 2n+1)
から求められます。

仮定から、x20a=2ntというtZが存在します。
故に(11)から
2nt0 (mod 2n+1)
です。
tが奇数であれば、これは解が存在しません。
一方で、tが偶数であれば、yZは任意です。
故に (mod 2n+1)に関しては、y=0,1として±x0および±x0+2nが解です。
すなわち、 (mod 2n)に関する解\omx0から、 (mod 2n+1)に関する解が得られないか、あるいは4つの解が得られます。

次に、
(±x0+2n1+2n)2x20±2nx0+22n2x20+2n (mod 2n+1)
(ただし、x0は奇数、また2n2n+1だから)です。
故に(12)から
2nt+2n0 (mod 2n+1)
です。

今度はtがぐうすうであれば、これに解は存在しませんが、tが奇数であれば、yは任意です。
故に (mod 2n+1)に関して
±(x0+2n1),±(x0+2n1)+2n
の4つの解が得られました。

命題6.の証明終わり

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

さてさて、GWが近づいてきました。
皆様はどこかお出かけですか?それとも家で数学ですか?

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

今回は、多項式の合同式(法が合成数の場合)の解の個数と存在条件について解説しました。

法が合成数の場合は結局の所、法が素数の場合に帰着されます。
しかし、どういうときに解が存在するのか、存在するなら何個か?ということは一筋縄では行きません(少々複雑という意味で)。

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

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

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

コメントをする

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