Homeに戻る  一覧に戻る 

Rational Points on Genus 3 Curve: y^2=7920000(x^2+1)^4-136782591x^2(x^2-1)^2 (part II)


[2005.07.24]y^2=7920000(x^2+1)^4-136782591x^2(x^2-1)^2の有理点 (2)


■参考文献[1](p130,Theorem[Kuller-Kulesz] 6.2.3)に記述されているgenus 3の超楕円曲線
     C1: y2 = 7920000(x2+1)4-136782591x2(x2-1)2
の有理点を、既に176個見つけている

■超楕円曲線C1の有理点群の自己同型群Aut(C1(Q))は、
     φ1: (x,y)→(-x,y),
     φ2: (x,y)→((x+1)/(x-1),4*y/(x-1)4),
     φ3: (x,y)→(x,-y)
で生成される部分群G=<φ1, φ2, φ3>を含む。
部分群Gは、位数16の有限群であることが分かる。

[pari/gpによる計算]
gp>  read("kk3.gp")
time = 269 ms.
gp>  c1(x,y)
time = 2 ms.
%1 = 7920000*x^8 - 105102591*x^6 + 321085182*x^4 - 105102591*x^2 + (-y^2 + 7920000)
gp>  c1((x+1)/(x-1),4*y/(x-1)^4)*(x-1)^8/16
time = 67 ms.
%2 = 7920000*x^8 - 105102591*x^6 + 321085182*x^4 - 105102591*x^2 + (-y^2 + 7920000)
gp>  f1(f1([x,y]))
time = 2 ms.
%3 = [x, y]
gp>  f2(f2([x,y]))
time = 5 ms.
%4 = [x, y]
gp>  f3(f3([x,y]))
time = 1 ms.
%5 = [x, y]
gp>  f1(f2([x,y]))
time = 2 ms.
%6 = [(-x - 1)/(x - 1), 4*y/(x^4 - 4*x^3 + 6*x^2 - 4*x + 1)]
gp>  f1(f2(f1(f2([x,y]))))
time = 6 ms.
%7 = [1/-x, y/x^4]
gp>  f1(f2(f1(f2(f1(f2([x,y]))))))
time = 10 ms.
%8 = [(-x + 1)/(-x - 1), 4*y/(x^4 + 4*x^3 + 6*x^2 + 4*x + 1)]
gp>  f1(f2(f1(f2(f1(f2(f1(f2([x,y]))))))))
time = 17 ms.
%9 = [-x/-1, y]
gp>  f3(f1([x,y]))
time = 1 ms.
%10 = [-x, -y]
gp>  f3(f1(f3(f1([x,y]))))
time = 1 ms.
%11 = [x, y]
gp>  f3(f2([x,y]))
time = 2 ms.
%12 = [(x + 1)/(x - 1), -4*y/(x^4 - 4*x^3 + 6*x^2 - 4*x + 1)]
gp>  f3(f2(f3(f2([x,y]))))
time = 4 ms.
%13 = [x, y]
また、GAP4(Version 4.4.5)により、
     G = <a, b, c | a2 = b2 = c2 = (ab)4 = (ca)2 = (cb)2=1>
であることが分かる。

[GAP4による計算]
gap> F:=FreeGroup(3,"f");
<free group on the generators [ f1, f2, f3 ]>
gap> G:=F/[F.1^2,F.2^2,F.3^2,(F.1*F.2)^4,(F.3*F.1)^2,(F.3*F.2)^2];
<fp group on the generators [ f1, f2, f3 ]>
gap> Size(G);
16
gap> IdSmallGroup(G);
[ 16, 11 ]
gap> SmallGroup(16,11);
<pc group of size 16 with 4 generators>

■有理変換φ:(x,y)→(x2,y)により、超楕円曲線C1は、楕円曲線
     E1: y2 = 7920000(x+1)4-136782591x(x-1)2
に写される。
よって、超楕円曲線C1の有理点を求めるには、楕円曲線E1の有理点で、そのx座標が有理数の平方数であるものを求めれば、十分である。

楕円曲線E1は有理点(2,5082)を持つので、有理変換ψ:(x,y)→(X,Y)
     X = {-59941969x2 - 74289751x + 10164y + 1307883956}/{4(x-4)2},
     Y = {109919614503x3 - 3146232097773x2 -553835667xy + 11450040013854x + 2318649564y - 1970296173768}/{8(x-1)3}
[逆変換ψ-1:(X,Y)→(x,y)は、
     x = {40149776X + 1408Y - 825906562405891}/{9590228X + 352Y + 138877824331601},
     y = {1259360256X3 - 1458777260506983648X2 -629680128XY - 13495573260276601568844X -629680128Y2 - 26992605297813080441208Y + 702621907190014190650291199391828}/{(9590228X + 352Y + 138877824331601)2}
である]
によって、楕円曲線
     E4: y2+xy+y = x3-x2-1473098895734027x+21734553366029753094651
に写される。

[pari/gpによる計算]
gp>  gg([x,y])
time = 23 ms.
%1 = [(-59941969*x^2 - 74289751*x + (10164*y + 1307883956))/(4*x^2 - 32*x + 64), (109919614503*x^3 - 3146232097773*x^2 + (-553835667*y + 11450040013854)*x + (2318649564*y - 1970296173768))/(8*x^3 - 96*x^2 + 384*x - 512)]
gp>  hh([X,Y])
time = 14 ms.
%2 = [(40149776*X + (1408*Y - 825906562405891))/(9590228*X + (352*Y + 138877824331601)), (1259360256*X^3 - 1458777260506983648*X^2 + (-629680128*Y - 13495573260276601568844)*X + (-629680128*Y^2 - 26992605297813080441208*Y + 702621907190014190650291199391828))/(91972473091984*X^2 + (6751520512*Y + 2663739998968002390056)*X + (123904*Y^2 + 97769988329447104*Y + 19287050091079026742407223201))]
■楕円曲線E4のねじれ点群E4(Q)torsは、Z/2Zである。
     E4(Q)tors = { O, [91188395/4, -91188399/8] }
楕円曲線E4のconductorは、
     166327252313985468090 = 2・32・5・7・112・592・127・1632・4312
である。また、E4の判別式は
     513070813708041166200452455423928250022980000 = 25・37・54・78・116・593・1272・1633・4313
である。

[pari/gpによる計算]
gp>  default(realprecision,100)
   realprecision = 105 significant digits (100 digits displayed)
time = 0 ms.
gp>  e4=ellinit([1, -1, 1, -1473098895734027, 21734553366029753094651])
time = 137 ms.
%4 = [1, -1, 1, -1473098895734027, 21734553366029753094651, -3, -2946197791468053, 86938213464119012378605, -2170020421816468375729489186656, 70708746995233281, -18778653790060345195228929, 513070813708041166200452455423928250022980000, 3844015463978160965983/5578828519740000, [22797098.75000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, 21515249.33322188902300446572499010826457763689613716753651646953264426834643840080091447738802597358, -44312347.33322188902300446572499010826457763689613716753651646953264426834643840080091447738802597358]~, 0.0008243894780516163438486084775117668001069916891994683339644426288658635489693426497009303366058847414, 0.0003853447401571984496504855148714037978757542068622615681761804553841168853347974798517318734454541219*I, 979.3406305439514430701056349356224110780979435822687580499320904931416584344042323933892925330629524, -3353.037570688615511505793631439432318012430387720880672902511348428890964520634651402811360602361278*I, 0.0000003176741492081285544579796784095930660631138260758632117301729421899967482006082609238730580613723468]
gp>  elltors(e4)
time = 22 ms.
%5 = [2, [2], [[91188395/4, -91188399/8]]]
(22:05) gp >  ellglobalred(e4)
time = 12 ms.
%6 = [166327252313985468090, [1, 0, 0, 0], 40960]
gp>  e4.disc
time = 0 ms.
%7 = 513070813708041166200452455423928250022980000
gp>  factor(%7)
time = 0 ms.
%8 = 
[2 5]

[3 7]

[5 4]

[7 8]

[11 6]

[59 3]

[127 2]

[163 3]

[431 3]

gp>  factor(166327252313985468090)
time = 2 ms.
%9 = 
[2 1]

[3 2]

[5 1]

[7 1]

[11 2]

[59 2]

[127 1]

[163 2]

[431 2]


■mwrankによって、楕円曲線E4のrankと有理点群の生成元を求めると、このようになる。
これより、rank(E4)=8であり、その生成元は以下の8個である。
Generator 1 is [21514991 : -158415006 : 1]; height 8.52055360642636
Generator 2 is [170918518 : -30179852403 : 8]; height 11.1305396132657
Generator 3 is [20007639 : 16436650866 : 1]; height 5.17140669154387
Generator 4 is [23090621 : 5571247884 : 1]; height 6.53425254822121
Generator 5 is [190907138518 : -29490973097454903 : 8]; height 22.9761150631871
Generator 6 is [528445596920403 : -43081734566047677102 : 79507]; height 24.2681196031271
Generator 7 is [382516187159 : -236578392303116046 : 1]; height 21.8207764668002
Generator 8 is [127890351 : -1387546036626 : 1]; height 13.2736755697327

Regulator = 39572.1378148982
ただし、生成元のindexが1より大きい可能性がある。

■楕円曲線E4の有理点から、楕円曲線E1の有理点(x,y)を求めて、そのx座標が有理数の平方数になるものを探して、sqrt(x)を計算すると、以下のようになる。
超楕円曲線C1の新しい有理点は見つけることができなかった。
gp>  read("kk3.gp")
time = 268 ms.
gp>  check(1)
[0, 0, 0, 0, 0, 0, 0, 0] 2
[0, 0, 1, 0, 0, 0, 0, 0] 1/25
[0, -1, 1, 0, -1, 0, 0, 0] 29/21
[1, 0, 0, -1, 0, 0, 0, 0] 79/25
[1, -1, -1, 0, 0, -1, 0, 0] 1/5
[1, 1, 0, -1, 1, 0, 0, -1] 36/65
time = 2,981 ms.
gp>  check(2)
[0, 0, 0, 0, 0, 0, 0, 0] 2
[0, 0, 1, 0, 0, 0, 0, 0] 1/25
[0, -1, 1, 0, -1, 0, 0, 0] 29/21
[1, 0, 0, -1, 0, 0, 0, 0] 79/25
[1, -1, -1, 0, 0, -1, 0, 0] 1/5
[1, 1, 0, -1, 1, 0, 0, -1] 36/65
[2, 0, -1, -1, 1, -1, 0, -1] 3
[2, 0, -1, -2, 1, -1, 0, -1] 1/4
[2, 0, -2, -1, 1, -1, 0, 0] 12/13
[2, 0, -2, -1, 1, -1, 0, -1] 3/5
[2, -1, 2, -1, 0, -1, -1, -2] 4/25
[2, 1, -2, -2, 2, -1, 0, -1] 1/9
[2, 1, 2, -2, 1, 0, -1, -1] 197/60
time = 7mn, 24,903 ms.
gp>  check(4)
[0, 0, 0, 0, 0, 0, 0, 0] 2
[0, 0, 1, 0, 0, 0, 0, 0] 1/25
[0, 0, -4, 1, 1, -1, 1, 1] 29/30
[0, -1, 1, 0, -1, 0, 0, 0] 29/21
[0, -2, 3, 0, -1, 0, -1, -1] 59
[0, -2, 3, 1, -1, 0, -1, -1] 30/97
[1, 0, 0, -1, 0, 0, 0, 0] 79/25
[1, 0, -3, 0, 1, -1, 0, 0] 27/52
[1, -1, -1, 0, 0, -1, 0, 0] 1/5
[1, -1, 3, 0, -1, 0, -1, -1] 101/29
[1, 1, 0, -1, 1, 0, 0, -1] 36/65
[2, 0, -1, -1, 1, -1, 0, -1] 3
[2, 0, -1, -2, 1, -1, 0, -1] 1/4
[2, 0, -2, -1, 1, -1, 0, 0] 12/13
[2, 0, -2, -1, 1, -1, 0, -1] 3/5
[2, 0, -4, 0, 1, -2, 1, 0] 67/127
[2, -1, 2, -1, 0, -1, -1, -2] 4/25
[2, 1, -2, -2, 2, -1, 0, -1] 1/9
[2, 1, 2, -2, 1, 0, -1, -1] 197/60
[2, 1, -3, -1, 1, -1, 0, 0] 257/137
[3, 1, 0, -3, 2, -1, -1, -2] 3/2
[4, 1, -1, -3, 2, -1, -1, -2] 4/5
[4, 1, -3, -3, 3, -2, 0, -2] 137/257
[4, 1, -4, -2, 2, -2, 0, -1] 9
[4, 2, -2, -4, 3, -1, -1, -2] 127/67
[4, 2, -4, -3, 3, -2, 0, -1] 5/3
[4, 2, -4, -3, 3, -2, 0, -2] 13/12
time = 77h, 21mn, 21,705 ms.


[参考文献]


Last Update: 2020.11.07
H.Nakao

Homeに戻る[Homeに戻る]  一覧に戻る[一覧に戻る]