Eick and LeedhamGreen ELG08 defined for a prime p and a fixed coclass r infinite coclass sequences. These sequences consist of finite pgroups of coclass r. For each infinite coclass sequence there exists a consistent pppresentation (see Section Background on (polycyclic) parametrised presentations) such that if we choose a natural number for the parameter and possibly reduce the exponents modulo the relative orders, we obtain a consistent polycyclic presentation for a group in the sequence; and for each group in the sequence there exists a natural number such that using this as a value for the parameter, we obtain a polycyclic presentation for the group.
We use these consistent pppresentations to compute parametrised groups, which we call ppowerpolypcpgroups. Furthermore, methods for these are presented. Without specifying the parameter we compute certain properties and using the ppowerpolypcpgroups we do this for all groups they represent at once.
The ppowerpolypcpgroups have a consistent pppresentation with generators g_{1}, …, g_{n}, t_{1}, …t_{d} and c_{1}, …, c_{m}, for some nonnegative integers n, d and m, and relations of the form, where rel[i,j] stores the right hand sides of the relations (see Section Background on (polycyclic) parametrised presentations for more information on pppresentations),

In this section we present the wellknown example of quaternion groups Q_{2x+3}. They have a pppresentation of the following form:

To obtain ppowerpolypcpgroups:
PPPPcpGroups(
rel,
n,
d,
m,
expo,
expo_vec,
prime,
cc,
name ) F
PPPPcpGroups(
rec ) F
returns the ppowerpolypcpgroups described by the consistent pppresentation with generators g_{1}, …, g_{n}, t_{1}, …t_{d}, c_{1}, …, c_{m}, for some nonnegative integers n, d and m, and relations of the form

The input consists of the following:
rel
n
d
m
expo
expo_vec
prime
cc
name
rec
The pppresentation is described at the beginning of Chapter ppowerpolypcpgroup. Note that the consistency of the presentation is checked and that the presentation has to be consistent.
gap> ParPresGlobalVar_2_1[1]; rec( rel := [ [ [ [ 1, 0 ] ] ], [ [ [ 2, 1 ], [ 3, 1+2*2^x ] ], [ [ 3, 1 ] ] ], [ [ [ 3, 1+2*2^x ] ], [ [ 3, 1 ] ], [ [ 3, 0 ] ] ] ], expo := 2*2^x, n := 2, d := 1, m := 0, prime := 2, cc := 1, expo_vec := [ ], name := "D" ) gap> G := PPPPcpGroups( ParPresGlobalVar_2_1[1] ); < PPowerPolypcpgroups with 3 generators with relative orders [ 2,2,2*2^x ] >
PPPPcpGroupsElement(
G,
word ) F
constructs an element in ppowerpolypcpgroups, where G is a ppowerpolypcpgroup (thus representing an infinite coclass sequence through a pppresentation) with generators g_{1}, …, g_{n}, t_{1}, …, t_{d}, c_{1}, …, c_{m} and word is a list of tuples, where the first entry i in the tuple gives the index of the generator (if i ≤ n, then it represents generator g_{i}, if n < i ≤ d, then it represents generator t_{i−n} and otherwise it represents generator c_{i−n−d}) and the second entry of the tuple is the corresponding exponent. Note that the exponents of the g_{i}'s must be integers, while all other exponents can be integers or lists, representing an element depending on the parameter.
gap> G := PPPPcpGroups( ParPresGlobalVar_2_1[3] ); < PPowerPoly pcpgroups with orders [ 2,2,2*2^x ] > gap> g1 := PPPPcpGroupsElement( G , [[1,1]] ); g1 gap> g := PPPPcpGroupsElement( G , [[1,1],[2,1],[3,1]] ); g1*g2*t1 gap> h := PPPPcpGroupsElement( G , [[1,1],[2,1],[3,G!.expo1]] ); g1*g2*t1^(1+2*2^x)
The typical operations for group elements can be carried out for
ppowerpolypcpgroup elements, like *
, /
, Inverse, One, equality and
ShallowCopy.
CollectPPPPcp(
a ) F
collects the ppowerpolypcpgroup element a so that after reducing to integers for every specific value for the parameter x, the element is collected in the polycyclic group, represented by x in the underlying pppresentation.
Note that the global
variable COLLECT_PPOWERPOLY_PCP
determines whether every element will be
collected immediately, when created, or not, see
COLLECT_PPOWERPOLY_PCP.
For ppowerpolypcpgroups:
GeneratorsOfGroup(
G )
returns a set of generators for the ppowerpolypcpgroups G.
One(
G )
obtains the identity element of the ppowerpolypcpgroups G.
IsConsistentPPPPcp(
G ) F
IsConsistentPPPPcp(
ParPres ) F
checks if the underlying pppresentation of the ppowerpolypcpgroups G is consistent or if the pppresentation ParPres is consistent.
GetPcGroupPPowerPoly(
ParPres,
n ) F
GetPcGroupPPowerPoly(
G,
n ) F
takes the pppresentation given by the record ParPres as in PPPPcpGroups or the ppowerpolypcpgroups G and takes n, a nonnegative integer, as a value for the parameter to obtain a pcpresentation for the corresponding finite pgroup.
GetPcpGroupPPowerPoly(
ParPres,
n ) F
GetPcpGroupPPowerPoly(
G,
n ) F
takes pppresentation given by the record ParPres as in PPPPcpGroups or the ppowerpolypcpgroups G and takes n, a nonnegative integer, as the parameter to obtain a pcppresentation for the corresponding finite pgroup, for further information we refer to the polycyclic package.
GAPInputPPPPcpGroups(
file,
G ) F
GAPInputPPPPcpGroups(
file,
ParPres ) F
prints the ppowerpolypcpgroups G defined by ParPres in the file file as a record that could be used as input to PPPPcpGroups to create ppowerpolypcpgroups.
GAPInputPPPPcpGroupsAppend(
file,
G ) F
GAPInputPPPPcpGroupsAppend(
file,
ParPres ) F
appends the pppresentation of the ppowerpolypcpgroups G defined by ParPres to the file file as a record that could be used as input to PPPPcpGroups to create ppowerpolypcpgroups.
LatexInputPPPPcpGroups(
file,
G ) F
LatexInputPPPPcpGroups(
file,
ParPres ) F
prints the pppresentation of G as given by ParPres in latexcode to the file file. Note that only nontrivial relations are printed.
LatexInputPPPPcpGroupsAppend(
file,
G ) F
LatexInputPPPPcpGroupsAppend(
file,
ParPres ) F
appends the pppresentation of G as given by ParPres in latexcode to the file file. Note that only nontrivial relations are appended.
LatexInputPPPPcpGroupsAllAppend(
file,
G ) F
LatexInputPPPPcpGroupsAllAppend(
file,
ParPres ) F
appends the pppresentation of G as given by ParPres in latexcode to the file file. Note that all relations are appended.
The following info classes are available:
InfoConsistencyPPPPcp V
is an InfoClass with the following levels.
level 1
level 2
the default value is 1.
InfoCollectingPPPPcp V
is an InfoClass with the following levels.
level 1
the default value is 0.
The following global variables are available with default value:
COLLECT_PPOWERPOLY_PCP V
is a global variable determining if every ppowerpolypcpgroup element is collected, when created, the default value is true.
[Up] [Previous] [Next] [Index]
SymbCompCC manual