"Source: Text/Lat/Lat.text";
"Line: 5684";
"Date: Wed Apr 27 14:29:19 2022";
"Main: Thu May 25 10:02:38 2023";
// original file: Text/Lat/Lat.text, line: 5684
// Example: H31E25 ()
print "Example: H31E25";
ei := GetEchoInput();
SetEchoInput(true);
G := SU(3, 3); 
chi := CharacterTable(G)[2];
M := GModule(chi,Integers());
E := EndomorphismAlgebra (M);
while true do 
    r := &+[Random([-2..2])*E.i : i in [1..4]];
    if r^2 eq -1 then break; end if;
end while;
while true do
    s := &+[Random([-2..2])*E.i : i in [1..4]];
    if s^2 eq -3 and r*s eq -s*r then break; end if;
end while;
MM := QuaternionicGModule(M, r, s);
Discriminant(BaseRing(MM));
assert $1 eq 3;
MG := MatrixGroup(MM);
IF := InvariantForms(MG); IF;
assert IsIsomorphic(G, MG);
SetEchoInput(ei);
