
// Scipt to verify the solution to Question 2.4.5 in the thesis.
// Computations finish in about 100 seconds. The first line is most of the cost.

cls := Subgroups( Sp(8,2) : OrderEqual:=3);

// We now have a list of subgroups of order 3. These are the
// possible images of H := Aut(C/B).

// By the proof of Lemma 2.4.4, we know that if B is the projective line, then
// H cannot fix any non-trivial 2-torsion class.

function FixedSubspace(H)
    HM := GModule(H);
    UM := CohomologyModule(H, HM);
    return CohomologyGroup(UM,0);
end function;

hlist := [ h`subgroup : h in cls | Dimension(FixedSubspace(h`subgroup)) eq 0];
assert #hlist eq 1;
H := hlist[1];

// Let Gk be the image of the Galois representation in Sp(8,2). By Lemma 2.4.3, 
// we have that Gk is a subgroup of the normalizer of H. Furthermore, as H is mu3, 
// there is an element a \in Gk such that a*h*a^(-1) = h^(-1). In fact, we may
// assume that a is the automorphism induced by complex conjugation, so the
// the order of a is 2.

N := Normalizer( Sp(8,2), H);
C := Centralizer( Sp(8,2), H);
assert Valuation(Exponent(N), 2) eq 3;

clsN := Subgroups(N : OrderEqual:=2, IsCyclic:=true);
gklist := [ G`subgroup : G in clsN | G`subgroup notsubset C];

// The solution to Question 2.4.5 is now given. It is impossible to find a mu3
// cover with 2^6 rational 2-torsion points.
assert Max( [ Dimension(FixedSubspace(G)) : G in gklist]) eq 4;
