"Source: Text/Geometry/Crv.text";
"Line: 3239";
"Date: Thu Sep 25 14:47:45 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Geometry/Crv.text, line: 3239
// Example: H124E19 ()
print "Example: H124E19";
ei := GetEchoInput();
SetEchoInput(true);
P<x,y,z> := ProjectiveSpace(Rationals(),2);
C := Curve(P,x^4+y^4+z^4);
L := Automorphisms(C);
#L;
assert $1 eq 24;
// to get all automorphisms, we base change to Q(zeta_8)
K := CyclotomicField(8);
C1 := BaseChange(C,K);
L1 := Automorphisms(C1);
#L1;
assert $1 eq 96;
// next, we get the automorphism as a group 
G := AutomorphismGroup(C1);
g := G!iso<C1 -> C1 | [y,z,x],[z,x,y]>;
Gp,rep := PermutationRepresentation(G);
Gp;
rep(g);
Inverse(rep)(Gp.2);
$1 eq G.2;
assert $1;
SetEchoInput(ei);
