初等整数論/フェルマーの小定理

提供: testwiki
ナビゲーションに移動 検索に移動

テンプレート:Nav

整数論における重要な定理のいくつかは、合同式を用いるとそのステートメントを簡潔に書き表すことができる。その中の一つ、フェルマーの小定理について解説し、そこからわかる、素数を法とする剰余類の構造について解説する。また、合わせて合同式によって素数を特徴づけるウィルソンの定理についても触れる。

フェルマーの小定理

p を素数、ap で割り切れない自然数とすると、ap11(modp)

証明 1 上記の合同式の性質より、「apa(modp)」を示せばよい。この命題を a に関する数学的帰納法で証明する。a =1のとき成立することは自明である。a での成立を仮定して a +1 での成立を示す。二項定理より

(a+1)p=ap+(p1)ap1++(pp1)a+1ap+1 (modp)(p1),,(pp1)p の倍数であるため)

であり、帰納法の仮定より

ap+1a+1(modp)

なので、

(a+1)pa+1(modp) 


証明 2
gcd(a,p)=1 より、定理 1.8 から 0=0a,a,2a,3a,,(p1)a は p で割ったとき全ての余り 0,1,2,3,,p1 を網羅している。余りが 0 すなわち割り切れるのは 0 であるから、a,2a,3a,,(p1)a は全ての余り 1,2,3,,p1 を網羅する。

したがって、定理 2.1 の (v) より 123(p1)a2a3a(p1)a(p1)!ap1(p1)! (modp)

ここで、p は素数なので、(p1)! とは互いに素。したがって、定理 2.1.1 (vi) より、両辺を (p1)! で割って定理を得る。


この定理は単純な定理であるが、とても強力である。この定理を用いれば、合同式について、はじめにあげた問題は次のように解くことができる。

7は素数であり12345は7で割り切れないので、123456=12345711(mod7)である。つまり求める余りは1である。


フェルマーの小定理の逆は必ずしも正しくない。つまり n が合成数であるにもかかわらず a≢1(modp),an11(modp) となる整数 a が存在する場合がある。たとえば 23401(mod341) である。実際 2101=1023=31˙13˙1 より 2101(mod341) である。このような数は擬素数と呼ばれる。さらに厄介なことに、 gcd(a,N)=1 となる任意の a に対し aN11(modN) となる合成数 N が存在する。そのような場合 aN1≢1(modN) となる a を見つけるのは N の素因数を見つけるのと同等の困難さを伴うことになる。このような数をカーマイケル数という。たとえば 561=31117 はカーマイケル数である(この場合は3で割り切れることがすぐに分かるが)。

したがって、フェルマーの小定理のみで与えられた数が素数かどうか判定することはできない。しかし、素数判定法の実行に先立ってフェルマーの小定理が成り立つかどうか確認することで多くの場合に、素数判定に時間を費やすことなく合成数であることを確認することができる。


なお、「小定理」というのは、同じフェルマーによる「大定理」(「フェルマーの最終定理」とも呼ばれる)があるからである。大定理は小定理とは同じフェルマーが予想した(フェルマーは証明を残さない数学者だった)整数論の定理であること以外は無関係であり、合同式も登場しないが、余談としてここに掲載しておく。

定理(Fermat-Wiles)

xn+yn=zn

を満たすような整数x,y,z,n(x,y,z1,n3)は存在しない。

17世紀にフェルマーが予想したこの2つの定理だが、小定理は数十年後に証明されたのに対し、最終定理が証明されたのは1995年のことである。もちろんこの証明は初等的ではなく、この教科書の程度を超えるので、ここでは紹介しない。

位数

素数 p に対して、フェルマーの小定理より、gcd(a,p)=1ap11(modp) だったので、

261(mod7) となる。ここで、2n という形で、7 を法として 1 と合同になる最小の n を探してみよう。212,224,231(mod7) となり、3 が最小だと分かった。

一般に、正の整数 N とこれに互いに素な数 a について、an1(modN) となる最小の自然数 n を、「N を法とした a位数」という。 N を法とした a の位数を ordN(a) と書くことがあるが、この表記はp進位数という別の意味を持つこともあるので注意する必要がある。

当面は素数を法とする位数について論じることとする。位数に関して、次の命題はほぼ自明だが、基本的な事実である。

命題 a を素数 p と互いに素な数とし、a(modp) の位数を e とする。このとき 1,a,a2,,ae1 は合同方程式

Xe10(modp)

のすべての解である。

実際、ai(i=0,1,,e1) がこの合同方程式の解であることは (ai)e(ae)i1(modp) から、すぐにわかる。また 0h<ke1 ならば 0<kh<e より akahakh≢ah(modp) となるから ai(i=0,1,,e1) はどの2つも p を法として互いに非合同である。よって合同多項式の基本定理から ai(i=0,1,,e1) がこの合同方程式のすべての解である。


フェルマーの小定理より、少なくとも n=p1an1(modp) を満たすので、少なくとも素数を法とする場合には位数は確かに存在し、高々 p1 であることがわかる。実のところ一般の正の整数を法とする場合についても、位数が存在することがわかるのだが、それは後に示すことにする。 さらに強く、素数を法とするとき、以下の通り位数は p1 の約数である。

定理 2.2.2 (位数の法則)

正の整数 N を法として、これに互いに素な数 a の位数を e とおく。このとき、an1(modp)e|N.

特に素数 p を法とするときは e|p1 である。

証明
前段の は自明なので を証明する。

除算の原理に基づいて n=eq+r (0r<e) とする。これを an1(modN) に代入して、

ar(ae)qaraeq+r1(modN)

を得る。ここで、0<r<e とすると、e の最小性に反するので、r=0. したがって、n=eq であるから、前段の が示された。

フェルマーの小定理より p が素数ならば ap11(modp) であるから 前段よりe|p1 である。これにより定理の主張はすべて証明された。


位数の法則から、次の事実がわかる。

定理 2.2.2'

a(modN) の位数が e であるための必要十分条件は

  • ae1(modN),
  • e のすべての素因数 q に対して ae/q≢1(modN)

が共に成り立つことである。

証明
必要性は定義からすぐに導かれる。

十分性を証明する。 1つめの条件と位数の法則から、a(modN) の位数は e の約数である。 a(modN) の位数が e/l,l>1 であったとすると l の素因数 q をとれば

ae/q(ae/l)l/q1(modN)

となり、2つめの条件に反する。


位数の法則の系として、特殊な形の数の素因数、および等差数列上の素数について次のようなことがわかる。

系1 n2+1 の形の数の素因数は 2 もしくは 4m+1 の形をしている。さらに一般に n2k+1 の形の数の素因数は 2 もしくは m2k+1+1 の形をしている。

pn2k+1 の奇数の素因数ならば n2k1(modp) であるから2乗して

n2k+11(modp)

であることがわかる。したがって定理 2.2.2 の前段より n(modp) の位数は 2k+1 の約数である。しかし n2k1(modp) かつ p>2 だから n2k≢1(modp) であるから n(modp) の位数は 2k+1 でなければならない。よって定理 2.2.2 の後段より p1(mod2k+1) である。

系2 p を素数とする。 np1+np2++1 形の数の素因数は p もしくは ap+1 の形をしている。

qnp1+np2++1 の素因数ならば np1(n1)(np1+np2++1)0(modq) すなわち

np1(modq)

である。したがって定理 2.2.2 の前段より n(modq) の位数は p の約数、すなわち 1 または pである。 n(modq) の位数が 1 ならば n1(modq) より

0np1+np2++1p(modq)

となるから、q=p でなければならない。 n(modq) の位数が p ならば定理 2.2.2 の後段より q1(modp) である。

ここから、

(235p)2+1

あるいは

Pp1+Pp2++1(P=235q)

といった形の数を考えることで 任意の自然数 n に対し m2n+1 の形の素数が無限に多く存在し、任意の素数 p に対し ap+1 の形の素数が無限に多く存在する ことがわかる。

また、系1から、特に素数が無限に多く存在することの証明3でふれたフェルマー数 Fk=22k+1 の素因数は m×2k+1+1 の形でなければならないことがわかる(実は平方剰余の理論から、さらに強く m2k+2+1 の形でなければならないこともわかる)。素数が無限に多く存在することの証明3でも述べたようにフェルマー数はどの2つも互いに素であるから、Fn1,Fn,Fn+1,Fn+2, の素因数を考えることにより、やはり任意の自然数 n に対し m2n+1 の形の素数は無限に多く存在することが導かれる。


位数については、次の定理も成り立つ。

定理 2.2.3

N に関して、a の位数が e のとき、ak の位数は、E=egcd(k,e) である。

証明
gcd(k,e)=d,k=kd,e=Ed とおけば、(k,E)=1 である。

位数の法則より (ak)x1akx1(modN)e|kxE|kx である。 (k,E)=1 であるから、定理 1.6 より、これは E|x と同値である。 よって akp を法とする位数は E である。


また、次の定理も位数に関する事実として重要である。

定理 2.2.4

i=1,2,,k に対し ai(modN) の位数を ei とする。 ei がどの2つも互いに素ならば、i=1kai(modN) の位数は i=1kei に一致する。

証明
E=i=1kei=ejmj(j=1,2,,k) とおく。つまり mj=1ik,ijei である。

(i=1kai)Ei=1kaiEi=1kaieimii=1k(aiei)mi1(modN)

より i=1kai(modN) の位数は E=i=1kei の約数である。

ここで定理 2.2.2' を用いて位数が正確に E に一致することを示す。まず j=1,2,,k を1つとって、さらに ej の素因数を1つとり、それを q とする。

(i=1kai)E/qi=1kaiE/q(modN)

であるが。ここで ij とすると、仮定より gcd(ei,ej)=1 だから eiq で割り切れない。よって eiE/q の約数であるから aiE/q1(modN) である。したがって

(i=1kai)E/qi=1kaiE/qajE/q(modN).

一方、やはり仮定より ei はどの2つも互いに素だから gcd(ej,mj)=1 である。よって ejE/q=mj(ej/q) を割り切らない。よって

(i=1kai)E/qajE/q≢1(modN).

qE の素因数から任意に取れるから定理 2.2.2' より i=1kai(modN) の位数は E に一致する。


ウィルソンの定理

自然数 p>1 について、p が素数 (p1)!1(modp).

証明 1
p は素数なので、1m<p なる mp と互いに素。したがって、定理 1.8 より、

m,2m,3m,(p1)m は全て p で割った余りが異なるので、mn1(modp) なる n が存在する。

このとき、n=m とすると、m21(m1)(m+1)0(modp) (1)

すなわち、(m1)(m+1)素数 p で割り切れるので、定理 1.12 より m1p で割り切れる、または m+1p で割り切れるはずである。よって、

(1)m10m+10(modp)

1m<p なので、

m=1m=p1

以上をまとめると、m=nm=1p1 となる。対偶を取って、

mmp1mn

よって、mn=1 となるような組をp32 個作ることによって、

(p1)!1p321(p1)11(1)1(modp)


次に、p が素数でない (p1)!≢1(modp) を証明する。

まず、p=4 のとき、(41)!=62≢1(modp) であるから、定理は成り立つ。

p>4 のとき、p は合成数なのだから、p=ab と表せる。もちろん、a,bp1

abならば、(p1)!=(p1)(p2)21 は、a,b を因数に持つので (p1)! を割り切る。したがって、(p1)!0(modp) となる。

a=b ならば、p>4 より、2<a となる。(p1)!a を因数として含む。また、

2<a2a<a22a<ab2a<ab2a<p2ap1

したがって、(p1)!=(p1)2aa21

となり、a2=ab=p で割り切れる。

ゆえにどちらの場合も、p が素数でない (p1)!0≢1(modp)

以上より同値であることが分かり、ウィルソンの定理が証明された。

証明 2 次に、p が素数でない (p1)!≢1(modp) の証明は上記の通り。

p が素数のときフェルマーの小定理より合同式 Xp110(modp) は解 1,2,,p1 を持つ。よって合同多項式の基本定理より

Xp11g(X)(X1)(X2)(X(p1))(modp)

となるが、Xp11,(X1)(X2)(X(p1)) は共に最高次の係数が1のp1次多項式なので、g(X)1(modp) つまり

Xp11(X1)(X2)(X(p1))(modp)

である。X=0 を代入し

1(1)(2)((p1))(1)p1(p1)!(p1)!(modp)

となることがわかる(一番右の合同式は p が奇数のときは (1)p1=1 から、p=2 のときは 11(mod2) から)。


フェルマーの小定理と異なり、ウィルソンの定理は素数であることの必要十分条件をあらわしている。しかし、この定理を大きな数の素数判定に用いることは実用的ではない。というのは階乗を高速に計算する方法が知られていないからである。

テンプレート:Nav