67.34 Components of a $G$-module record

The component .reducible is set to true if module is known to be reducible, and to false if it is known not to be. This component is set by IsIrreducible which may also set the components .subbasis, .algEl, .algElMat, .algElCharPol, .algElCharPolFac, .algElNullspaceVec and .algElNullspaceDim. If module has been proved reducible, .subbasis is a basis for a submodule. Alternatively, if module has been proved to be irreducible, .algEl is set to the random element el of the group algebra which has been successfully used by the algorithm to prove irreducibility, represented abstractly, essentially as a sum of words in the generators, and .algElMat to the actual matrix X that represents that element. The component .algElCharPol is set to the characteristic polynomial p of X and .algElCharPolFac to the factor f of X used by the algorithm. (Essentially irreducibility is proved by applying Norton's irreducibility criterion to the matrix f(X); see [5] for further details.) The component .algElNullspaceVec is set to an arbitrary vector of the nullspace N of f(X), and .algElNullspaceDim to the dimension of N.

The component .absolutelyReducible is set to false if module is known to be absolutely irreducible, and to true if it is known not to be. It is set by IsAbsolutelyIrreducible, which also sets the components .degreeFieldExt, .centMat, .centMatMinPoly if module is not absolutely irreducible. In that case, .degreeFieldExt is set to the dimension e of the centralising field of module. The component .centMat is set to a matrix C, which both centralises each of the matrices in module.generators generating the group action of module and has minimal polynomial f of degree e. The component .centMatMinPoly is set equal to f.

The component .semiLinear is set to true in SemiLinearDecomposition if G acts absolutely irreducibly on module but embeds in a group of semilinear automorphisms over an extension field of degree e over the field F. Otherwise it is not set. At the same time, .degreeFieldExt is set to e, .linearPart is set to a list of matrices S which are normal subgroup generators for the intersection of G with the general linear group in dimension d/e over GF(q^e), and .centMat is set to a matrix C which commutes with each of those matrices. Here, C corresponds to scalar multiplication in the module by an element of the extension field GF(q^e). The component .frobeniusAutomorphisms is set to a list of integers i, one corresponding to each of the generating matrices g for G in the list .generators, such that Cg = gC^{q^{i(g)}}. Thus the generator g acts on the field GF(q^e) as the Frobenius automorphism x rightarrow x^{q^{i(g)}}.

The component .tensorProduct is set to true in TensorProductDecomposition if module can be written as a tensor product of two G-modules with respect to an appropriate basis. Otherwise it is not set. At the same time, .tensorBasis is set to the appropriate basis of that space, and .tensorFactors to the pair of G-modules whose tensor product is isomorphic to module written with respect to that basis.

The component .symTensorProduct is set to true in SymTensorProductDecomposition if module can be written as a symmetric tensor product whose factors are permuted by the action of G. Otherwise it is not set. At the same time, .symTensorBasis is set to the basis with respect to which this decomposition can be found, .symTensorFactors to the list of tensor factors, and .symTensorPerm to the list of permutations corresponding to the action of each of the generators of G on those tensor factors.

The component .extraSpecial is set to true in the function ExtraSpecialDecomposition if G has been shown to have a normal subgroup H which is an extraspecial r-group for an odd prime r or a 2-group of symplectic type, modulo scalars. Otherwise it is not set. At the same time, .extraSpecialGroup is set to the subgroup H, and .extraSpecialPrime is set to r.

The component .imprimitive is set to true if G has been shown to act imprimitively and to false if G is primitive. Otherwise it is not set. This component is set in IsPrimitive. If G has been shown to act imprimitively, then module has a component .blockSystem which has the structure described in BlockSystemFlag.

Previous Up Top Next
Index

GAP 3.4.4
April 1997