Untersuchungsergebnis.tex Download desUnknown {[0] [0] [0]}
%!TEX root = manual.in.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% matgroups.tex IRREDSOL documentation Burkhard Höfling
%%
%% Copyright © 2003–2016 Burkhard Höfling
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Chapter{Additional functionality for matrix groups}
This chapter explains some attributes, properties, and operations which may
be useful for working with matrix groups. Some of these are part of the
{\GAP} library and are listed for the sake of completeness, and some
are provided by the package {\IRREDSOL}. Note that groups constructed
by functions in {\IRREDSOL} already have the appropriate properties and
attributes.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Section{Basic attributes for matrix groups}\null
\index{attributes!basic, for matrix groups}
\index{matrix group!basic attributes}
\>DegreeOfMatrixGroup(<G>) A
\>Degree(<G>)!{for matrix groups} O
\>DimensionOfMatrixGroup(<G>) A
\>Dimension(<G>)!{for matrix groups} A
This is the degree of the matrix group or, equivalently, the dimension of the
natural underlying vector space. See also "ref:DimensionOfMatrixGroup".
\>FieldOfMatrixGroup(<G>) A
This is the field generated by the matrix entries of the elements of~<G>. See also
"ref:FieldOfMatrixGroup".
\>DefaultFieldOfMatrixGroup(<G>) A
This is a field containing all matrix entries of the elements of~<G>. See also
"ref:DefaultFieldOfMatrixGroup".
\>SplittingField(<G>) A
Let <G> be an irreducible subgroup of $GL(n, F)$, where $F = `FieldOfMatrixGroup'(<G>)$
is a finite field. This attribute stores the splitting field <E> for <G>, that is,
the (unique) smallest field $E$ containing $F$ such
that the natural $E G$-module $E^n$ is the direct sum of absolutely irreducible $E G$-
submodules. The number of these absolutely irreducible summands equals the dimension of $E$
as an $F$-vector space.
\>CharacteristicOfField(<G>) A
\>Characteristic(<G>)!{for matrix groups} O
This is the characteristic of `FieldOfMatrixGroup'(<G>) (see "FieldOfMatrixGroup").
\>RepresentationIsomorphism(<G>) A
This attribute stores an isomorphism $<H> \to <G>$, where <H> is a group
in which computations can be carried out more efficiently than in <G>, and
the isomorphism can be evaluated easily. Every group in the {\IRREDSOL} library
has such a representation isomorphism from a pc group <H> to <G>.
In this way, computations which only depend on the
isomorphism type of <G> can be carried out in the group <H> and translated
back to the group <G> via the representation isomorphism. Possible applications are the conjugacy classes of <G>, Sylow subgroups, composition and chief series, normal subgroups, group theoretical properties of <G>, and many more.
The concept of a representation isomorphism is related to
nice monomorphisms; see Section "ref:Nice Monomorphisms". However, unlike nice monomorphisms,
`RepresentationIsomorphism' need not be efficient for computing preimages (and, indeed, will not usually be, in the case of the groups in the {\IRREDSOL} library).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Section{Irreducibility and maximality of matrix groups}\null
\index{matrix group!irreducibility}
\index{matrix group!maximality}
\index{irreducibility!of matrix group}
\index{maximality!of matrix group}
\>IsIrreducibleMatrixGroup(<G>) P
\>IsIrreducibleMatrixGroup(<G>, <F>) O
\>IsIrreducible(<G> [, <F>])!{for matrix groups} O
The matrix group <G> of degree <d> is irreducible over the field <F> if no subspace of $<F>^d$ is
invariant under the action of <G>. If <F> is not
specified, `FieldOfMatrixGroup'(<G>) is used as <F>.
\beginexample
gap> G := IrreducibleSolubleMatrixGroup(4, 2, 2, 3);
<matrix group of size 10 with 2 generators>
gap> IsIrreducibleMatrixGroup(G);
true
gap> IsIrreducibleMatrixGroup(G, GF(2));
true
gap> IsIrreducibleMatrixGroup(G, GF(4));
false
\endexample
\>IsAbsolutelyIrreducibleMatrixGroup(<G>) P
\>IsAbsolutelyIrreducible(<G>) O
If present, this operation returns true if <G> is absolutely irreducible, i.~e., irreducible over any
extension field of `FieldOfMatrixGroup'(<G>).
\beginexample
gap> G := IrreducibleSolubleMatrixGroup(4, 2, 2, 3);
<matrix group of size 10 with 2 generators>
gap> IsAbsolutelyIrreducibleMatrixGroup(G);
false
\endexample
\>`IsMaximalAbsolutelyIrreducibleSolubleMatrixGroup(<G>)'%
{IsMaximalAbsolutelyIrreducibleSolubleMatrixGroup}%
@{`IsMaximalAbsolutelyIrreducibleSoluble\\MatrixGroup'} P
\>`IsMaximalAbsolutelyIrreducibleSolvableMatrixGroup(<G>)'%
{IsMaximalAbsolutelyIrreducibleSolvableMatrixGroup}%
@{`IsMaximalAbsolutelyIrreducibleSolvable\\MatrixGroup'} P
This property, if present, is `true' if, and only if, <G> is absolutely irreducible and maximal among
the soluble subgroups of $GL(d, F)$, where $d$ is `DegreeOfMatrixGroup'(<G>) and
$F$ equals `FieldOfMatrixGroup'(<G>).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Section{Primitivity of matrix groups}\null
\index{matrix group!primitivity}
\index{primitivity!of matrix group}
\>MinimalBlockDimensionOfMatrixGroup(<G>) A
\>MinimalBlockDimensionOfMatrixGroup(<G>, <F>) O
\>MinimalBlockDimension(<G> [, <F>])!{for matrix groups} O
Let <G> be a matrix group of degree <d> over the field <F>. A
decomposition $V_1 \oplus \cdots \oplus V_k$ of $<F>^d$ into <F>-subspaces
$V_i$ is a block system of $<G>$ if the $V_i$ are permuted by the natural
action of <G>. Obviously, all $V_i$ have the same dimension; this is the
dimension of the block system
$V_1 \oplus \cdots \oplus V_k$. The function
`MinimalBlockDimensionOfMatrixGroup' returns the minimum of the dimensions
of all block systems of <G>. If <F> is not specified, `FieldOfMatrixGroup'(<G>)
is used as <F>. At present, only methods for groups
which are irreducible over <F> are available.
\beginexample
gap> G := IrreducibleSolubleMatrixGroup(2,3,1,4);;
gap> MinimalBlockDimension(G, GF(3));
2
gap> MinimalBlockDimension(G, GF(9));
1
\endexample
\>IsPrimitiveMatrixGroup(<G>) P
\>IsPrimitiveMatrixGroup(<G>, <F>) O
\>IsPrimitive(<G> [, <F>])!{for matrix groups} O
\>IsLinearlyPrimitive(<G> [, <F>]) O
An irreducible matrix group <G> of degree <d> is primitive over the field <F> if it
only has the trivial block system $<F>^d$ or, equivalently, if
$`MinimalBlockDimensionOfMatrixGroup'(<G>, <F>) = d$. If <F> is not
specified, it is assumed that <F> is `FieldOfMatrixGroup'(<G>).
\beginexample
gap> G := IrreducibleSolubleMatrixGroup(2,2,1,1);;
gap> IsPrimitiveMatrixGroup(G, GF(2));
true
gap> IsIrreducibleMatrixGroup(G, GF(4));
true
gap> IsPrimitiveMatrixGroup(G, GF(4));
false
\endexample
\>ImprimitivitySystems(<G> [, <F>]) O
This function returns the list of all imprimitivity systems of the
irreducible matrix group <G> over the field <F>. If <F> is not given,
`FieldOfMatrixGroup'(<G>) is used.
Each imprimitivity system is given by a record with the following entries:
\beginitems
`bases' & a list of the bases of the subspaces which form the imprimitivity system.
Note that a basis here is just a list of vectors, not a basis in the sense of
{\GAP} (see "ref:Basis"). Each basis is
in Hermite normal form so that the action of <G> on the imprimitivity
system can be determined by `OnSubspacesByCanonicalBasis'
`stab1' & the subgroup of <G> stabilizing the subspace <W> spanned by `bases[1]'
`min' & is true if the imprimitivity system is minimal, that is, if `stab1'
acts primitively on <W>, and false otherwise
\enditems
\beginexample
gap> G := IrreducibleSolubleMatrixGroup(6, 2, 1, 9);
<matrix group of size 54 with 4 generators>
gap> impr := ImprimitivitySystems(G, GF(2));;
gap> List(ImprimitivitySystems(G, GF(2)), r -> Length(r.bases));
[ 3, 3, 1 ]
gap> List(ImprimitivitySystems(G, GF(4)),
> r -> Action(G, r.bases, OnSubspacesByCanonicalBasis));
[ Group([ (), (1,2)(3,6)(4,5), (1,3,4)(2,5,6), (1,4,3)(2,6,5) ]),
Group([ (1,2,4)(3,5,6), (1,3)(2,5)(4,6), (), () ]),
Group([ (1,2,4)(3,5,6), (1,3)(2,5)(4,6), (1,2,4)(3,6,5), (1,4,2)(3,5,6) ]),
Group([ (1,2,4)(3,5,6), (1,3)(2,5)(4,6), (1,4,2)(3,5,6), (1,2,4)(3,6,5) ]),
Group([ (), (1,2), (), () ]), Group([ (1,2,3), (), (), () ]),
Group([ (), (2,3), (1,2,3), (1,3,2) ]),
Group([ (), (2,3), (1,2,3), (1,3,2) ]),
Group([ (), (2,3), (1,2,3), (1,3,2) ]), Group(()) ]
\endexample
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Section{Conjugating matrix groups into smaller fields}\null
\index{matrix group!conjugating into smaller fieldss}
\>TraceField(<G>) A
This is the field generated by the traces of the elements of the matrix group~<G>.
If <G> is an irreducible matrix group over a finite field then, by a theorem of Brauer, <G>
has a conjugate which is a matrix group over `TraceField'(<G>).
\beginexample
gap> repeat
> G := IrreducibleSolubleMatrixGroup(8, 2, 2, 7)^RandomInvertibleMat(8, GF(8));
> until FieldOfMatrixGroup(G) = GF(8);
gap> TraceField(G);
GF(2)
\endexample
\>ConjugatingMatTraceField(<G>) A
If bound, this is a matrix <x> over `FieldOfMatrixGroup'(<G>) such that
$<G>^<x>$ is a matrix group over `TraceField'(<G>). Currently, there are
only methods available for irreducible matrix groups <G> over finite fields
and certain trivial cases.
The method for absolutely irreducible groups is described in
\cite{GH}.
Note that, for matrix groups over infinite fields, such a matrix <x>
need not exist.
\beginexample
gap> repeat
> G := IrreducibleSolubleMatrixGroup(8, 2, 2, 7) ^
> RandomInvertibleMat(8, GF(8));
> until FieldOfMatrixGroup(G) = GF(8);
gap> FieldOfMatrixGroup(G^ConjugatingMatTraceField(G));
GF(2)
\endexample
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%E
%%