StandardPresentation( F, p, ... )
StandardPresentation( F, G, ... )
Let F be a finitely presented group. Then StandardPresentation
returns the standard presentation for the desired p-quotient of F as
an ag group.
Let H be the p-quotient whose standard presentation is computed. A
generating set for a supplement to the inner automorphism group of H is
also returned, stored as the component H.automorphisms
. Each
generator is described by its action on each of the generators of the
standard presentation of H.
A finitely-presented group F must be supplied as input. Usually, the user will also supply a prime p and the program will compute the standard presentation for the desired p-quotient of F.
Alternatively, a user may supply an ag group G which is the class 1
p-quotient of F. If this is so, a list of automorphisms of G must
be bound to the record component G.automorphisms
such that
G.automorphisms
together with the inner automorphisms of G generate
the automorphism group of G. The presentation for G can be
constructed by an initial call to Pq (see Pq).
Of course, G need not be the class 1 p-quotient of F. However,
G.automorphisms
must contain a description of the automorphism group
of G and this is most readily available when G is an elementary
abelian group. Where the necessary information is available for a
p-quotient of higher class, one can apply the standard presentation
algorithm from that class onwards.
The following parameters or parameter pairs are supported.
G.automorphisms
are a PAG generating
sequence for the automorphism group of G supplied in reverse
order.
true
is returned.
StandardPresentation
stores intermediate results in temporary
files; the location of these files is determined by the value
selected by TmpName
. If your default temporary directory does not
have enough free disk space, you can supply an alternative path
dir. In this case StandardPresentation
stores its intermediate
results in a temporary subdirectory of dir. Alternatively, you can
globally set the variable ANUPQtmpDir
, for instance in your
".gaprc" file, to point to a suitable location.
Alternatively, you can pass StandardPresentation
a record as a
parameter, which contains as entries some (or all) of the above
mentioned. Those parameters which do not occur in the record are set to
their default values.
We illustrate the method with the following examples.
gap> f2 := FreeGroup( "a", "b" );; gap> g := f2 / [f2.1^25, Comm(Comm(f2.2,f2.1), f2.1), f2.2^5]; Group( a, b ) gap> StandardPresentation( g, 5, "ClassBound", 10 ); Group( G.1, G.2, G.3, G.4, G.5, G.6, G.7, G.8, G.9, G.10, G.11, G.12, G.13, G.14, G.15, G.16, G.17, G.18, G.19, G.20, G.21, G.22, G.23, G.24, G.25, G.26 ) gap> f2 := FreeGroup( "a", "b" );; gap> g := f2 / [ f2.1^625, > Comm(Comm(Comm(Comm(f2.2,f2.1),f2.1),f2.1),f2.1)/Comm(f2.2,f2.1)^5, > Comm(Comm(f2.2,f2.1),f2.2), f2.2^625 ];; gap> StandardPresentation( g, 5, "ClassBound", 15, "Metabelian" ); Group( G.1, G.2, G.3, G.4, G.5, G.6, G.7, G.8, G.9, G.10, G.11, G.12, G.13, G.14, G.15, G.16, G.17, G.18, G.19, G.20 ) gap> f4 := FreeGroup( "a", "b", "c", "d" );; gap> g4 := f4 / [ f4.2^4, f4.2^2 / Comm(Comm (f4.2, f4.1), f4.1), > f4.4^16, f4.1^16 / (f4.3 * f4.4), > f4.2^8 / (f4.4 * f4.3^4) ]; Group( a, b, c, d ) gap> g := Pq( g4, "Prime", 2, "ClassBound", 1 ); Group( G.1, G.2 ) gap> g.automorphisms := [];; gap> GroupHomomorphismByImages(g,g,[g.1,g.2],[g.2,g.1*g.2]);; gap> Add( g.automorphisms, last ); gap> GroupHomomorphismByImages(g,g,[g.1,g.2],[g.2,g.1]);; gap> Add( g.automorphisms, last ); gap> StandardPresentation(g4,g,"ClassBound",14,"AgAutomorphisms"); Group( G.1, G.2, G.3, G.4, G.5, G.6, G.7, G.8, G.9, G.10, G.11, G.12, G.13, G.14, G.15, G.16, G.17, G.18, G.19, G.20, G.21, G.22, G.23, G.24, G.25, G.26, G.27, G.28, G.29, G.30, G.31, G.32, G.33, G.34, G.35, G.36, G.37, G.38, G.39, G.40, G.41, G.42, G.43, G.44, G.45, G.46, G.47, G.48, G.49, G.50, G.51, G.52, G.53 )
This function requires the package "anupq" (see RequirePackage).
GAP 3.4.4