参考文献『Recreations in the theory of numbers』に補助方程式を使った探査方法が載っている。
ここでは、その方法による探査を行ってみる。
x2+y2=az2
x2−y2=bw2
ab=g
を満たすx、y、z、w、a、bについて、
X=x4+y4
Y=2xyzw
とおくと、X、Yは
X2+gY2=Z2
X2−gY2=W2
を満たす。
x=m2+bn2
y=m2−bn2
とおくとき、x2−y2=4bm2n2=b(2mn)2 となる。
このとき、x2+y2=2(m4+b2n4)=az2
したがって、2(m4+b2n4) がaで割り切れ、かつ、完全平方になるような、m、nを求めればよい。
aの値は、x2+y2=az2 という式より、1、2または 4n+1 を素因数に持つような数に限られることがわかる。
補助方程式による探査のメインループは以下のような構造になる。
10 for m=2 to 32767:m4=m^4 20 for n=1 to m-1:if gcd(m,n)>1 then 60 else n4=n^4 30 z=2*(m4+b^2*n4)\a:if res>0 then 60 40 z=isqrt(z):if res>0 then 60 50 print g,m,n: ' g=ab 60 next n 70 next m
ここで mod 4で考える。
ということを行うと(詳細は省くが)、以下のことがわかる。
1000以下の数でこの条件を満たすaと、そのようなaを素因数に持つような未解決の合同数を探してみる。
プログラムは以下のとおり。
10 ' print=print+"g_aux_u.txt" 20 L%=121:dim G%(L%):gosub 160:' set congruum into g%() 30 ' 40 for A%=1 to 1000:W%=A%:if moeb(W%)=0 then 140 50 P%=prmdiv(W%):if P%=1 then 100 60 if P%=2 then 80 70 if P%@4=3 then 140 80 W%=W%\P%:goto 50 90 ' 100 J%=0:print:print A%;":"; 110 for I%=1 to L% 120 if G%(I%)@A%=0 then inc J%:print G%(I%); 130 next I% 140 next A% 150 end 160 ' congruum 170 for I%=1 to L%:read A%:G%(I%)=A%:next I%:return 180 data 101,103,118,127,142,157,173,181,191,197,199,223,229,237,263,269 190 data 271,277,278,293,302,303,311,317,326,334,358,365,367,373,382,389 200 data 397,398,407,413,415,421,431,439,446,453,454,461,463,478,487,493 210 data 501,502,503,519,541,542,543,557,566,573,583,597,599,607,613,614 220 data 623,631,638,647,653,661,662,677,685,695,701,703,717,718,727,733 230 data 742,743,757,758,766,767,773,781,789,797,807,815,822,823,829,831 240 data 838,853,862,863,877,878,886,887,893,911,917,919,926,933,941,958 250 data 965,967,974,982,983,989,991,997,998
実行結果を整理すると以下のようになる。
ただし、上の条件から、探査不要となっているものは省く。
| a | g |
|---|---|
| 1 |
101, 103, 127, 157, 173, 181, 191, 197, 199, 223, 229, 237, 263, 269, 271, 277, 293, 303, 311, 317, 365, 367, 373, 389, 397, 407, 413, 415, 421, 431, 439, 453, 461, 463, 487, 493, 501, 503, 519, 541, 543, 557, 573, 583, 597, 599, 607, 613, 623, 631, 647, 653, 661, 677, 685, 695, 701, 703, 717, 727, 733, 743, 757, 767, 773, 781, 789, 797, 807, 815, 823, 829, 831, 853, 863, 877, 887, 893, 911, 917, 919, 933, 941, 965, 967, 983, 989, 991, 997 |
| 2 |
118, 142, 278, 302, 326, 334, 358, 382, 398, 446, 454, 478, 502, 542, 566, 614, 638, 662, 718, 742, 758, 766, 822, 838, 862, 878, 886, 926, 958, 974, 982, 998 |
| 5 | 365, 415, 685, 695, 815, 965 |
| 13 | 767 |
| 17 | 493 |
| 29 | 493 |
| 37 | 407, 703 |
| 53 | 583 |
| 58 | 638 |
| 73 | 365 |
| 89 | 623 |
| 101 | 101, 303 |
| 106 | 742 |
| 137 | 685 |
| 157 | 157 |
| 173 | 173, 519 |
| 181 | 181, 543 |
| 193 | 965 |
| 197 | 197 |
| 229 | 229 |
| 269 | 269, 807 |
| 274 | 822 |
| 277 | 277, 831 |
| 293 | 293 |
| 317 | 317 |
| 365 | 365 |
| 373 | 373 |
| 389 | 389 |
| 397 | 397 |
| 421 | 421 |
| 461 | 461 |
| 493 | 493 |
| 541 | 541 |
| 557 | 557 |
| 613 | 613 |
| 653 | 653 |
| 661 | 661 |
| 677 | 677 |
| 685 | 685 |
| 701 | 701 |
| 733 | 733 |
| 757 | 757 |
| 773 | 773 |
| 797 | 797 |
| 829 | 829 |
| 853 | 853 |
| 877 | 877 |
| 911 | 911 |
| 941 | 941 |
| 965 | 965 |
| 997 | 997 |
以下、
に分けて考えてみる。
| 前 | この章の目次 | 次 |
|---|