Other Properties of Linear Groups#
In this section, \(K\) is a finite degree extension of \(F(x_1, \ldots, x_m)\), where \(F\) is \(Q\), a number field, or a finite field, and \(m\geq 0\).
- IsCompletelyReducible(G : parameters): GrpMat -> BoolElt#
SolubleByFinite : BoolElt Default: false NilpotentByFinite: BoolElt Default: false AbelianByFinite : BoolElt Default: false Nilpotent : BoolElt Default: false Presentation : MonStgElt Default: "CT" OrderLimit : RngIntElt Default: 10^15 Small : RngIntElt Default: 10^6
This function takes as input a finitely generated matrix group \(G\) over \(K\), and tests whether \(G\) is completely reducible. If so, it returns
true, otherwisefalse.The algorithm used is described in [Detinko et al., 2011, Section 4]. It applies only if \(G\) is soluble-by-finite, nilpotent-by-finite, or abelian-by-finite. Hence one (and only one) of the four optional arguments
SolubleByFinite, NilpotentByFinite, AbelianByFinite, Nilpotentmust be true. In particular, ifNilpotentis set to be true, then a more efficient algorithm (from [Detinko and Flannery, 2008]) is used.In positive characteristic \(p\), if \(p\) divides the order of the congruence image of \(G\) then currently the algorithm cannot decide complete reducibility of \(G\).
The optional parameter
Presentationis used to dictate how the presentation is constructed. If its value is “CT”, then we use the presentation provided byCompositionTreeVerify. If its value is “PC” and the image is soluble, then we use a PC-presentation provided byLMGSolubleRadical. If its value is “FP” then we use the presentation provided byFPGrouporFPGroupStrong. If the order of the congruence image is less than the value of the optional argumentSmall, then we useFPGroupto construct the presentation; if it is less than the value of the optional argumentOrderLimit, then we useFPGroupStrongto construct the presentation; otherwise we use the presentation provided byCompositionTreeVerify.
- CompletelyReduciblePart(G): GrpMat -> GrpMat, GrpMatElt#
Let \(H\) be a matrix group in block lower triangular form, and let \(\mu\) be the projection of \(H\) onto its diagonal blocks. If all diagonal blocks of \(H\) are completely reducible, then \(\ker \mu\) is the unipotent radical of \(H\) and \(\mu(H)\) is a ‘completely reducible part’ of \(H\).
\(G\) is a soluble-by-finite group defined over \(Q\) or over a number field. The function returns a completely reducible part of \(G\) and a change-of-basis matrix to exhibit this.
In positive characteristic \(p\), if \(p\) divides the order of the congruence image of \(G\) then currently the algorithm cannot construct a completely reducible part.
- IsUnipotent(G): GrpMat -> BoolElt, GrpMatElt#
This function takes as input a finitely generated matrix group \(G\) defined over an exact field \(F\), and tests whether \(G\) is unipotent, i.e., whether it is conjugate in \({\operatorname{GL}}(n, F)\) to a group of upper unitriangular matrices. If \(G\) is unipotent then the function returns
trueand a change-of-basis matrix \(c \in {\operatorname{GL}}(n, F)\) such that \(G^c\) is upper unitriangular, otherwisefalse. See [Detinko and Flannery, 2006, Section 2.1] for details of the algorithm.
- IsNilpotent(G): GrpMat -> BoolElt#
Let \(G\) be a finitely generated subgroup of \({\operatorname{GL}}(n, K)\). This function returns
trueif \(G\) is nilpotent; otherwise it returnsfalse. If \(K\) is finite then the function is an implementation of the algorithm of [Detinko and Flannery, 2006]. If \(K\) is infinite then the function is similar to the algorithm in [Detinko and Flannery, 2008], and is based on the construction of a homomorphic image \(H\) of \(G\) viaCongruenceImage.
- IsSoluble(G : parameters): GrpMat -> BoolElt#
Presentation : MonStgElt Default: "CT" OrderLimit : RngIntElt Default: 10^15 Small : RngIntElt Default: 10^6 UseCongruence: BoolElt Default: false
Let \(G\) be a finitely generated subgroup of \({\operatorname{GL}}(n, K)\). This function returns
trueif \(G\) is soluble; otherwise it returnsfalse. If \(K\) is infinite and has characteristic \(p>0\), then the algorithm is applicable only for \(p > n\). For details see [Detinko et al., 2011, Section 3.2].If \(K\) is \(Q\) or a number field and
UseCongruenceistrue, then use congruence homomorphism machinery to decide; otherwise use default algorithm.The other optional arguments are those described above for
IsSolubleByFinite.
- IsPolycyclic(G : parameters): GrpMat -> BoolElt#
Presentation: MonStgElt Default: "CT" OrderLimit : RngIntElt Default: 10^15 Small : RngIntElt Default: 10^6
This function takes as input a finite matrix group \(G\) over \(Z\), and tests whether \(G\) is polycyclic. If so, it returns
true, otherwisefalse.The optional arguments are those described above for
IsSolubleByFinite.
- HasFiniteOrder(g : parameters): GrpMatElt -> BoolElt, RngIntElt#
UseCongruence: BoolElt Default: false
Let \(g\) be an invertible matrix defined over \(Z\), \(Q\), a number field, a function field, or an algebraic function field.
If \(g\) has finite order, then return
trueand, if known, a multiplicative upper bound for the order of \(g\); else returnfalse.If \(g\) is defined over \(Z\), \(Q\), or a number field and
UseCongruenceistrue, then use congruence homomorphism machinery to decide; otherwise use default algorithm.