"Source: Text/Geometry/CrvHyp.text";
"Line: 3230";
"Date: Fri Sep 26 09:12:34 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Geometry/CrvHyp.text, line: 3230
// Example: H137E24 ()
print "Example: H137E24";
ei := GetEchoInput();
SetEchoInput(true);
_<x> := PolynomialRing(Rationals());
C := HyperellipticCurve(&*[x-n : n in [-3..2]]);
J := Jacobian(C);
T, m := TwoTorsionSubgroup(J);
T;
[ m(T.i) : i in [1..4] ];
#T eq #TorsionSubgroup(J);
assert $1;
C := HyperellipticCurve((2*x^2-2*x-1)*(2*x^4-10*x^3+7*x^2+4*x-4));
J := Jacobian(C);
T, m := TwoTorsionSubgroup(J);
T;
m(T.1);
A,h := TorsionSubgroup(J);
#T eq #A;
assert not $1;
A;
P := h(A.1);
P;
Order(P);
assert $1 eq 24;
12 * P eq m(T.1);
assert $1;
SetEchoInput(ei);
