Invariant Forms

Let G be a finite matrix group G < GLn(Q). A matrix F ∈Mn(Q) is G-invariant if gFgtr = F for all g ∈G.

PositiveDefiniteForm(G) : GrpMat -> Mtrx
For a finite integral or rational matrix group G, return a positive definite symmetric G-invariant form.
InvariantForms(G) : GrpMat -> [ AlgMatElt ]
SymmetricForms(G) : GrpMat -> [ AlgMatElt ]
AntisymmetricForms(G) : GrpMat -> [ AlgMatElt ]
For an integral or rational matrix group G, return a basis for the space of G-linear forms or for the subspace of (anti-) symmetric forms respectively.

The first form returned by InvariantForms and SymmetricForms will be positive definite.

InvariantForms(G, n) : GrpMat, RngIntElt -> [ AlgMatElt ]
SymmetricForms(G, n) : GrpMat, RngIntElt -> [ AlgMatElt ]
AntisymmetricForms(G, n) : GrpMat, RngIntElt -> [ AlgMatElt ]
For an integral or rational matrix group G, return a sequence consisting of n≥0 G-invariant (symmetric or antisymmetric) bilinear forms for G.
NumberOfInvariantForms(G) : GrpMat -> RngIntElt, RngIntElt
NumberOfSymmetricForms(G) : GrpMat -> RngIntElt
NumberOfAntisymmetricForms(G) : GrpMat -> RngIntElt
For an integral or rational matrix group G or a G-lattice L, return the dimension of the space of (symmetric or anti-symmetric) invariant bilinear forms for G.

The algorithm uses a modular method which is much faster than the actual computation of the forms.

V2.28, 13 July 2023