If J is the matrix of a bilinear form, the Lie algebra of derivations of J consists of the matrices X such that XJ + JXtr = 0.
Another way to construct a Lie algebra from an alternating form β with matrix J defined on a vector space V of dimension n over a field F is to set L = V direct-sum F and define the multiplication by [ei, ej] = β(ei, ej), where e1, e2, ..., en is a basis for V. (All other structure constants are 0.) This is the (generalised) Heisenberg algebra.
Rep: MonStgElt Default: "Sparse"
Check: BoolElt Default: false
The Lie algebra of derivations of the bilinear form with matrix J. The possible values for Rep are "Dense", "Sparse" and "Partial" with the default being "Sparse".
> J := StandardAlternatingForm(6,7); > L := DerivationAlgebra(J); > IsSimple(L); true > SemisimpleType(L); C3
> J := StandardAlternatingForm(6,8); > L := DerivationAlgebra(J); > SemisimpleType(L); C3 > Dimension(Centre(L)); 1 > CF := CompositionFactors(L); > CF; [ Lie Algebra of dimension 1 with base ring GF(2^3), Lie Algebra of dimension 14 with base ring GF(2^3), Lie Algebra of dimension 1 with base ring GF(2^3), Lie Algebra of dimension 1 with base ring GF(2^3), Lie Algebra of dimension 1 with base ring GF(2^3), Lie Algebra of dimension 1 with base ring GF(2^3), Lie Algebra of dimension 1 with base ring GF(2^3), Lie Algebra of dimension 1 with base ring GF(2^3) ] > exists(I){I : I in CF | Dimension(I) eq 14 }; true > IsSimple(I); true > SemisimpleType(I); G2
Rep: MonStgElt Default: "Sparse"
Check: BoolElt Default: false
The nilpotent Lie algebra whose structure constants are obtained from the alternating form with matrix J as described above. The possible values for Rep are "Dense", "Sparse" and "Partial" with the default being "Sparse".
> Q := CS[1]; > W := L/Q; > W; Lie Algebra of dimension 7 with base ring GF(2^3) > Z := Centre(W); > z := Z.1; > exists(u1,v1){ <u,v> : u,v in W | u*v ne 0 and u*v eq z }; true > W1 := Centraliser(W,sub<W|u1,v1>); true > exists(u2,v2){ <u,v> : u,v in W1 | u*v ne 0 and u*v eq z }; true > W2:= Centraliser(W1,sub<W1|u2,v2>); > exists(u3,v3){ <u,v> : u,v in W2 | u*v ne 0 and u*v eq z }; > H := HeisenbergAlgebra(J); > f := hom< H -> W | u1,u2,u3,v3,v2,v1,z >; > forall{ <u,v> : u,v in Basis(H) | f(u*v) eq f(u)*f(v) }; true > Kernel(f); Lie Algebra of dimension 0 with base ring GF(2^3) > Image(f) eq W; true