// ======================================== // SECTION 2 :: TRANSLATION TO GEOMETRY // ======================================== //----------------------------------------- // (0) //----------------------------------------- // Hyperelliptic equation _:=PolynomialRing(Rationals()); F0:=HyperellipticCurve(16*t^4 -144*t^3+340*t^2-252*t+49); EF0:=EllipticCurve(F0,F0![1,3]); // 2 quadrics intersection Pr32 := ProjectiveSpace(Rationals(), 3); C0:=Curve(Pr32,[4*X1^2-9*X3^2+5*X4^2,4*X2^2-7*X3^2+3*X4^2]); EC0:=EllipticCurve(C0,C0![-1,1,1,1]); // Weierstrass Model E0:=EllipticCurve(t*(t-8)*(t+27)); &and[IsIsomorphic(EC0,EF0),IsIsomorphic(EC0,E0),IsIsomorphic(EF0,E0)]; CremonaReference(E0); MordellWeilGroup(E0); /* true 1680g2 Abelian Group isomorphic to Z/2 + Z/2 + Z Defined on 3 generators Relations: 2*$.1 = 0 2*$.2 = 0 */ //----------------------------------------- // (1) //----------------------------------------- // Hyperelliptic equation _:=PolynomialRing(Rationals()); F1:=HyperellipticCurve(16*t^4 -160*t^3+384*t^2-280*t+49); EF1:=EllipticCurve(F1,F1![1,3]); // 2 quadrics intersection Pr32 := ProjectiveSpace(Rationals(), 3); C1:=Curve(Pr32,[4*X0^2-10*X3^2+6*X4^2,4*X2^2-7*X3^2+3*X4^2]); EC1:=EllipticCurve(C1,C1![-1,1,1,1]); // Weierstrass Model E1:=EllipticCurve(t*(t-12)*(t+30)); &and[IsIsomorphic(EC1,EF1),IsIsomorphic(EC1,E1),IsIsomorphic(EF1,E1)]; CremonaReference(E1); MordellWeilGroup(E1); /* true 20160bg2 Abelian Group isomorphic to Z/2 + Z/2 + Z + Z Defined on 4 generators Relations: 2*$.1 = 0 2*$.2 = 0 */ //----------------------------------------- // (2) //----------------------------------------- // Hyperelliptic equation _:=PolynomialRing(Rationals()); F2:=HyperellipticCurve(36*t^4 + 96*t^3 - 236*t^2 + 80*t + 25); EF2:=EllipticCurve(F2,F2![1,1]); // 2 quadrics intersection Pr32 := ProjectiveSpace(Rationals(), 3); C2:=Curve(Pr32,[5*X0^2-6*X1^2+X3^2, 9*X0^2-10*X1^2+X4^2]); EC2:=EllipticCurve(C2,C2![-1,1,1,1]); // Weierstrass Model E2:=EllipticCurve(t*(t+4)*(t+54)); &and[IsIsomorphic(EC2,EF2),IsIsomorphic(EC2,E2),IsIsomorphic(EF2,E2)]; CremonaReference(E2); MordellWeilGroup(E2); /* true 960h2 Abelian Group isomorphic to Z/2 + Z/2 + Z Defined on 3 generators Relations: 2*$.1 = 0 2*$.2 = 0 */ //----------------------------------------- // (3) //----------------------------------------- // Hyperelliptic equation _:=PolynomialRing(Rationals()); F3:=HyperellipticCurve(100*t^4-360*t^3+472*t^2-252*t+49); EF3:=EllipticCurve(F3,F3![1,3]); // 2 quadrics intersection Pr32 := ProjectiveSpace(Rationals(), 3); C3:=Curve(Pr32,[2*X0^2-3*X1^2+X2^2, 9*X0^2-10*X1^2+X4^2]); EC3:=EllipticCurve(C3,C3![-1,1,1,1]); // Weierstrass Model E3:=EllipticCurve(t*(t-7)*(t+20)); &and[IsIsomorphic(EC3,EF3),IsIsomorphic(EC3,E3),IsIsomorphic(EF3,E3)]; CremonaReference(E3); MordellWeilGroup(E3); /* true 840h2 Abelian Group isomorphic to Z/2 + Z/2 + Z Defined on 3 generators Relations: 2*$.1 = 0 2*$.2 = 0 */ //----------------------------------------- // (4) //----------------------------------------- // Hyperelliptic equation _:=PolynomialRing(Rationals()); F4:=HyperellipticCurve(36*t^4 - 72*t^3 + 72*t^2 - 60*t + 25); EF4:=EllipticCurve(F4,F4![1,1]); // 2 quadrics intersection Pr32 := ProjectiveSpace(Rationals(), 3); C4:=Curve(Pr32,[2*X0^2-3*X1^2+X2^2, 5*X0^2-6*X1^2+X3^2]); EC4:=EllipticCurve(C4,C4![-1,1,1,1]); // Weierstrass Model E4:=EllipticCurve(t*(t-12)*(t-15)); &and[IsIsomorphic(EC4,EF4),IsIsomorphic(EC4,E4),IsIsomorphic(EF4,E4)]; CremonaReference(E4); MordellWeilGroup(E4); /* true 360e2 Abelian Group isomorphic to Z/2 + Z/2 + Z Defined on 3 generators Relations: 2*$.1 = 0 2*$.2 = 0 */