SetEchoInput(true); /* THE SIMPLE LIE ALGEBRAS OVER GF(2) OF DIMENSION AT MOST 9 The algebras are L3 (of dimension 3), L6 (of dimension 6), L7a and L7b (of dimension 7), L8a and L8b (of dimension 8), and L9 (of dimension 9). The algebras are given (respectively) as subalgebras of gl(3,2), gl(6,2), gl(7,2), gl(7,2), gl(8,2), gl(8,2) and gl(9,2). L3 is isomorphic to W(1,(2))' L6 is isomorphic to the tensor product over GF(2) of W(1,(2))' with GF(4) L7a is isomorphic to W(1,(3))' L8a is isomorphic to W(2,(1,1)) L9 is isomorphic to the tensor product over GF(2) of W(1,(2))' with GF(8) */ SetEchoInput(false); Z2:=FiniteField(2); gl3:=MatrixLieAlgebra(Z2,3); gl6:=MatrixLieAlgebra(Z2,6); gl7:=MatrixLieAlgebra(Z2,7); gl8:=MatrixLieAlgebra(Z2,8); gl9:=MatrixLieAlgebra(Z2,9); // 3 dimensional algebra L3 isomorphic to W(1,(2))' A:=gl3![0,0,0, 0,0,1, 0,1,0]; B:=gl3![0,0,1, 0,0,0, 1,0,0]; //These are the matrices for ad(a_1) and ad(a_2) with respect to a basis a_1,a_2,a_3 L3:=sub; //Dimension(L3); //IsSimple(L3); // 6 dimensional algebra L6 A:= gl6! [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]; B:= gl6! [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0]; //These are the matrices for ad(a_1) and ad(a_2) with respect to a basis // a_1,a_2,...,a_6 L6:=sub; //Dimension(L6); //IsSimple(L6); // 7 dimensional algebra L7a which is isomorphic to W(1,(3))' A:= gl7! [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]; B:= gl7! [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]; //These are the matrices for ad(a_1) and ad(a_2) with respect to a basis // a_1,a_2,...,a_7 L7a:=sub; //Dimension(L7a); //IsSimple(L7a); // 7 dimensional algebra L7b A:= gl7! [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]; B:= gl7! [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]; //These are the matrices for ad(a_1) and ad(a_2) with respect to a basis // a_1,a_2,...,a_7 L7b:=sub; //Dimension(L7b); //IsSimple(L7b); // 8 dimensional algebra L8a isomorphic to sl(3,2), A_2 and W(2,(1,1)) A:=gl8! [0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,1,0,0,0,0, 0,0,0,0,1,0,0,0, 0,0,1,1,0,0,0,0, 0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,1, 0,0,0,0,0,1,1,0]; B:=gl8! [0,0,0,1,0,0,0,0, 0,0,0,0,1,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,1,0,0, 0,0,0,0,0,0,1,0, 1,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0, 1,0,0,0,0,0,0,0]; //These are the matrices for ad(a_1) and ad(a_3) with respect to a basis // a_1,a_2,...,a_8 L8a:=sub; //Dimension(L8a); //IsSimple(L8a); // 8 dimensional algebra L8b A:=gl8! [0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,1,0,0,0,0, 0,0,0,0,1,0,0,0, 0,0,1,1,0,0,0,0, 0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,1, 0,0,0,0,0,1,1,0]; B:=gl8! [0,0,0,1,0,0,0,0, 0,0,0,1,1,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,1,0,0, 0,0,0,0,0,0,1,0, 1,0,0,0,0,0,0,0, 1,1,1,0,0,0,0,0, 1,0,0,1,0,0,0,0]; //These are the matrices for ad(a_1) and ad(a_3) with respect to a basis // a_1,a_2,...,a_8 L8b:=sub; //Dimension(L8b); //IsSimple(L8b); // 9 dimensional algebra L9 A:= gl9! [0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0, 0,0,0,0,1,0,0,0,0, 0,0,0,0,0,1,0,0,0, 0,0,0,0,0,0,1,0,0, 0,0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,0,1, 0,0,0,1,0,0,0,1,0]; B:= gl9! [0,0,0,0,1,0,0,0,0, 0,0,0,0,0,0,0,0,1, 0,0,0,0,0,0,1,0,0, 0,0,0,0,0,0,0,0,0, 0,0,1,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0, 1,1,0,0,0,0,0,0,0]; //These are the matrices for ad(a_1) and ad(a_4) with respect to a basis // a_1,a_2,...,a_9 L9:=sub; //Dimension(L9); //IsSimple(L9); count1:=0; count2:=0; count3:=0; count4:=0; //The element below is the second generator of L7b B:= gl7! [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]; p:=MinimalPolynomial(B); ""; print "The second generator of L7b has minimal polynomial",p; ""; for a in L7a do if MinimalPolynomial(a) eq p then count1:=count1+1; end if; end for; for a in L7b do if MinimalPolynomial(a) eq p then count2:=count2+1; end if; end for; for a in L8a do if MinimalPolynomial(a) eq p then count3:=count3+1; end if; end for; for a in L8b do if MinimalPolynomial(a) eq p then count4:=count4+1; end if; end for; print "L7a has",count1,"elements with minimal polynomial x^4."; print "L7b has",count2,"elements with minimal polynomial x^4."; print "L8a has",count3,"elements with minimal polynomial x^4."; print "L8b has",count4,"elements with minimal polynomial x^4."; W12:=WittLieAlgebra(GF(2),1,[2]); W13:=WittLieAlgebra(GF(2),1,[3]); W211:=WittLieAlgebra(GF(2),2,[1,1]); D:=DerivedSeries(W12); W121:=D[2]; D:=DerivedSeries(W13); W131:=D[2]; ""; "W(1,(2))' is a simple Lie algebra of dimension 3:", Dimension(W121) eq 3 and IsSimple(W121); "W(1,(3))' is a simple Lie algebra of dimension 7:", Dimension(W131) eq 7 and IsSimple(W131); "W(2,(1,1)) is a simple Lie algebra of dimension 8:", Dimension(W211) eq 8 and IsSimple(W211); //Find how many elements a in W(1,(3))' have ad(a) with minimal polynomial x^4 count:=0; for a in W131 do nil3:=true; nil4:=true; for b in W131 do ba:=b*a; baa:=ba*a; baaa:=baa*a; if baaa ne 0 then nil3:=false; end if; baaaa:=baaa*a; if baaaa ne 0 then nil4:=false; break; end if; end for; if nil4 and not nil3 then count:=count+1; end if; end for; ""; "W(1,(3))' has",count,"elements a such that ad(a) has minimal polynomial x^4"; //Find how many elements a in W(2,(1,1)) have ad(a) with minimal polynomial x^4 count:=0; for a in W211 do nil3:=true; nil4:=true; for b in W211 do ba:=b*a; baa:=ba*a; baaa:=baa*a; if baaa ne 0 then nil3:=false; end if; baaaa:=baaa*a; if baaaa ne 0 then nil4:=false; break; end if; end for; if nil4 and not nil3 then count:=count+1; end if; end for; ""; "W(2,(1,1)) has",count,"elements a such that ad(a) has minimal polynomial x^4";