学校厩舎
4n+1型の素数は必ず \( x^2+y^2 \) の形に表すことができます。フェルマーはこの事実を無限降下法を使って証明しました。
今回も
はじめての数論 原著第3版―発見と証明の大航海‐ピタゴラスの定理から楕円曲線まで
- 作者:ジョセフ・H. シルヴァーマン
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2007/04
- メディア: 単行本
の第26章を参考して書いています。
証明は2段階に分かれます。
第一段階:4n+1型の素数pの適当な倍数mpが \( x^2+1 \)の形に書けることを示します。つまり \( m\,p=x^2+1 \)、あるいは \( x^2+1 \equiv 0 mod p \) .
第二段階:pがあるx,y,mについて \( x^2+y^2= m\,p \) のときmより小さいm'について \( x' ^2+y' ^2= m' \,p \) となるx', y'が存在する。
第一段階のm, xを計算する関数f(p)を前回の記事で示しました。次は第二段階のx', y', m'を計算する関数g(A,B,M,p)を示します。引数の前提として\( A^2+B^2=M\,p \)が成立しているとします。
(%i1) g(A,B,M,p):=block([u,v,newA,newB,r],
u:mod(A,M),if (u>M/2) then u:u-M,
v:mod(B,M),if (v>M/2) then v:v-M,
newA:(u*A+v*B)/M,
newB:(v*A-u*B)/M,
r:(newA^2+newB^2)/p,
[newA, newB, r]);
最後の行で新しく求めたnewA, newB, rが結果として返されます。当然\( newA^2+newB^2=r\,p \)が成り立つはずです。確かめてみましょう。
(%i2) p:11617;
$$ \tag{%o2} 11617 $$
(%i3) [primep(p),mod(p,4)];
$$ \tag{%o3} \left[ \mathbf{true} , 1 \right] $$
確かにこのpは素数でかつ4で割ると1余ります。このpを使って試してみましょう。まず前回定義したf(p)を使ってx^2+1=mpを満たすx,mを一組求めます。
(%i4) [x,m]:f(p);
$$ \tag{%o4} \left[ 5688 , 2785 \right] $$
次に今回定義したg()を使って、rがmより小さくなるような数の組を求めます。
(%i5) tmp:g(x,1,m,p);
$$ \tag{%o5} \left[ 241 , 2 , 5 \right] $$
では検算をしてみましょう。\( 241^2+2^2 \) と \( 5 \, p \) を計算してみます。
(%i6) [%[1]^2+%[2]^2, %[3]*p];
$$ \tag{%o6} \left[ 58085 , 58085 \right] $$
確かに一致しました!このように所望の性質を持つg()を定義することができました。これで第二段階の証明が出来たことにしましょう。
ちなみ(%o5)で得られた数の組にもう一度g()を適用すると、r=1となり、pの2つの平方数への分割を得ることができます。
(%i7) g(tmp[1],tmp[2],tmp[3],p);
$$ \tag{%o7} \left[ 49 , 96 , 1 \right] $$
検算、検算。
(%i8) [%[1]^2+%[2]^2, p];
$$ \tag{%o8} \left[ 11617 , 11617 \right] $$