(in English) (in Japanese)

Fermatの小定理について

素数に関する重要な定理として、Fermatが発見した合同式に関する定理がある。

$a^n (n=0, 1, 2, 3, \ldots)$ を素数 $p$ で割った余りが $n$ に対してどのように変化していくかを考えよう。 もちろん $a$ が $p$ の倍数ならば $a^n$ も $p$ の倍数だから、余りはつねに $0$ である。したがって $a$ が $p$ の倍数でない場合が重要である。

$2^n$ を $7$ で割った余りは $1, 2, 4, 1, 2, 4, \ldots$ となり、その後 $1, 2, 4$ の繰り返しとなる。

$3^n$ を $7$ で割った余りは $1, 3, 2, 6, 4, 5, 1, 3, 2, 6, 4, 5, \ldots$ となり、その後 $1, 3, 2, 6, 4, 5$ の繰り返しとなる。

$2^n$ を $5$ で割った余りは $1, 2, 4, 3, 1, 2, 4, 3, \ldots$ となり、その後 $1, 2, 4, 3$ の繰り返しとなる。

もちろん、 $a=1$ ならば $a^n$ を $p$ で割った余りは常に $1$ である。

これらの例では、いずれもどこかで余りは $1$ となり、その後は同じパターンの繰り返しとなる。 $1$ になる場所はそれぞれ異なっている、同じ素数 $p=7$ でも $a=1, 2, 3$ でそれぞれ異なっているが、 少なくとも $p=7$ のとき $n=6$ ならば $a^n$ を $p$ で割った余りは $1$ となり、また $p=5$ のときは $n=4$ で $a^n$ を $p$ で割った余りは $1$ になると思われる。

Fermatはこれらのことから、($a$ が $p$ の倍数でない限り) $a^n$ を $p$ で割った余りは $n=p-1$ で必ず $1$ になると考えた。つまり、次のことが成り立つと考えたのである。

Fermatの小定理

$p$ が素数で、 $a$ が $p$ で割り切れない整数ならば \[a^{p-1}\equiv 1\pmod{p}\] が成り立つ。

長年解決されなかったFermatの最終定理に対して、この定理をFermatの小定理という。 Fermatの最終定理同様、Fermatの小定理についてもFermat自身が証明を残したことは確認されておらず、 最初に証明を公表したのはEulerとされているが、Burton, History of mathematics/an introduction, 7th Ed., McGrawHill, 2011 の p.p.514-515 によればLeibnizがそれ以前に未公開の草稿の中で証明していた ようである。

LeibnizやEulerの証明は二項係数を用いたものである。すなわち $1\leq a\leq p-1$ ならば $\binom{p}{a}=p!/a!(p-a)!$ は(分子が $p$ の倍数だが分母が $p$ の倍数でないから) $p$ の倍数であるから $a^p\equiv a\pmod{p}$ ならば \[(a+1)^p=a^p+\binom{p}{1}a^{p-1}+\binom{p}{2}a^{p-2}+\cdots +\binom{p}{1}a+1\equiv a^p+1\equiv a+1\pmod{p}\] が成り立つことから、数学的帰納法より $a^p\equiv a\pmod{p}$ がすべての自然数 $a$ について成り立つことがわかる。

一方で、Fermatの小定理は剰余の性質から自然に証明することもできる。 初等整数論の基本定理の証明の 第5節の最後に書いた注意点から $p$ 個の整数 $0, a, 2a, 3a, \ldots, (p-1)a$ を $p$ で割った余りは $0, 1, \ldots, p-1$ を1回ずつとる。ここから $0$ を除くと $p-1$ 個の整数 $a, 2a, 3a, \ldots, (p-1)a$ を $p$ で割った余りは $1, 2, \ldots, p-1$ を1回ずつとる。よって \[(p-1)! a^{p-1}=a\times (2a)\times \cdots (p-1)a\equiv (p-1)!\pmod{p}\] つまり \[(p-1)! (a^{p-1}-1)\equiv 0\pmod{p}\] となるが、となるが先述の文書内で証明したEuclidの補題から $(p-1)!$ は $p$ と互に素なので、 $a^{p-1}-1\equiv 0\pmod{p}$ が成り立つ。


Fermatの小定理は、素数で割った余りについて触れていたが、法が素数ではないときにはどうなるか? $3^3\equiv 3\pmod{4}, 2^{14}\equiv 4\pmod{15}$ などから、 単純に一般化した式 $a^{n-1}\equiv 1\pmod{n}$ は成り立たない(しかし、 $n$ が素数でなく、かつ $a\equiv 1\pmod{n}$ ではないにも かかわらず、$a^{n-1}\equiv 1\pmod{n}$ が成り立つような場合はある)。 まず法が素数のべきである場合、次のような合同式が成り立つ。

Fermatの小定理の素数べきへの一般化

$p$ が素数、$e$ が正の整数で、 $a$ が $p$ で割り切れない整数ならば \[a^{p^{e-1}(p-1)}\equiv 1\pmod{p^e}\] が成り立つ。

実際 $a^{p-1}=Ap+1$ とおくと二項定理より \[a^{p^{e-1}(p-1)}=(Ap+1)^{p^{e-1}}=1+Ap^e+\frac{Ap^e(p^{e-1}-1)}{2}+\cdots \equiv 1\pmod{p^e}\] となる。

二項定理を使わず、Fermatの小定理の上記の証明を一般化した証明も可能である。 $u_k$ を $ka (0\leq k\leq p^e-1)$ を $p^e$ で割った余りとする。 $u_k$ は $0, 1, \ldots, p^e-1$ を1回ずつとる。 このうち $k$ が $p$ の倍数であるものを考える。それらは $p^{e-1}$ 個ある。 $k$ が $p$ の倍数ならば $ka$ を $p^e$ で割った余りも $p$ の倍数になるから それらは $p^{e-1}$ 個の値 $0, p, \ldots, (p^{e-1}-1)p$ を1回ずつとる。 よって $k$ が $p$ の倍数ではないものを考えると、それらは $p^e-p^{e-1}=p^{e-1}(p-1)$ 個あり、 $u_k$ は $0, 1, \ldots, p^e-1$ のうち $p$ で割れない値を1回ずつとる。よって \[\sideset{}{^*}\prod_k ka\equiv \sideset{}{^*}\prod_k k\pmod{p^e}\] となる。ここで積 $\sideset{}{^*}\prod_k$ における $k$ は $0, 1, \ldots, p^e-1$ のち $p$ で割れない数全体を走るとする。 積 $\sideset{}{^*}\prod_k k$ は $p$ で割れないから、先と同様に \[a^{p^{e-1}(p-1)}\equiv 1\pmod{p^e}\] が成り立つ。

なお、$p=2, e\geq 3$ のときはやや強く、 $a$ が奇数のとき \[a^{2^{e-2}}\equiv 1\pmod{2^e}\] が成り立つ。実際 $1^2\equiv 3^2\equiv 5^2\equiv 7^2\equiv 1\pmod{8}$ 、かつ \[a^{2^{e-2}}-1=A\times 2^e\] ならば \[a^{2^{e-1}}-1=A\times 2^e(a^{2^{e-2}}+1)=A\times \frac{a^{2^{e-2}}+1}{2}\times 2^{e+1}\] となる。


ここから、さらにFermatの小定理は一般の正の整数 $n$ にまで一般化される。 Carmichaelの関数 $\lambda(n)$ を奇素数べき $p^e$ および $p=2, e=1, 2$ に対しては \[\lambda(p^e)=p^{e-1}(p-1),\] $2$ の累乗 $2^e (e\geq 3)$ に対しては \[\lambda(2^e)=2^{e-2},\] 一般の整数 $n=p_1^{e_1} p_2^{e_2} \ldots p_k^{e_k}$ ($p_1, p_2. \ldots, p_k$ は相異なる素数) に対しては \[\lambda(p_1^{e_1} p_2^{e_2} \ldots p_k^{e_k})=\mathrm{LCM}[\lambda(p_1^{e_1}), \lambda(p_2^{e_2}), \ldots, \lambda(p_k^{e_k})]\] により定義する。 たとえば $\lambda(2)=1, \lambda(3)=\lambda(4)=\lambda(6)=\lambda(8)=2, \lambda(7)=\lambda(9)=6$ となる。 特に$\lambda(n)$ は $\prod_{i=1}^k p^{e-1}(p-1)$ の約数である。

Fermatの小定理の一般化

$n>0, a, n$ が互に素な整数ならば \[a^{\lambda(n)}\equiv 1\pmod{n}.\]

$n=p_1^{e_1} p_2^{e_2} \ldots p_k^{e_k}$ ($p_1, p_2. \ldots, p_k$ は相異なる素数) とおくと、先に述べたFermatの小定理の素数べきへの一般化から各 $i=1, \ldots, k$ に対して \[a^{\lambda(p_i^{e_i})}\equiv 1\pmod{p_i^{e_i}}\] が成り立つ。各 $\lambda(p_i^{e_i})$ は $\lambda(n)$ の約数だから \[a^{\lambda(n)}\equiv 1\pmod{p_i^{e_i}}\] が各 $i=1, 2, \ldots, k$ に対して成り立つ。すなわち $a^{\lambda(n)}-1$ は各 $p_i^{e_i}$ で割り切れる。 Euclidの補題の「双対」から、$a^{\lambda(n)}-1$ は $n$ で割り切れる。

特に $n=p_1^{e_1} p_2^{e_2} \ldots p_k^{e_k}$ に対して \[\varphi(n)=\prod_{i=1}^k p^{e-1}(p-1)\] とおくと $\varphi(n)$ は $\lambda(n)$ の倍数だから \[a^{\varphi(n)}\equiv 1\pmod{n}\] が成り立つ。 $\varphi(n)$ は $1, 2, \ldots, n-1$ のうち $n$ と互に素なものの個数を与える関数で(証明は省略する)、 Eulerの $\varphi$ 関数とよばれる。

素数判定との関係

Fermatの小定理から $p$ が素数で $a$ が $p$ の倍数でない整数ならば $a^{p-1}\equiv 1\pmod{p}$ となる。 しかし、$n$ が素数でなく、かつ $a\equiv 1\pmod{n}$ ではないにも かかわらず、$a^{n-1}\equiv 1\pmod{n}$ が成り立つような場合はある。たとえば \[2^{340}\equiv 1\pmod{341}\] となる。

それで、Fermatの小定理を一つの数 $a$ に対して使うだけで $p$ が素数であることを 確かめることは出来ない。複数の $a$ を使うとどうなるか?実はこの場合も、 $a$ が $n$ と互いに素である限り $a^{n-1}\equiv 1\pmod{n}$ が常に成り立つような 合成数 $n$ が存在する。たとえば $561=3\times 11\times 17$ だが $a$ が $561$ と互いに素ならば \[a^{560}\equiv 1\pmod{561}\] は常に成り立つ。

もちろん $a$ が $n$ の($1$ でも $n$ 自身でもない)約数であれば、 $a^n\equiv 1\pmod{n}$ は成り立たない。 しかし、そのような $a$ を見つけるのは結局 $n$ の $1$ でも $n$ 自身でもない約数を実際に見つけることを意味するから 素数の判定法としては、「$n$ の $1$ でも $n$ 自身でもない約数を実際に見つける」という 素朴な(かつ非常に時間のかかる)判定法に比べて簡単になっていないのである。

それにもかかわらず、Fermatの小定理は様々な素数判定法の基礎として重要であり、その他にも 数論において様々な形で用いられている。

乗法位数

\[a^e\equiv 1\pmod{n}\] となる最小の正の整数 $e$ を $a\pmod{n}$ の乗法位数(あるいは単に位数)という。 次の重要な事実が分かる。

\[a^m\equiv 1\pmod{n}\] ならば $m$ は $a\pmod{n}$ の乗法位数 $e$ の倍数である。 特に $a\pmod{n}$ の乗法位数は $\lambda(n)$ の約数である。

$m=qe+r, 0\leq r\leq e-1$ とおくと \[a^m\equiv a^{qe+r}\equiv a^r\pmod{n}\] より $a^r\equiv 1\pmod{n}$ だが、$0\leq r\leq e-1$ である。$r$ が正のとき $r$ は $e$ より小さい正の整数となってしまい、 $e$ を $a^e\equiv 1\pmod{n}$ となる最小の正の整数としたことに矛盾する。 よって $r=0$ である。つまり $m$ は $e$ の倍数である。

ここから、たとえば次のようなことがわかる。

$x^2+1$ の素因数は $2$ または $4n+1$ の形のものでなければならない。
$p$ を $x^2+1$ の奇数の素因数とする。 そうすると $x^2\equiv -1\pmod{p}$ より $x^4\equiv 1\pmod{p}$ だから $x\pmod{p}$ の乗法位数は $4$ の約数である。しかし $p\neq 2$だから $x^2\equiv -1\not\equiv 1\pmod{p}$ となる。よって $x\pmod{p}$ の乗法位数は $2$ の約数ではないので、正確に $4$ であることがわかる。 Fermatの小定理より $p-1$ は $4$ の倍数なので $p$ は $4n+1$ の形の素数でなければならない。

さらに、ここから、$4n+1$ の形の素数は無限に多く存在することがわかる。

実際、$4n+1$ の形の素数 $p_1, p_2, \ldots, p_r$ を任意にとれば、 $(2p_1 p_2 \cdots p_r)^2+1$ は奇数で $p_1, p_2, \ldots, p_r$ のいずれとも互いに素なので、 先の定理から、この数の素因数は $4n+1$ の形のものであり、かつそれは $p_1, p_2, \ldots, p_r$ とは異なるものでなければならない。

inserted by FC2 system