1 小さい素数で確かめる
まず、小さい素数について、二つの平方数の和として表すことができるかどうかを実際に調べます。
例 1.1 (43以下の素数を二つの平方数の和として表す).43以下の各素数pについて、p=a2+b2を満たす0以上の整数a、bを探すと、次の結果が得られる。
| p |
pを4で割った余り |
表示 |
| 2 |
2 |
12+12 |
| 3 |
3 |
無い |
| 5 |
1 |
12+22 |
| 7 |
3 |
無い |
| 11 |
3 |
無い |
| 13 |
1 |
22+32 |
| 17 |
1 |
12+42 |
| 19 |
3 |
無い |
| 23 |
3 |
無い |
| 29 |
1 |
22+52 |
| 31 |
3 |
無い |
| 37 |
1 |
12+62 |
| 41 |
1 |
42+52 |
| 43 |
3 |
無い |
余りが1である素数はすべて表示を持ち、余りが3である素数はどれも表示を持ちません。唯一の偶素数2は12+12と表され、これは別に扱います。この表から、「奇素数pが二つの平方数の和として表されることとp≡1(mod4)とは同値である」という主張を、証明すべき対象として立てます。上の計算は予想を立てる手段であって、すべての素数についての証明ではありません。
二つの向きの難しさは対称ではありません。余りが3の場合に表示が無いことは、法4で考えるだけで一度に片づきます。余りが1の場合に表示があることは、表示そのものを構成する必要があるので、道具を要します。
2 余りが3である場合に表示が無いこと
否定の側は、素数に限らず一般の正の整数について成り立ちます。
定理 2.1 (4で割った余りが3である数).nを正の整数とし、n≡3(mod4)とする。このとき、n=a2+b2を満たす整数a、bは存在しない。
証明. 整数aについて、aが偶数ならa2≡0(mod4)、aが奇数ならa=2k+1と書いてa2=4k(k+1)+1≡1(mod4)です。したがって、平方数を4で割った余りは0か1のいずれかです。
よってa2+b2を4で割った余りは、0+0、0+1、1+0、1+1の四通りから0、1、2のいずれかになり、3にはなりません。▨
奇素数を4で割った余りは1か3のいずれかです。したがって定理 2.1により、余りが3である奇素数は表示を持ちません。残るのは、余りが1である奇素数が必ず表示を持つことです。
3 出発点を作る:−1が平方剰余になる素数
表示p=a2+b2を直接に探す代わりに、まず法pでの関係式を作ります。p=a2+b2が成り立てばa2≡−b2(modp)であり、bがpで割り切れないとき(ab−1)2≡−1(modp)となります。つまり、表示があれば−1は法pの平方剰余です。証明は、この必要条件を出発点として逆向きに進みます。
定理 3.1 (−1が平方剰余になる条件).pを奇素数とする。x2≡−1(modp)を満たす整数xが存在することと、p≡1(mod4)とは同値である。
証明. オイラーの規準により、pで割り切れない整数cについて、cが法pの平方剰余であることとc(p−1)/2≡1(modp)とは同値であり、平方剰余でないこととc(p−1)/2≡−1(modp)とは同値です。c=−1とすると
(−1)(p−1)/2の値は、(p−1)/2が偶数のとき1、奇数のとき−1です。pは奇数なので、(p−1)/2が偶数であることとp≡1(mod4)とは同値です。pが奇素数であるから1≡−1(modp)であり、二つの値は区別されます。よって、−1が法pの平方剰余であることとp≡1(mod4)とは同値です。▨
4 平方数の和どうしの積
降下の段階で、二つの表示から新しい表示を作る必要があります。そのための等式を先に用意します。
証明. 右辺を展開すると
(ac+bd)2+(ad−bc)2=a2c2+2abcd+b2d2+a2d2−2abcd+b2c2となり、2abcdが打ち消し合って
a2c2+b2d2+a2d2+b2c2=(a2+b2)(c2+d2)を得ます。▨
5 二平方和定理
定理 5.1 (二平方和定理).pを奇素数とする。p=a2+b2を満たす整数a、bが存在することと、p≡1(mod4)とは同値である。なおp=2については2=12+12が成り立つ。
一方の向きはすでに済んでいます。p=a2+b2と表されるなら、定理 2.1によりp≡3(mod4)であり、pは奇数なのでp≡1(mod4)です。以下では逆の向きを示します。方針は、pの倍数が二つの平方数の和として表されることをまず確かめ、その倍率を無限降下法によって1まで下げることです。
証明 (p≡1(mod4)ならば表示があること).p≡1(mod4)とします。
第一段:pの小さい倍数についての表示を作ります。定理 3.1により、x2≡−1(modp)を満たす整数xが存在します。xを法pで合同な整数へ取り替えて、∣x∣≤(p−1)/2を満たすようにすることができます。このときx2+12はpで割り切れるので、x2+1=mpを満たす正の整数mがあります。さらに
mp=x2+1≤4(p−1)2+1<p2であるから1≤m<pです。したがって、集合
S={m:1≤m<p, mp が二つの平方数の和として表される}は空ではありません。Sの最小の要素をMとします。以下、M=1を示します。
第二段:M>1と仮定して、より小さい要素を作ります。M>1と仮定し、a2+b2=Mpを満たす整数a、bを取ります。各整数は法Mで−M/2より大きくM/2以下の整数と合同なので、
u≡a(modM),v≡b(modM),∣u∣≤2M,∣v∣≤2Mを満たす整数u、vを取ることができます。すると
u2+v2≡a2+b2=Mp≡0(modM)であるから、u2+v2=Mrを満たす0以上の整数rがあります。さらに
Mr=u2+v2≤4M2+4M2=2M2であるからr≤M/2<Mです。
第三段:r=0の場合を排除します。r=0とするとu2+v2=0であり、u=v=0です。するとMはaとbの両方を割り切るので、M2はa2+b2=Mpを割り切り、Mはpを割り切ります。しかし1<M<pであり、pは素数なので、これは矛盾です。よって1≤r<Mです。
第四段:降下を実行します。公式 4.1を(a,b)と(u,v)に適用すると
(a2+b2)(u2+v2)=(au+bv)2+(av−bu)2であり、左辺はMp⋅Mr=M2prです。ここで、u≡aかつv≡b(modM)より
au+bv≡a2+b2≡0(modM),av−bu≡ab−ba=0(modM)であるから、A=(au+bv)/MとB=(av−bu)/Mはどちらも整数です。両辺をM2で割ると
A2+B2=prを得ます。1≤r<M<pであるからr∈Sであり、これはMがSの最小の要素であることに矛盾します。
したがってM=1であり、pは二つの平方数の和として表されます。▨
6 素数であるという仮定が必要であること
定理 5.1は素数についての主張です。4で割った余りだけで判定することができるのは素数に限られ、一般の正の整数へそのまま広げることはできません。
本記事は、素数が二つの平方数の和として表されるかどうかを扱うものであり、一般の正の整数についての判定は扱いません。