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

Basic Invariants of a Matrix Group

Subsections

Accessing a Group

The functions in this group provide access to basic information stored for a matrix group G.

G . i : GrpMat, RngIntElt -> GrpMatElt
The i-th defining generator for G. A negative subscript indicates that the inverse of the generator is to be created. G.0 is Identity(G).
Degree(G) : GrpMat -> RngIntElt
The degree of the matrix group G.
Generators(G) : GrpMat -> { GrpMatElt }
A set containing the defining generators for G.
NumberOfGenerators(G) : GrpMat -> RngIntElt
Ngens(G) : GrpMat -> RngIntElt
The number of defining generators for G.
CoefficientRing(G) : GrpMat -> Rng
BaseRing(G) : GrpMat -> Rng
The coefficient ring for the matrix group G.
RSpace(G) : GrpMat -> ModTupRng
Given a matrix group G of degree n defined over a ring R, return the space R^((n)), where the action is multiplication by elements of R, i.e. scalar action.
VectorSpace(G) : GrpMat -> ModTupFld
Given a matrix group G of degree n defined over a field K, return the space K^((n)), where the action is multiplication by elements of K, i.e. scalar action.
GModule(G) : GrpMat -> ModGrp
The natural R[G]-module for the matrix group G.
Generic(G) : GrpMat -> GrpMat
The generic group containing G, i.e. the general linear group in which G is naturally embedded.
Parent(G) : GrpMatElt -> GrpMat
The power structure for the group G (the set consisting of all matrix groups).

Group Order

Unless the order is already known, each of the functions in this family will create a base and strong generating set for the group if one does not already exist.

IsFinite(G) : GrpMat -> Bool, RngIntElt
Given a matrix group G, return whether G is finite together with the order of G if G is finite. The function rigorously proves its result (i.e., the result is not probable).
Order(G) : GrpMat -> RngIntElt
# G : GrpMat -> RngIntElt
The order of the group G as an integer. If the order is not currently known, a base and strong generating set will be constructed for G. If G has infinite order, an error ensues.
FactoredOrder(G) : GrpMat -> [ <RngIntElt, RngIntElt> ]
The order of the group G returned as a factored integer. The format is the same as for FactoredIndex. If the order of G is not known, it will be computed. If G has infinite order, an error ensues.

Example GrpMat_Order (H21E5)

> G := MatrixGroup<2,Integers()|[1,1,0,1],[0,1,-1,0]>;
> IsFinite(G);
false
> G24, e := ChangeRing(G, Integers(24));
> Order(G24);
9216
> G.-1*G.2;
[ 1  1]
[-1  0]
> (G.-1*G.2) @ e;
[ 1  1]
[23  0]
> (G24.2^2) @@ e;
[23  0]
[ 0 23]

Abstract Group Predicates

IsAbelian(G) : GrpMat -> BoolElt
True if the group G is abelian, false otherwise.
IsCyclic(G) : GrpMat -> BoolElt
True if the group G is cyclic, false otherwise.
IsElementaryAbelian(G) : GrpMat -> BoolElt
True if the group G is elementary abelian, false otherwise.
IsNilpotent(G) : GrpMat -> BoolElt
True if the group G is nilpotent, false otherwise.
IsSoluble(G) : GrpMat -> BoolElt
IsSolvable(G) : GrpMat -> BoolElt
True if the group G is soluble, false otherwise.
IsPerfect(G) : GrpMat -> BoolElt
True if the group G is perfect, false otherwise.
IsSimple(G) : GrpMat -> BoolElt
True if the group G is simple, false otherwise.

Example GrpMat_Order (H21E6)

We illustrate the functions of the last two section by applying them to a group of degree 6 over the field GF(9).

> F9<w> := GF(9);
> y := w^6;  z := w^2;
> J2A2 := MatrixGroup< 6, F9 | [y,1-y,z,0,0,0, 1-y,z,-1,0,0,0, z,-1,1+y,0,0,0, 
>                               0,0,0,z,1+y,y, 0,0,0,1+y,y,-1, 0,0,0,y,-1,1-y],
>                              [1+y,z,y,0,0,0, z,1+y,z,0,0,0, y,z,1+y,0,0,0,
>                               z,0,0,1-y,y,z, 0,z,0,y,1-y,y, 0,0,z,z,y,1-y],
>                              [0,0,0,y,0,0, 0,0,0,0,y,0, 0,0,0,0,0,y,
>                               y,0,0,0,0,0, 0,y,0,0,0,0, 0,0,y,0,0,0] >;
> J2A2;
MatrixGroup(6, GF(3, 2))
Generators:
[w^6 w^3 w^2   0   0   0]
[w^3 w^2   2   0   0   0]
[w^2   2   w   0   0   0]
[  0   0   0 w^2   w w^6]
[  0   0   0   w w^6   2]
[  0   0   0 w^6   2 w^3]


[  w w^2 w^6   0   0   0]
[w^2   w w^2   0   0   0]
[w^6 w^2   w   0   0   0]
[w^2   0   0 w^3 w^6 w^2]
[  0 w^2   0 w^6 w^3 w^6]
[  0   0 w^2 w^2 w^6 w^3]


[  0   0   0 w^6   0   0]
[  0   0   0   0 w^6   0]
[  0   0   0   0   0 w^6]
[w^6   0   0   0   0   0]
[  0 w^6   0   0   0   0]
[  0   0 w^6   0   0   0]
> Order(J2A2); 
1209600 
> FactoredOrder(J2A2);
[ <2, 8>, <3, 3>, <5, 2>, <7, 1> ]
> IsSoluble(J2A2);    
false
> IsPerfect(J2A2);
true
> IsSimple(J2A2);
false

Thus the group is non-soluble and perfect but it is not a simple group. We examine its Sylow2-subgroup.

> S2 := SylowSubgroup(J2A2, 2);
> IsAbelian(S2); 
false
> IsNilpotent(S2);
true
> IsSpecial(S2);
false

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