P<s>:=PolynomialRing(Rationals());

Q<s>:=FieldOfFractions(P);

 

u:=(9*s^4 + 18*s^3 + 12*s^2 + 12*s + 3)/(2*s^5 + 5*s^4 + 2*s^3 + 8*s^2 + 2*s - 1);

v:= (s^4 + 4*s^3 + 4*s^2 + 6*s + 3)/(s^4 - 4*s^3 - 2*s - 1);

 

t:=-1/3*u*(2*s+1);

//Substitute -3/2s^2-1/2 for t to get Equation (2.6)

 

t:=Evaluate(t,-3/2*s^2-1/2);

u:=Evaluate(u,-3/2*s^2-1/2);

v:=Evaluate(v,-3/2*s^2-1/2);

t/u; u; v;

 

//Now specialize to s=12/13 and find the curve in Theorem 2.5

 

t:=Evaluate(t,12/13);

u:=Evaluate(u,12/13);

v:=Evaluate(v,12/13);

 

 

R<w>:=PolynomialRing(Rationals());

 

 

a:=(t-u)*(t^3*u + t^2*u^2 + t*u^3 - 6*t*u + 3);

q:=(w-1)^3*(w+3);

r:=(w+1)^3*(w-3);

 

A3<x,y,z>:=AffineSpace(Rationals(),3);

f:=a*(u*x^2-t)*(Evaluate(q,u)*x^2-Evaluate(q,t))*(Evaluate(r,u)*x^2- Evaluate(r,t))-y^2;

 

g:=-t*Evaluate(q,u)*v*(u*x^2-t)*(Evaluate(q,u)*x^2-Evaluate(q,t))-z^2;

 

C:=Curve(A3,[f,g]);

//This may take a little time

_,C2:= IsHyperelliptic(C);

 

//Check the curve is isomorphic to the curve of Theorem 2.5

h:=3*(2156368971259291788768*w^2 + 17631006366692164075730*w + 29699355872439635532575)*

(11059757352967285969512842208*w^2 - 7091311407633771522260131534*w + 890759660375643943081974383)*

(72471395366770846855160511270238311434544819644269483224510638908380448975178286675*w^4 + 220412834417638726170369528388500737059808808950881801569083924119940345487077117130*w^3 + 349028896642164971206777347398916786554047452255452799240009025234448247634394895917*w^2 - 226266297687093053128869990785216720827777361022207859381240801920732109106262460538*w + 92436361129062375107961184178560590459501276670160242498848213720499182945004486643);

D:=HyperellipticCurve(h);

IsIsomorphic(C2,D);