// ELLIPTIC CHABAUTY COMPUTATIONS // ======================================== // CASE d=-1 // Define the field, the hyperelliptic curve and the elliptic curve _:=PolynomialRing(Rationals()); K:=NumberField(x^2-6); KK:=PolynomialRing(K); q1:=(5+2*a)*(5 - 6*t - 2*a*t + 6*t^2); p1:=(-1 - 4*t + 6*t^2); O:=MaximalOrder(K); ZZ:=Integers(); Hm1:=HyperellipticCurve((-1)*p1*q1); // The elliptic curve is defined using the good points with t=1/2 // Qm1:=Hm1![1/2, 1/2*(-2*a - 3) ]; Em1b,mapm1:=EllipticCurve(Hm1,Qm1); as:=aInvariants(Em1b); // We do a small change of variables in order to have integer coefficients. d:=150; Em1:=EllipticCurve([d*as[1],d^2*as[2],d^3*as[3],d^4*as[4],d^6*as[5]]); boo,mapd:=IsIsomorphic(Em1b,Em1); mapm1:=Extend(mapm1*mapd); mapm1; asm1:=aInvariants(Em1); asm1; /* Mapping from: CrvHyp: Hm1 to CrvEll: Em1 with equations : (-7104*a + 29336)*T^3 + (23256*a - 7404)*T^2*U + (6000*a - 9000)*T*W + (-17928*a - 37098)*T*U^2 + (-3000*a + 4500)*W*U + (4038*a + 16733)*U^3 (1065600*a - 4400400)*T^3 + (-2955600*a - 1089600)*T^2*U + (-900000*a + 1350000)*T*W + (1211400*a + 5019900)*T*U^2 -8*T^3 + 12*T^2*U - 6*T*U^2 + U^3 and inverse 1/3375000*Y*Z 1/2847656250000*(-2*a - 3)*X^3*Z + 1/569531250000*(9116*a + 19731)*X^2*Z^2 + 1/569531250000*(97*a + 177)*X*Y*Z^2 + 1/5695312500000*(2*a + 3)*Y^2*Z^2 1/11250*X*Z + 1/1687500*Y*Z and alternative equations : 1/79507*(-72718308612*a + 186196998708)*T^4 + 1/79507*(53308867584*a - 150327781656)*T^3*U + 1/79507*(24312460500*a - 59527669500)*T^2*W + 1/79507*(-76326745942*a + 199921261428)*T^2*U^2 + 1/79507*(3634249500*a - 8939808000)*T*W*U + 1/79507*(32271947860*a - 78564620490)*T*U^3 + 1/1849*(-168876300*a + 414184200)*W^2 + 1/79507*(-7895239875*a + 19351821375)*W*U^2 + 1/318028*(29224416083*a - 79063734297)*U^4 1/79507*(4468149315900*a - 10993897808100)*T^3*U + 1/79507*(-3646869075000*a + 8929150425000)*T^2*W + 1/79507*(2291173711650*a - 5296724632350)*T^2*U^2 + 1/79507*(-2368571962500*a + 5805546412500)*T*W*U + 1/79507*(4933716657825*a - 12313817234175)*T*U^3 + 1/79507*(-1977354283650*a + 4843531480350)*W^2 + 1/79507*(998542287750*a - 2447029989750)*U^4 T*U^3 + 1/79507*(-2256409*a + 5527151)*W^2 + 1/79507*(4216662*a - 10334592)*W*U^2 + 1/318028*(-7902711*a + 19098787)*U^4 [ 42*a + 422, -8076*a - 33466, -291822*a - 113902, 67635708*a + 141575953, 0 ] */ // The points with t=1/2 go respectively to 0 and Q1: mapm1(Qm1); Qm1E:=mapm1(Hm1![1/2, 1/2*(2*a + 3) ]); Qm1E; /* (0 : 1 : 0) (0 : 291822*a + 113902 : 1)
 */ // Now define the map u. P1 := ProjectiveSpace(Rationals(),1); wm1:=map< Hm1->P1 | [X,Z] >; um1:= Extend(Inverse(mapm1)*wm1); um1; /* Mapping from: CrvEll: Em1 to Prj: P1 with equations : 1/3375000*Y*Z 1/11250*X*Z + 1/1687500*Y*Z and alternative equations : 1/300*Y X + 1/150*Y 11250*X^2 - 75*X*Y + 1/2*Y^2 + (-90855000*a - 376492500)*X*Z + (133200*a - 2237550)*Y*Z + (760901715000*a + 1592729471250)*Z^2 Y^2 + (266400*a - 1100100)*Y*Z + (536904180000*a + 2801039692500)*Z^2 */ // Now we show that the point P0:=[0,0] and the 2-torsion point T0 // generates a group of finite index in E(K); also show that Q1E // is equal to -P0. Etors, EtorsMap := TorsionSubgroup(Em1); T0:=EtorsMap(Etors.1); T0; two := MultiplicationByMMap(Em1, 2); mu, tor := IsogenyMu(two); S2E, toS2E := SelmerGroup(two); S2E; P0:=Em1![0,0]; gs := [ T0,P0 ]; S2P:=sub< S2E | [ toS2E(mu(g)) : g in gs ] >; S2P; S2P eq S2E; Qm1E eq -P0; G := AbelianGroup([ 2, 0 ]); GtoEK := map< G -> Em1 | g :-> &+[ c[i]*gs[i] : i in [1..#gs] ] where c := Eltseq(g) >; /* (-462*a - 2767 : 301500*a + 699000 : 1) Abelian Group isomorphic to Z/2 + Z/2 Defined on 2 generators in supergroup: S2E.1 = $.1 + $.2 + $.7 + $.9 + $.11 + $.13 + $.14 + $.15 S2E.2 = $.16 Relations: 2*S2E.1 = 0 2*S2E.2 = 0 Abelian Group isomorphic to Z/2 + Z/2 Defined on 2 generators in supergroup: S2E.1 = $.1 + $.2 + $.7 + $.9 + $.11 + $.13 + $.14 + $.15 S2E.2 = $.16 Relations: 2*S2E.1 = 0 2*S2E.2 = 0 true true */ // We show that the point P0 is not divisible by p=3,5,7,11,13. IsDivisibleBy(P0,3); IsDivisibleBy(P0,5); IsDivisibleBy(P0,7); IsDivisibleBy(P0,11); IsDivisibleBy(P0,13); /* false false false false false */ // We compute the "relevant residue classes": points in the reduction // which have "rational image" by u. // First we compute the reduction and the group generated by the reduction of P0 and T0, modulo p=13. // Aslo show that T0=6*P0 modulo p primo:=13; Er,mapr:=Reduction(Em1,primo*O); k,tok:=ResidueClassField(primo*O); Pr:=mapr(P0); Pr; Tr:=mapr(T0); Tr; Tr eq 6*Pr; OPr:=Order(Pr); OPr; ErPEK:=[<[i],i*Pr> : i in [0..OPr-1]]; ErPEK; /* (0 : 0 : 1) (6*$.1 + 2 : 4*$.1 + 3 : 1) true 12 [ <[ 0 ], (0 : 1 : 0)>, <[ 1 ], (0 : 0 : 1)>, <[ 2 ], (8*$.1 + 10 : 11*$.1 + 6 : 1)>, <[ 3 ], (12*$.1 : 4*$.1 + 5 : 1)>, <[ 4 ], (11*$.1 + 9 : 2*$.1 + 4 : 1)>, <[ 5 ], (2*$.1 + 3 : 5*$.1 + 10 : 1)>, <[ 6 ], (6*$.1 + 2 : 4*$.1 + 3 : 1)>, <[ 7 ], (2*$.1 + 3 : 11*$.1 + 10 : 1)>, <[ 8 ], (11*$.1 + 9 : 7*$.1 : 1)>, <[ 9 ], (12*$.1 : 9 : 1)>, <[ 10 ], (8*$.1 + 10 : 7 : 1)>, <[ 11 ], (0 : 11*$.1 + 9 : 1)> ] */ // Now we define the reduction of up: L:=DefiningEquations(um1); L; P1p:=ProjectiveSpace(GF(primo),1); Rp:=CoordinateRing(Ambient(Er)); Embed(k,BaseRing(Rp)); toRp:=homRp|mapRp|c:->Rp!(tok(c))>,OrderedGenerators(Rp)>; up:=mapP1p|[Rp|toRp(l):l in L]>; up:=Extend(up); up; /* [ 1/3375000*Y*Z, 1/11250*X*Z + 1/1687500*Y*Z ] Mapping from: CrvEll: Er to Prj: P1p with equations : 8*Y*Z 8*X*Z + 3*Y*Z and alternative equations : Y X + 2*Y 5*X^2 + 3*X*Y + 7*Y^2 + (11*$.1 + 6)*X*Z + (2*$.1 + 10)*Y*Z + (11*$.1 + 8)*Z^2 Y^2 + (4*$.1 + 12)*Y*Z + (6*$.1 + 10)*Z^2 */ // Finally we compute the "relevant residue classes": ErPEKu:=[ : pt in ErPEK | up(pt[2]) in RationalPoints(P1p)]; ErPEKu; /* [ <<[ 0 ], (0 : 1 : 0)>, (7 : 1)>, <<[ 4 ], (11*$.1 + 9 : 2*$.1 + 4 : 1)>, (1 : 1)>, <<[ 7 ], (2*$.1 + 3 : 11*$.1 + 10 : 1)>, (1 : 1)>, <<[ 11 ], (0 : 11*$.1 + 9 : 1)>, (7 : 1)> ] */ // The good residue classes are the ones of 0 and 11*P0 = -P0 (mod 12*P0). The bad ones are // 4*P0 and -5*P0=7*P0 mod 12*P0. // Now we compute the z0 modulo p^2, that should be necessary for the computations. // It is the z-coordinate of 12*P0, modulo p^2. P12:=12*P0; zP12:=-P12[1]/P12[2]; Op2:=quo< O | primo^2*O>; zP122:=Op2!zP12; zP122; /* [26, -39] */ // Now we are going to deal with the good points. First, the point 0. // Observe the use of the "formal point" Pz in order to obtain u as a // formal power series in the formal variable z. Op2n:=PolynomialRing(Op2,1); zP122n:=zP122*n; Elog,Pz:=FormalLog(Em1: Precision:=4); fz:=um1(Pz)[1]; fz; fz2:=[Op3n!c : c in Coefficients(fz)]; fz2; thetan:=fz2[1]+fz2[2]*zP122n; thetan; /* 1/2 + 75*$.1 + 11250*$.1^2 + 1687500*$.1^3 + 253125000*$.1^4 + 37968750000*$.1^5 + 5695312500000*$.1^6 + O($.1^7) [ [-84, 0], [75, 0], [-73, 0], [35, 0], [11, 0], [-40, 0], [84, 0] ] [-78, -52]*n + [-84, 0] */ // We get that j1=52 (mod 13^2), so 0 is the only relevant point in it residue class. // Now we deal with the point -P0: fz:=um1(Pz-P0)[1]; fz; fz2:=[Op2n!c : c in Coefficients(fz)]; fz2; thetan:=fz2[1]+fz2[2]*zP122n; thetan; /* 1/2 - 75*$.1 + (-3150*a - 20400)*$.1^2 + O($.1^3) [ [-84, 0], [-75, 0], [49, 61] ] [78, 52]*n + [-84, 0] */ // We get again that -P0 is the only point in its residue class. // Now we are going to deal with the two "bad" residue classes: the ones of 4*P0 and -5*P0. // Observe that the reduction of the image by u is in both cases the point at infinity [1:1]. // We will some some computations using the p-adic completion of K again. p:=13; prec:=20; Kp, mapKKp:=Completion(K, p*O: Precision:=prec); Em1p:=EllipticCurve([mapKKp(d*as[1]),mapKKp(d^2*as[2]),mapKKp(d^3*as[3]),mapKKp(d^4*as[4]),mapKKp(d^6*as[5])]); P0p:=Em1p![mapKKp(0),mapKKp(0)]; T0s:=Eltseq(T0); T0p:=Em1p![mapKKp(T0s[1]),mapKKp(T0s[2]),mapKKp(T0s[3])]; // First we show that reducing modulo p^2 is not sufficient. // The order of (0,0) modulo 13^2 is 13*12. k:=2; cP0p:=12*13*P0p; ChangePrecision(cP0p[1]/cP0p[2],k); ChangePrecision(cP0p[3]/cP0p[2],k); Bpm1:=[12*i*P0p+4*P0p : i in [0..12]]; umBpm1:=[[ChangePrecision(300*p[1]/p[2]+2,k)] : p in Bpm2]; Bpm2:=[12*i*P0p-5*P0p : i in [0..12]]; umBpm2:=[[ChangePrecision(300*p[1]/p[2]+2,k)] : p in Bpm2]; umBpm1; umBpm1; /* (16*Kp.1 + 11)*13^2 + O(13^4) (-49*Kp.1 - 7)*13^6 + O(13^8) [ [ 1 + O(13^2) ], [ -77 + O(13^2) ], [ 14 + O(13^2) ], [ -64 + O(13^2) ], [ 27 + O(13^2) ], [ -51 + O(13^2) ], [ 40 + O(13^2) ], [ -38 + O(13^2) ], [ 53 + O(13^2) ], [ -25 + O(13^2) ], [ 66 + O(13^2) ], [ -12 + O(13^2) ], [ 79 + O(13^2) ] ] [ [ 1 + O(13^2) ], [ 79 + O(13^2) ], [ -12 + O(13^2) ], [ 66 + O(13^2) ], [ -25 + O(13^2) ], [ 53 + O(13^2) ], [ -38 + O(13^2) ], [ 40 + O(13^2) ], [ -51 + O(13^2) ], [ 27 + O(13^2) ], [ -64 + O(13^2) ], [ 14 + O(13^2) ], [ -77 + O(13^2) ] ] */ // We can see that all points have image in Z/13^2Z. // So we go to 13^3. // Now the order of (0,0) is 12*13^2. // Note also that T0 is again in the subgroup generated by P0, modulo p^3. // In fact T0=(6+12*84)*P0 modulo p^3. k:=3; cP0p:=12*13^2*P0p; ChangePrecision(cP0p[1]/cP0p[2],k); ChangePrecision(cP0p[3]/cP0p[2],k); T0p3:=[ChangePrecision(Eltseq(T0p)[1],k),ChangePrecision(Eltseq(T0p)[2],k),ChangePrecision(Eltseq(T0p)[3],k)]; j:=84; jP0p3:=[ChangePrecision(Eltseq((6+12*j)*P0p)[1],k),ChangePrecision(Eltseq((6+12*j)*P0p)[2],k),ChangePrecision(Eltseq((6+12*j)*P0p)[3],k)]; T0p3; jP0p3; /* (185*Kp.1 - 158)*13^3 + O(13^6) (-556*Kp.1 - 683)*13^9 + O(13^12) [ -540*Kp.1 - 570 + O(13^3), 797*Kp.1 + 354 + O(13^3), 1 + O(13^3) ] [ -540*Kp.1 - 570 + O(13^3), 797*Kp.1 + 354 + O(13^3), 1 + O(13^3) ] */ // Finally, we compute the imatges with respect to u of all the points // modulo p^3 that reduce to the bad points modulo p. // Observe that Eltseq(x)[2] for an element x of K of the form // x=a1+a2*sqrt(6), returns the element a2. We want to show none of them is 0. O3:=ChangePrecision(Kp!0,k); Bpm1:=[12*i*P0p+4*P0p : i in [0..13^2-1]]; umBpm1:=[Eltseq(ChangePrecision(300*p[1]/p[2]+2,k))[2] : p in Bpm1]; umBpm1; [ p: p in umBpm1 | p eq O3]; Bpm2:=[12*i*P0p-5*P0p : i in [0..13^2-1]]; umBpm2:=[Eltseq(ChangePrecision(300*p[1]/p[2]+2,k))[2] : p in Bpm2]; umBpm2; [ p: p in umBpm2 | p eq O3]; /* [ 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3) ] [] [ 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3), 6*13^2 + O(13^3), 5*13^2 + O(13^3), -6*13^2 + O(13^3), -13^2 + O(13^3), -6*13^2 + O(13^3), 5*13^2 + O(13^3), 6*13^2 + O(13^3), -3*13^2 + O(13^3), 4*13^2 + O(13^3), 13^2 + O(13^3), 13^2 + O(13^3), 4*13^2 + O(13^3), -3*13^2 + O(13^3) ] [] */ // (Observe the apparence of 13^2 in all elements in the sequences above, as we already observed.) // In fact, we can observe that both sets are the same, since both cases can be transformed // one into the other by using the "hyperelliptic involution on Hm1". Seqset(umBpm1) eq Seqset(umBpm2); /* true */ // Finally, we can do all the same by just plugging the function Chabauty: SetVerbose("EllChab", 3); N, V, R, C := Chabauty( GtoEK, um1, 13); printf "N=%o , V=%o , R=%o , C=%o",N,V,R,C; ; /* Computing relevant cosets using the primes above 13 Considering prime #1 with =<2, 1> Using enumeration Found cosets { 0, 11*$.1, 4*$.1, 7*$.1 } Modulo kernel Abelian Group isomorphic to Z Defined on 1 generator in supergroup: $.1 = $.1 + 6*$.2 (free) LCM of indices: 16 Testing linear combinations in Mordell-Weil group up to bound 5 Found { 0, -$.2 } Cannot find representatives for all cosets. We'll see what happens. P0 = (0 : 1 : 0) Image under cover: (1/2 : 1) Centred power series expansion: 75*$.1 + 11250*$.1^2 + 1687500*$.1^3 + 253125000*$.1^4 + 37968750000*$.1^5 + 5695312500000*$.1^6 + 854296875000000*$.1^7 + 128144531250000000*$.1^8 + O($.1^9) Reduction of matrix of Z-coordinates: [ 1] [ 5] Matrix has full rank. Implicit proof that MW-group is saturated at 13 Order of vanishing: 1 Linear approximation gives matrix: [11] P0 is the only point in its fibre. P0 = (0 : 291822*a + 113902 : 1) Image under cover: (1/2 : 1) Centred power series expansion: -75*$.1 + (-3150*a - 20400)*$.1^2 + (-1713600*a - 6342600)*$.1^3 + (-710601750*a - 2148471750)*$.1^4 + (-267612571800*a - 746496486300)*$.1^5 + O($.1^6) Reduction of matrix of Z-coordinates: [ 1] [ 5] Matrix has full rank. Implicit proof that MW-group is saturated at 13 Order of vanishing: 1 Linear approximation gives matrix: [ 2] P0 is the only point in its fibre. Will try to deal with remaining points P0 = (1/27692016186727489*(18451336048846310300082*a + 45427927511213869177937) : 1/4608205789256096888131487*(-6386684843867022228952868512279500*a - 15658328268956475238502617433097000) : 1) Power series expansion: 1/9534514011*(-591524505*a + 6587537290) + 1/10100773047328367569*(185788097619208933800*a + 213571210309527683550)*$.1 + 1/32101987380561162234796169753*(141297837083740099337451082911600*a - 29202856441883833256459479254400)*$.1^2 + 1/102025616153635196790036050746370969761*(93295346955538320953371060271546\ 715019624800*a - 72817105883052087167277252319808146701353200)*$.1^3 + 1/324254888899247570792446983678793672863303940457*(59045362077488290785329\ 507551887685545867454518534993000*a - 6545208481493881999369124626667322212\ 5894561026842987000)*$.1^4 + 1/10305375937817081103594333796200488658311073\ 02679592081009*(38440605383460117940118376933725135219477235852439676304843\ 543825600*a - 5243067699678555415240247173768749728714648583300168012328113\ 0240400)*$.1^5 + O($.1^6) Reduction of matrix of Z-coordinates: [ 1] [ 5] Matrix has full rank. Implicit proof that MW-group is saturated at 13 Solutions to p-adic system of equations: {} Unresolved neighbourhoods: {} P0 = (1/10201*(-50072862*a + 118248833) : 1/1030301*(2019806221500*a - 4024205331000) : 1) Power series expansion: 1/9534514011*(-591524505*a + 6587537290) + 1/10100773047328367569*(-185788097619208933800*a - 213571210309527683550)*$.1 + 1/32101987380561162234796169753*(-136387154263\ 905692136327793188300*a - 464439600291351020256579206365300)*$.1^2 + 1/102025616153635196790036050746370969761*(-1526021694739366346774369641607\ 77728882272400*a - 585317421722487828081120701717018606304933400)*$.1^3 + 1/324254888899247570792446983678793672863303940457*(-1930722771216214636612\ 00064633258582206314706630822096500*a - 667685236341598976770708212597492485377161906333414606500)*$.1^4 + 1/1030537593781708110359433379620048865831107302679592081009*(-240400680320\ 945269471548492201589470036501680699718635102618396032800*a - 745663081256144729127098157825214159427940864627117003549384880799800)*$.1^\ 5 + O($.1^6) Reduction of matrix of Z-coordinates: [ 1] [ 5] Matrix has full rank. Implicit proof that MW-group is saturated at 13 Solutions to p-adic system of equations: {} Unresolved neighbourhoods: {} Returned set gives all points with rational image if given MWmap is 16 saturated. N=2 , V={ 0, -G.2 } , R=16 , C= */