[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Standard Constructions

Given one or more existing modules, various standard constructions are available to construct new modules.

Subsections

Changing the Coefficient Ring

In this collection of functions will be found utilities for changing the base ring of the module. Note that several of the functions for rewriting over a minimal field are restricted to rings K[G] where K is a finite field.

ChangeRing(M, S) : ModRng, Rng -> ModRng, Map
Given an A-module M with base ring R, together with a ring S, such that there is a natural homomorphism from R to S, construct the module N with base ring S where N is obtained from M by coercing the components of the vectors of M into N. The corresponding homomorphism from M to N is returned as a second value.
ChangeRing(M, S, f) : ModRng, Rng, Map -> ModRng, Map
Given a module M with base ring R, together with a ring S, and a homomorphism f: R -> S, construct the module N with base ring S, where N is obtained from M by applying f to the components of the vectors of M. The corresponding homomorphism from M to N is returned as a second value.

Writing a Module over a Smaller Field

The functions in this section currently only apply to K[G]-modules defined over a finite field K.

IsRealisableOverSmallerField(M) : ModGrp -> BoolElt, ModGrp
Given a K[G]-module M, where K is a finite field, return true if M can be realised over a proper subfield F of K. The equivalent F[G]-module is also returned. The Glasby-Howlett algorithm is used to determine the smallest field over which M can be realised.
IsRealisableOverSubfield(M, F) : ModGrp, FldFin -> BoolElt, ModGrp
Let M be a K[G]-module, where K is a finite field of characteristic p, and let F be a finite field also of characteristic p. If it is possible to realise M over the subfield F of K, return true and the equivalent F[G]-module.
WriteOverSmallerField(M, F) : ModGrp, FldFin -> ModGrp, Map
Given a module of dimension d over a finite field E having degree e and a subfield F of E having degree f, write the action of M as d * e/f by d * e/f matrices over F and return the module and the isomorphism.
AbsoluteModuleOverMinimalField(M, F) : ModGrp, FldFin -> ModGrp
Let M be a K[G]-module, where K is a finite field of characteristic p, and let F be a finite field also of characteristic p. This function returns the module obtained by writing M over the smallest possible field containing F subject to the condition that the dimension of M does not increase. The Glasby-Howlett algorithm is used to determine the smallest field over which M can be realised.
AbsoluteModulesOverMinimalField(Q, K) : [ ModGrp ], FldFin -> [ ModGrp ]
Let Q be a sequence of K[G]-modules, where K is a finite field of characteristic p, and let F be a finite field also of characteristic p. This function returns the sequence of modules obtained by writing each module M of Q over the smallest possible field containing F subject to the condition that the dimension of M does not increase. Thus, the effect of the function is to apply the function AbsoluteModuleOverMinimalField to each module of Q. The Glasby-Howlett algorithm is used to determine the smallest field over which the modules M of Q can be realised.
ModuleOverSmallerField(M, F) : ModGrp, FldFin -> ModGrp
Let M be a K[G]-module of dimension d, where K is a finite field of characteristic p, and let F be a subfield of K of index n. This function returns the F[G]-module N obtained by writing the action of M as dn x dn matrices over F.
ModulesOverSmallerField(Q, F) : SeqEnum, FldFin -> ModGrp
Let Q be a sequence of K[G]-modules, where K is a finite field of characteristic p, and let F be a subfield of K of index n. This function returns the sequence R of F[G]-modules obtained by applying the function ModuleOverSmallerField to each term of Q. That is, each term N of R is formed by writing the action of the corresponding term of Q as dn x dn matrices over F.
ModulesOverCommonField(M, N) : ModGrp, ModGrp -> ModGrp, ModGrp
Given A-modules M and N, change their base fields to K, where K is the smallest field containing the base fields of M and N.

Direct Sum

DirectSum(M, N) : ModGrp, ModGrp -> ModGrp, Map, Map, Map, Map
Given R-modules M and N, construct the direct sum D of M and N as an R-module. The embedding maps from M into D and from N into D respectively and the projection maps from D onto M and from D onto N respectively are also returned.
DirectSum(Q) : [ ModGrp ] -> [ ModGrp ], [ Map ], [ Map ]
Given a sequence Q of R-modules, construct the direct sum D of these modules. The embedding maps from each of the elements of Q into D and the projection maps from D onto each of the elements of Q are also returned.

Tensor Products of K[G]-Modules

TensorProduct(M, N) : ModGrp, ModGrp -> ModGrp
Let M and N be two K[G] modules. This function constructs the tensor product, M otimes_A N, with diagonal action.
TensorPower(M, n) : ModGrp, RngIntElt -> ModGrp
Given a K[G]-module M and an integer k >= 1, construct the n-th tensor power of M.
ExteriorSquare(M) : ModGrp -> ModGrp
Given a K[G]-module M, construct the A-submodule of M otimes_A M consisting of the skew tensors.
SymmetricSquare(M) : ModGrp -> ModGrp
Given a K[G]-module M, construct the A-submodule of M otimes_A M consisting of the symmetric tensors.

Induction and Restriction

Dual(M) : ModGrp -> ModGrp
Given an K[G]-module M, construct the K[G]-module which is the K-dual, Hom_K(M, K), of M.

Induction(M, G) : ModGrp, Grp -> ModGrp
Given a K[H]-module M and a supergroup G of H, construct the K[G]-module obtained by inducing M up to G.
Induction(R, G) : Map, Grp -> Map
Given a representation R of a subgroup of G, construct the representation of G obtained by inducing R up to G.

Restriction(M, H) : ModGrp, Grp -> ModGrp
Given a K[G]-module M and a subgroup H of G, form the K[H]-module corresponding to the restriction of M to the subgroup H.

Example ModGrp_GModules1 (H73E10)

Starting with the permutation module M over GF(2) for the Mathieu group M_(22), we apply the induction and restriction functions to find new irreducible modules for M_(22).

> SetSeed(1);
> G := PermutationGroup< 22 |
>         (1,2,4,8,16,9,18,13,3,6,12)(5,10,20,17,11,22,21,19,15,7,14),
>         (1,18,4,2,6)(5,21,20,10,7)(8,16,13,9,12)(11,19,22,14,17),
>         (1,18,2,4)(3,15)(5,9)(7,16,21,8)(10,12,20,13)(11,17,22,14) >;
> M := PermutationModule(G, GaloisField(2));
> M;
GModule M of dimension 22 with base ring GF(2)
> CM := Constituents(M);
> CM;
[
    GModule of dimension 1 over GF(2),
    GModule of dimension 10 over GF(2),
    GModule of dimension 10 over GF(2)
]

We restrict the module M to the stabilizer of a point in M_(22) and then induce back up, a constituent of the restriction.

> L34 := Stabilizer(G, 1);
> N := Restriction(M, L34);
> N;
GModule N of dimension 22 with base ring GF(2)
> CN := Constituents(N);
> CN;
[
    GModule of dimension 1 over GF(2),
    GModule of dimension 9 over GF(2),
    GModule of dimension 9 over GF(2)
]
> Ind1 := Induction(CN[1], G);
> Ind1;
GModule Ind1 of dimension 22 over GF(2)
> Constituents(Ind1);
[
    GModule of dimension 1 over GF(2),
    GModule of dimension 10 over GF(2),
    GModule of dimension 10 over GF(2)
]
> Ind2 := Induction(CN[2], G);
> Ind2;
GModule Ind2 of dimension 198 over GF(2)
> Constituents(Ind2);         
[
    GModule of dimension 1 over GF(2),
    GModule of dimension 10 over GF(2),
    GModule of dimension 10 over GF(2),
    GModule of dimension 34 over GF(2),
    GModule of dimension 98 over GF(2)
]

Thus, inducing up the 1-dimensional constituent of N gives us irreducible modules for G having the same dimensions as those appearing as constituents of M. However, inducing up the 9-dimensional module gives us irreducible modules of new dimensions: 34 and 98. Hence starting out with only the permutation module for M_(22) over GF(2), we have found 5 irreducible modules for the group.


The Fixed-point Space of a Module

Fix(M): Mod -> Mod
Given an K[G]-module M, construct the largest submodule of M on which G acts trivially, i.e. the fixed-point space of M.

Changing Basis

M ^ T : ModGrp, AlgMatElt -> ModGrp
Given a K[G]-module M of dimension n over the field K, and a nonsingular n x n matrix T over K, construct the K[G]-module N which corresponds to taking the rows of T as a basis for M.

 [Next][Prev] [Right] [Left] [Up] [Index] [Root]