"Source: Text/Group/GrpMatGen.text";
"Line: 5569";
"Date: Thu Sep 25 14:47:45 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Group/GrpMatGen.text, line: 5569
// Example: H66E32 ()
print "Example: H66E32";
ei := GetEchoInput();
SetEchoInput(true);
L<zeta_8> := CyclotomicField(8);
w := -( - zeta_8^3 - zeta_8^2 + zeta_8);
// Define sqrt(q)
rt2 := -1/6*w^3 + 5/6*w;
// Define sqrt(-1)
ii := -1/6*w^3 - 1/6*w;
f := rt2;
t := f/2 + (f/2)*ii;
GL4L := GeneralLinearGroup(4, L);
A := GL4L ! [ 1/2, 1/2, 1/2, 1/2, 
            1/2,-1/2, 1/2,-1/2, 
            1/2, 1/2,-1/2,-1/2, 
            1/2,-1/2,-1/2, 1/2 ];
 
B := GL4L ! [ 1/f,   0, 1/f,   0,
              0, 1/f,   0, 1/f,
            1/f,   0,-1/f,   0,
              0, 1/f,   0,-1/f ];
 
g4 := GL4L ! [  1, 0, 0, 0,
              0, 1, 0, 0,
              0, 0, 1, 0,
              0, 0, 0,-1 ];
 
D1 := GL4L ! [ 1, 0, 0, 0,
             0,ii, 0, 0,
             0, 0, 1, 0,
             0, 0, 0,ii ];
 
D3 := GL4L ! [ t, 0, 0, 0,
             0, t, 0, 0,
             0, 0, t, 0,
             0, 0, 0, t ];
 
G3 := sub< GL4L | A, B, g4, D1, D3 >;
Order(G3);
assert $1 eq 92160;
ChiefFactors(G3);
SetEchoInput(ei);
