/* generators for maximal subgroups of J2 */ GeneratorsJ2Max1 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w1:=w5^6; w7:=w6*w6; w4:=w7*w3; w8:=w4*w3; w9:=w5*w5; w7:=w8^-1; w10:=w7*w9; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max2 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w7:=w5*w5; w8:=w7*w3; w9:=w6^3; w7:=w8^-1; w10:=w7*w9; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max3 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w8:=w6*w3; w9:=w5*w5; w7:=w8^-1; w10:=w7*w9; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max4 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w7:=w6*w3; w8:=w7*w4; w9:=w3*w8; w10:=w9*w4; w1:=w5^6; w6:=w5*w5; w8:=w6*w3; w6:=w3*w10; w7:=w4*w5; w9:=w6*w7; w7:=w8^-1; w10:=w7*w9; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max5 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w7:=w6*w3; w9:=w7^6; w6:=w5*w5; w8:=w6*w9; w7:=w8^-1; w10:=w7*w2; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max6 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w7:=w6*w3; w9:=w6^4; w10:=w7^4; w8:=w9*w10; w9:=w5*w5; w7:=w8^-1; w10:=w7*w9; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max7 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w7:=w6^3; w5:=w3^-1; w6:=w5*w7; w2:=w6*w3; return [w1,w2]; end function; GeneratorsJ2Max8 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w3*w5; w7:=w6*w3; w8:=w7*w4; w9:=w3*w8; w10:=w9*w4; w1:=w5^6; w6:=w5*w5; w7:=w6*w3; w8:=w7*w3; w6:=w3*w10; w7:=w4*w5; w9:=w6*w7; w7:=w8^-1; w10:=w7*w9; w2:=w10*w8; return [w1,w2]; end function; GeneratorsJ2Max9 := function (a,b) w1 := a; w2 := b; w3:=w1*w2; w4:=w3*w2; w5:=w3*w4; w6:=w5^9; w8:=w3*w6; w7:=w8^-1; w10:=w7*w2; w2:=w10*w8; return [w1,w2]; end function; /* list of subgroups of J2 */ DataJ2 := function () F := SLPGroup (2); L := [ rec , rec , rec , rec , rec , rec , rec , rec , rec , rec ]; return L; end function; /* code to find standard generators of J2 and produce listing of maximal subgroups */ MaximalsJ2 := function (G) x, y := StandardGeneratorsJ2(G); if Type(x) eq BoolElt then "Unable to find Standard Generators"; return false; end if; G := sub; return ListMaximals(G, "J2", DataJ2()); end function;