"Source: Text/Basics/FldForms.text";
"Line: 1871";
"Date: Thu Sep 25 14:47:46 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Basics/FldForms.text, line: 1871
// Example: H30E28 ()
print "Example: H30E28";
ei := GetEchoInput();
SetEchoInput(true);
// To get composition series with desired dimensions
repeat J := StandardAlternatingForm(6,8);
L := DerivationAlgebra(J);
CS := CompositionSeries(L); until Dimension(CS[1]) eq 14;
Q := CS[1];
W := L/Q;
W;
Z := Centre(W);
z := Z.1;
exists(u1,v1){ <u,v> : u,v in W | u*v ne 0 and u*v eq z };
assert $1;
W1 := Centraliser(W,sub<W|u1,v1>);
assert $1;
exists(u2,v2){ <u,v> : u,v in W1 | u*v ne 0 and u*v eq z };
assert $1;
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) };
assert $1;
Kernel(f);
Image(f) eq W;
assert $1;
SetEchoInput(ei);
