Other Functions for Nilpotent Matrix Groups#

RecogniseAbelian(G): GrpMat -> GrpGPC, Map, Map#

Given a completely reducible abelian matrix group \(G\) defined over \(Q\) or a number field, return an isomorphic polycyclic copy \(P\), a map from \(G\) to \(P\), and a map from \(P\) to \(G\). It uses an algorithm of Biasse and Fieker [Biasse and Fieker, 2012] to work with irreducible abelian groups defined over number fields.

SylowSystem(G : parameters): GrpMat[FldFin] -> []#
Verify: BoolElt                    Default: false

Given a nilpotent matrix group \(G\) over a finite field, this function constructs one Sylow \(p\)-subgroup for each prime \(p\) dividing \(|G|\) using the algorithm of [Detinko and Flannery, 2006]. If the optional parameter Verify is set to true, then we first verify that \(G\) is nilpotent.

The next two functions were developed and implemented by Tobias Rossmann.

IsIrreducibleFiniteNilpotent(G : parameters): GrpMat -> BoolElt, Any#
DecideOnly: BoolElt                    Default: false
Verify    : BoolElt                    Default: false

Let \(G\) be a finite nilpotent matrix group over \(K\), where \(K\) is a number field or a rational function field over a number field. The function returns true if \(G\) is irreducible or false and a proper submodule of GModule(G). The construction of a submodule can be suppressed by setting DecideOnly to true. If the optional parameter Verify is set to true, then the function checks if \(G\) is nilpotent and finite. The algorithm used for irreducibility testing is described in [Ros10a].

IsPrimitiveFiniteNilpotent(G : parameters): GrpMat -> BoolElt, Any#
DecideOnly: BoolElt                    Default: false
Verify    : BoolElt                    Default: false

Let \(G\) be an irreducible finite nilpotent matrix group over \(K\), where \(K\) is a number field or a rational function field over a number field. The function returns true if \(G\) is primitive, or false and a system of imprimitivity for \(G\) given as a sequence of subspaces of RSpace(G). The construction of a system of imprimitivity can be suppressed by setting DecideOnly to true. If the optional parameter Verify is set to true, then the function checks if \(G\) is nilpotent and finite. The algorithm used for primitivity testing is described in [Ros10b].