Testing Finiteness#
In this section, \(K\) is a finite degree extension of the field \(F(x_1, \ldots, x_m)\), where \(F\) is \(Q\), a number field, or a finite field. Also \(m \geq 0\) if char \(F = 0\), and \(m > 0\) otherwise.
- IsFinite(G : parameters): GrpMat -> BoolElt, RngIntElt#
NumberRandom : RngIntElt Default: 10 Presentation : MonStgElt Default: "CT" Small : RngIntElt Default: 10^6 OrderLimit : RngIntElt Default: 10^15 Algebra : BoolElt Default: true Nilpotent : BoolElt Default: false UseCongruence : BoolElt Default: false DetermineOrder: BoolElt Default: false Prime : RngintElt Default: 3
Let \(G\) be a finitely generated subgroup of \({\operatorname{GL}}(n, K)\). If \(G\) is finite then the function returns
true, otherwisefalse. The function is an implementation of algorithms from [Detinko and Flannery, 2008, Detinko and Flannery, 2009, Detinko et al., 2009, Detinko et al., 2013].The algorithm first tests whether
NumberRandomrandom elements of \(G\) have finite order.If the optional parameter
Algebraistrueand \(K\) is a function field of characteristic zero (resp. positive characteristic), then we use the “algebra algorithm” of [Detinko and Flannery, 2009] (resp. [Detinko et al., 2009]) to decide finiteness.Otherwise, we prove that \(G\) is finite by first constructing a congruence homomorphism, then a presentation for the congruence image, and finally evaluates its relations to obtain normal generators for the congruence kernel. If char \(K = 0\), then the kernel should be trivial, otherwise the kernel is unipotent.
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.If \(K\) is \(Q\) or a number field and
UseCongruenceistrue, then use congruence homomorphism machinery to decide; otherwise use default algorithm.If \(G\) is known to be nilpotent then by setting the optional parameter
Nilpotenttotrue, the function will call a special procedure for testing finiteness of nilpotent groups (see [Detinko and Flannery, 2008, Section 4.3]).If the optional parameter
DetermineOrderis set totrue, and \(G\) is finite, then the function returns the order of \(G\). This may sometimes be more expensive than deciding finiteness.The optional parameter
Primeapplies if \(K\) has characteristic 0: ifPrimeis positive, then it is a lower bound for the characteristic of the congruence image; if it is 0 then the function constructs a congruence image defined over a field of characteristic 0.
- IsomorphicCopy(G : parameters): GrpMat -> BoolElt, GrpMat, HomGrp#
Presentation : MonStgElt Default: "CT" Small : RngIntElt Default: 10^6 OrderLimit : RngIntElt Default: 10^15 Verify : BoolElt Default: false Algebra : BoolElt Default: false StartDegree : RngIntElt Default: 1 EndDegree : RngIntElt Default: 5 CompletelyReducible: BoolElt Default: false
The input is a finite subgroup \(G\) of \({\operatorname{GL}}(n, K)\). If the function succeeds, then it returns
trueand an isomorphic copy of \(G\) in \({\operatorname{GL}}(n,{\bf F}_{q})\) where \(q\) is a prime power; otherwise it returnsfalse. A description of the method used is in [Detinko et al., 2013, Section 4.3]. If char \(K > 0\), then \({\bf F}_{q}\) has the same characteristic. Note that the function always succeeds if \(K\) has zero characteristic.If the optional parameter
Algebraistrueand \(K\) is a function field of characteristic zero (resp. positive characteristic), then we use the “algebra algorithm” of [Detinko and Flannery, 2009] (resp. [Detinko et al., 2009]) to construct an isomorphic copy.Otherwise we prove that a congruence homomorphism is an isomorphism by constructing a presentation for the congruence image and evaluating its relations to obtain normal generators for the congruence kernel.
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.If the optional parameter
Verifyis set totruethen we first check whether \(G\) is finite.If the characteristic of the coefficient field \(F\) is positive, then we investigate extensions of \(F\) in the range
StartDegree\(\ldots\)EndDegree.If the optional parameter
CompletelyReducibleis set totruethen we use a more efficient algorithm to construct the isomorphic copy.
- Order(G : parameters): GrpMat -> RngIntElt#
Verify : BoolElt Default: false UseCongruence: BoolElt Default: false
Given a finite subgroup \(G\) of \({\operatorname{GL}}(n,K)\), the function returns the order of \(G\) by applying
IsomorphicCopyto \(G\).If the optional parameter
Verifyis set totrue, then we first check that \(G\) is finite.If \(K\) is \(Q\) or a number field and
UseCongruenceistrue, then use congruence homomorphism machinery to decide; otherwise use default algorithm.