|
Given one or more existing modules, standard constructions are available
to construct new modules.
These direct sums and tensor products for K[G]-modules should work for any
field K with the exception of the GTensorProduct intrinsics which require
K to be a finite field.
Given A-modules M and N, construct the direct sum D of M and N
as an A-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.
Given a sequence Q of A-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.
Given A-modules M and N, construct their tensor product, M tensor N.
Let M and N be two K[G]-modules, where K is a field. This function
constructs the tensor product, M tensor K N, with action of G defined
by (m tensor n) * g := (m * g) tensor (n * g) for m, n ∈M and g ∈G.
Given an A-module M and an integer n ≥1, construct the n-th
tensor power of M.
Given an A--module M, construct the A-submodule of M tensor A M
consisting of the skew tensors.
Given an A-module M, construct the A-submodule of M tensor A M
consisting of the symmetric tensors.
Let M and N be two K[G] modules where K is a finite field. This
function constructs the tensor product, M tensor KG N. It is equal to
FixDual(TensorProduct(M,N)).
Let M and N be two K[G] modules where K is a finite field and let
H be a subgroup of G. This function constructs the tensor product,
M tensor KH N as a NG(H)-module. It is equal to
FixDualMod(TensorProduct(M,N), H).
Given a K[G]-module M, where K is a field, construct the
K[G]-module which is the K-dual, HomK(M, K), of M.
Given a K[H]-module M, where K is a field, and a supergroup G
of H, construct the K[G]-module obtained by inducing M up to G.
Given a representation R of a subgroup of G, where R is defined
over a field K, construct the representation of G obtained by
inducing R up to G.
Given a K[G]-module M, where K is a field, and a subgroup H
of G, form the K[H]-module corresponding to the restriction of
M to the subgroup H.
Given a K[H]-module M, where K is a field, and a group
homomorphism h:G to H, return M as a K[G]-module by
inflation using h.
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 compute the restriction N of the module M to the stabilizer L34 of
a point in M22 and then induce two constituents of N back up to G.
> 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 a
9-dimensional module gives us irreducible modules of new
dimensions: 34 and 98. Hence starting out with only the
permutation module for M22 over GF(2), we have found
5 irreducible modules for the group.
Given a K[G]-module M, K a field, construct the largest
submodule of M on which G acts trivially, i.e. the fixed-point
space of M. This is equal to the cohomology group H0(G, M).
Given a K[G]-module M, K a field, and a subgroup H of G,
return Fix(MH) as a NG(H)-module, where MH is the restriction
of M to H.
Given a K[G]-module M, K a field, construct the largest quotient
module of M on which G acts trivially, i.e. M/N with
N := < m * g - m |m ∈M, g ∈G >.
This is equal to the homology group H0(G, M). The natural map from
M to M/N is also returned.
Given a K[G]-module M, K a field, and a subgroup H of G, return
FixDual(MH) as a NG(H)-module, where MH is the restriction
of M to H. The natural map from M to M/N is also returned.
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.
Given an 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.
Given a K[G]-module M of dimension n, where K is a field, 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.
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.
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.
Given a module M 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.
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.
SetVerbose("Reduce", n): Maximum: 2
SetVerbose("Cohomology", n): Maximum: 2
SetVerbose("GrunwaldWang", n): Maximum: 2
Let M be a K[G]-module, where K is a finite field of characteristic
p. This function returns the module obtained by writing M over a field
of smallest possible degree subject to the condition that the dimension
of M does not increase. For modules over finite fields, a field of
smallest degree is always a subfield of K, in this case, the Glasby-Howlet
algorithm is used.
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.
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.
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.
Given K[G]-modules M and N defined over finite fields of
characteristic p, change their base fields to L, where L
is the smallest field containing the base fields of M and N.
SetVerbose("Reduce", n): Maximum: 2
SetVerbose("Cohomology", n): Maximum: 2
SetVerbose("GrunwaldWang", n): Maximum: 2
Let M be a K[G]-module, where K is a a number field. This function
returns the module obtained by writing M over a field F of smallest
possible degree subject to the condition that the dimension of M does
not increase. The field F is found using a combination of a method due to
W. Plesken and a constructive version of the Grunwald-Wang theorem.
Minimize(R) : Map -> Map
All: BoolElt Default: false
Char: AlgChtrElt Default: false
FindSmallest: BoolElt Default: false
SetVerbose("Reduce", n): Maximum: 2
SetVerbose("Cohomology", n): Maximum: 2
SetVerbose("GrunwaldWang", n): Maximum: 2
Given an absolutely irreducible KG-module M or an absolutely irreducible
representation R : G -> GL(n, K), where K is a number field,
this function tries to find minimal subfields k of K that afford M (R),
i.e. it tries to write the module (representation) over a smaller field.
In general however, there might be a number field k not contained in K
of smaller degree that affords M (R).
If All is set to true, then instead of returning a single module
(representation) over a minimal degree subfield of K, a list of modules
(representations) over all minimal subfields of K is returned instead.
If Char is given, it should be set to the character of the module
(representation).
If FindSmallest is given, the field K will be extended by some
auxiliary field A such that KA will contain a minimal degree field
affording R. This involves a constructive version of the Grunwald-Wang
theorem and can be computationally expensive if the degree of KA
is too large.
WriteRepresentationOver(R, K) : Map, FldAlg -> Map
Char: AlgChtrElt Default: false
Subfield: BoolElt Default: false
SetVerbose("Reduce", n): Maximum: 2
SetVerbose("Cohomology", n): Maximum: 2
SetVerbose("GrunwaldWang", n): Maximum: 2
Given an absolutely irreducible L[G]-module M or an absolutely
irreducible representation R : G -> GL(n, L), where L
is a number field, and a number field K that is a normal extension,
try to write M (R) over K.
If Char is specified, it should be set to the character of this module
(representation).
If Subfield is set to true, the module (representation) will be
rewritten over a minimal degree subfield of K.
We will work with the G-module and character of the unique
2-dimensional character of Q 8. It is well known that, while the
character is defined over Q, the corresponding representation can only
be defined over fields where -1 is the sum of 2 squares.
> G := TransitiveGroup(8, 5);
> TransitiveGroupDescription(G);
Q_8(8);
> R := AbsolutelyIrreducibleModules(G, Rationals());
> R;
[
GModule of dimension 1 over Rational Field,
GModule of dimension 1 over Rational Field,
GModule of dimension 1 over Rational Field,
GModule of dimension 1 over Rational Field,
GModule of dimension 2 over Cyclotomic Field
of order 4 and degree 2
]
> R := R[5];
> WriteGModuleOver(R, CyclotomicField(5));
GModule of dimension 2 over Cyclotomic Field
of order 5 and degree 4
So Q(ζ 5) is an example of a field affording the module
but having no minimal degree subfield (of degree 2 here) affording
R!.
> AbsoluteModuleOverMinimalField($1);
GModule of dimension 2 over Number Field with
defining polynomial Qx.1^2 - Qx.1 + 1 over the
Rational Field
Note that the base field returned here is Q(ζ 3) which is
of degree 2 but different from Q(ζ 4) that was found initially.
In general there are infinetely many minimal degree splitting fields.
If we try to realize R over a field where -1 cannot be written
as a sums of two squares we get an error:
> WriteGModuleOver(R, QuadraticField(3));
>> WriteGModuleOver(R, QuadraticField(3));
^
Runtime error in 'WriteGModuleOver': The G-module
cannot be realised over K
We can try to find a minimal field containing Q(√3) by
computing the local Schur-indices and then obtain a splitting field:
> k := QuadraticField(3);
> SchurIndices(Character(R), k);
[ <1st place at infinity, 2>, <2nd place at infinity, 2> ]
> A := SplittingField($1);
> A;
FldAb, defined by (<3>, [1 2]) of structure: Z/2
So the splitting field is returned as an abelian extension. We can
see that A is of degree 2 over k and will be ramified at most
at 3
and both infinite places. In order to use it to rewrite
the module, we need to convert to a number field over Q first:
> A := NumberField(A);
> A;
Number Field with defining polynomial $.1^2 + 1 over k
> A := AbsoluteField(A);
> A;
Number Field with defining polynomial
Qx.1^4 - 4*Qx.1^2 + 16 over the Rational Field
> WriteGModuleOver(R, A);
GModule of dimension 2 over A
> WriteGModuleOver(R, A : Subfield);
GModule of dimension 2 over Number Field with
defining polynomial Qx.1^2 - Qx.1 + 1 over the
Rational Field
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|