  
  [1X46 [33X[0;0YPc Groups[133X[101X
  
  [33X[0;0YPc  groups  are  polycyclic  groups that use the polycyclic presentation for
  element  arithmetic.  This  presentation  gives  them  a  [21Xnatural[121X  pcgs, the
  [2XFamilyPcgs[102X  ([14X46.1-1[114X)  with  respect to which pcgs operations as described in
  chapter [14X45[114X are particularly efficient.[133X
  
  [33X[0;0YLet  [22XG[122X be a polycyclic group with pcgs [22XP = (g_1, ..., g_n)[122X and corresponding
  relative  orders  [22X(r_1, ..., r_n)[122X. Recall that the [22Xr_i[122X are positive integers
  or  infinity  and let [22XI[122X be the set of indices [22Xi[122X with [22Xr_i[122X a positive integer.
  Then  [22XG[122X  has  a  finite  presentation  on  the generators [22Xg_1, ..., g_n[122X with
  relations of the following form.[133X
  
        [22Xg_i^{r_i}[122X          =   [22Xg_{i+1}^a(i,i,i+1) ⋯ g_n^a(i,i,n)[122X   
                               for [22X1 ≤ i ≤ n[122X and [22Xi ∈ I[122X             
        [22Xg_i^{-1} g_j g_i[122X   =   [22Xg_{i+1}^a(i,j,i+1) ⋯ g_n^a(i,j,n)[122X   
                               for [22X1 ≤ i < j ≤ n[122X                   
  
  [33X[0;0YFor infinite groups we need additionally[133X
  
        [22Xg_i^{-1} g_j^{-1} g_i[122X   =   [22Xg_{i+1}^b(i,j,i+1) ⋯ g_n^b(i,j,n)[122X     
                                    for [22X1 ≤ i < j ≤ n[122X and [22Xj not ∈ I[122X       
        [22Xg_i g_j g_i^{-1}[122X        =   [22Xg_{i+1}^c(i,j,i+1) ⋯ g_n^c(i,j,n)[122X     
                                    for [22X1 ≤ i < j ≤ n[122X and [22Xi not ∈ I[122X       
        [22Xg_i g_j^{-1} g_i^{-1}[122X   =   [22Xg_{i+1}^d(i,j,i+1) ⋯ g_n^d(i,j,n)[122X     
                                    for [22X1 ≤ i < j ≤ n[122X and [22Xi, j, not ∈ I[122X   
  
  [33X[0;0YHere  the  right hand sides are assumed to be words in normal form; that is,
  for  [22Xk  ∈  I[122X  we  have  for  all exponents [22X0 ≤ a(i,j,k), b(i,j,k), c(i,j,k),
  d(i,j,k) < r_k[122X.[133X
  
  [33X[0;0YA  finite presentation of this type is called a [13Xpower-conjugate presentation[113X
  and  a  [13Xpc  group[113X  is  a  polycyclic  group  defined  by  a  power-conjugate
  presentation.  Instead  of  conjugates  we  could  just  as  well  work with
  commutators  and  then  the  presentation would be called a [13Xpower-commutator[113X
  presentation. Both types of presentation are abbreviated as [13Xpc presentation[113X.
  Note that a pc presentation is a rewriting system.[133X
  
  [33X[0;0YClearly, whenever a group [22XG[122X with pcgs [22XP[122X is given, then we can write down the
  corresponding  pc presentation. On the other hand, one may just write down a
  presentation  on  [22Xn[122X  abstract generators [22Xg_1, ..., g_n[122X with relations of the
  above  form  and  define  a group [22XH[122X by this. Then the subgroups [22XC_i = ⟨ g_i,
  ..., g_n ⟩[122X of [22XH[122X form a subnormal series whose factors are cyclic or trivial.
  In  the  case  that  all  factors  are  non-trivial,  we  say  that  the  pc
  presentation of [22XH[122X is [13Xconfluent[113X. Note that [5XGAP[105X 4 can only work correctly with
  pc groups defined by a confluent pc presentation.[133X
  
  [33X[0;0YAt  the current state of implementations the [5XGAP[105X library contains methods to
  compute  with  finite polycyclic groups, while the [5XGAP[105X package [5XPolycyclic[105X by
  Bettina  Eick  and  Werner  Nickel  allows  also  computations with infinite
  polycyclic groups which are given by a pc-presentation.[133X
  
  [33X[0;0YAlgorithms  for pc groups use the methods for polycyclic groups described in
  chapter [14X45[114X.[133X
  
  
  [1X46.1 [33X[0;0YThe Family Pcgs[133X[101X
  
  [33X[0;0YClearly,  the  generators  of a power-conjugate presentation of a pc group [22XG[122X
  form a pcgs of the pc group. This pcgs is called the [13Xfamily pcgs[113X.[133X
  
  [1X46.1-1 FamilyPcgs[101X
  
  [33X[1;0Y[29X[2XFamilyPcgs[102X( [3Xgrp[103X ) [32X attribute[133X
  
  [33X[0;0Yreturns,  for  a pc group [3Xgrp[103X, a [21Xnatural[121X pcgs of some group [22XG[122X which contains
  [3Xgrp[103X and is maximal with this property.[133X
  
  [33X[0;0YThe  pcgs operations described in Chapter [14X45[114X are particularly efficient with
  respect to this pcgs.[133X
  
  [1X46.1-2 IsFamilyPcgs[101X
  
  [33X[1;0Y[29X[2XIsFamilyPcgs[102X( [3Xpcgs[103X ) [32X property[133X
  
  [33X[0;0Yspecifies whether the pcgs is a [2XFamilyPcgs[102X ([14X46.1-1[114X) of a pc group.[133X
  
  [1X46.1-3 InducedPcgsWrtFamilyPcgs[101X
  
  [33X[1;0Y[29X[2XInducedPcgsWrtFamilyPcgs[102X( [3Xgrp[103X ) [32X attribute[133X
  
  [33X[0;0Yreturns  the  pcgs  which  induced  with  respect  to  a  family  pcgs  (see
  [2XIsParentPcgsFamilyPcgs[102X ([14X46.1-4[114X) for further details).[133X
  
  [1X46.1-4 IsParentPcgsFamilyPcgs[101X
  
  [33X[1;0Y[29X[2XIsParentPcgsFamilyPcgs[102X( [3Xpcgs[103X ) [32X property[133X
  
  [33X[0;0YThis  property  indicates  that  the  pcgs [3Xpcgs[103X is induced with respect to a
  family pcgs.[133X
  
  [33X[0;0YThis  property  is  needed  to  distinguish  between  different  independent
  polycyclic  generating  sequences  which  a  pc  group  may  have, since the
  elementary  operations  for a non-family pcgs may not be as efficient as the
  elementary operations for the family pcgs.[133X
  
  [33X[0;0YThis  can  have a significant influence on the performance of algorithms for
  polycyclic  groups.  Many  algorithms  require a pcgs that corresponds to an
  elementary  abelian  series  (see [2XPcgsElementaryAbelianSeries[102X  ([14X45.11-2[114X)) or
  even  a  special  pcgs  (see [14X45.13[114X).  If  the  family  pcgs has the required
  properties,  it will be used for these purposes, if not [5XGAP[105X has to work with
  respect to a new pcgs which is [13Xnot[113X the family pcgs and thus takes longer for
  elementary calculations like [2XExponentsOfPcElement[102X ([14X45.5-3[114X).[133X
  
  [33X[0;0YTherefore,  if the family pcgs chosen for arithmetic is not of importance it
  might  be  worth to [13Xchange[113X to another, nicer, pcgs to speed up calculations.
  This  can be achieved, for example, by using the [2XRange[102X ([14X32.3-7[114X) value of the
  isomorphism obtained by [2XIsomorphismSpecialPcGroup[102X ([14X46.5-3[114X).[133X
  
  
  [1X46.2 [33X[0;0YElements of Pc Groups[133X[101X
  
  
  [1X46.2-1 [33X[0;0YComparison of elements of pc groups[133X[101X
  
  [33X[1;0Y[29X[2X\=[102X( [3Xpcword1[103X, [3Xpcword2[103X ) [32X method[133X
  [33X[1;0Y[29X[2X\<[102X( [3Xpcword1[103X, [3Xpcword2[103X ) [32X method[133X
  
  [33X[0;0YThe  elements of a pc group [22XG[122X are always represented as words in normal form
  with  respect to the family pcgs of [22XG[122X. Thus it is straightforward to compare
  elements  of  a  pc  group,  since  this  boils down to a mere comparison of
  exponent  vectors  with  respect to the family pcgs. In particular, the word
  problem is efficiently solvable in pc groups.[133X
  
  
  [1X46.2-2 [33X[0;0YArithmetic operations for elements of pc groups[133X[101X
  
  [33X[1;0Y[29X[2X\*[102X( [3Xpcword1[103X, [3Xpcword2[103X ) [32X method[133X
  [33X[1;0Y[29X[2XInverse[102X( [3Xpcword[103X ) [32X attribute[133X
  
  [33X[0;0YHowever,  multiplication  and  inversion  of elements in pc groups is not as
  straightforward  as  in  arbitrary  finitely presented groups where a simple
  concatenation or reversion of the corresponding words is sufficient (but one
  cannot solve the word problem).[133X
  
  [33X[0;0YTo   multiply  two  elements  in  a  pc  group,  we  first  concatenate  the
  corresponding words and then use an algorithm called [13Xcollection[113X to transform
  the new word into a word in normal form.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xg := FamilyPcgs( SmallGroup( 24, 12 ) );[127X[104X
    [4X[28XPcgs([ f1, f2, f3, f4 ])[128X[104X
    [4X[25Xgap>[125X [27Xg[4] * g[1];[127X[104X
    [4X[28Xf1*f3[128X[104X
    [4X[25Xgap>[125X [27X(g[2] * g[3])^-1;[127X[104X
    [4X[28Xf2^2*f3*f4[128X[104X
  [4X[32X[104X
  
  
  [1X46.3 [33X[0;0YPc Groups versus Fp Groups[133X[101X
  
  [33X[0;0YIn  theory  pc  groups  are  finitely  presented  groups.  In  practice  the
  arithmetic  in pc groups is different from the arithmetic in fp groups. Thus
  for  technical reasons the pc groups in [5XGAP[105X do not form a subcategory of the
  fp groups and hence the methods for fp groups cannot be applied to pc groups
  in general.[133X
  
  [1X46.3-1 IsPcGroup[101X
  
  [33X[1;0Y[29X[2XIsPcGroup[102X( [3XG[103X ) [32X Category[133X
  
  [33X[0;0Ytests whether [3XG[103X is a pc group.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XG := SmallGroup( 24, 12 );[127X[104X
    [4X[28X<pc group of size 24 with 4 generators>[128X[104X
    [4X[25Xgap>[125X [27XIsPcGroup( G );[127X[104X
    [4X[28Xtrue[128X[104X
    [4X[25Xgap>[125X [27XIsFpGroup( G );[127X[104X
    [4X[28Xfalse[128X[104X
  [4X[32X[104X
  
  [1X46.3-2 IsomorphismFpGroupByPcgs[101X
  
  [33X[1;0Y[29X[2XIsomorphismFpGroupByPcgs[102X( [3Xpcgs[103X, [3Xstr[103X ) [32X function[133X
  
  [33X[0;0YIt  is  possible  to  convert  a pc group to a fp group in [5XGAP[105X. The function
  [2XIsomorphismFpGroupByPcgs[102X  computes the power-commutator presentation defined
  by  [3Xpcgs[103X. The string [3Xstr[103X can be used to give a name to the generators of the
  fp group.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xp := FamilyPcgs( SmallGroup( 24, 12 ) );[127X[104X
    [4X[28XPcgs([ f1, f2, f3, f4 ])[128X[104X
    [4X[25Xgap>[125X [27Xiso := IsomorphismFpGroupByPcgs( p, "g" );[127X[104X
    [4X[28X[ f1, f2, f3, f4 ] -> [ g1, g2, g3, g4 ][128X[104X
    [4X[25Xgap>[125X [27XF := Image( iso );[127X[104X
    [4X[28X<fp group of size 24 on the generators [ g1, g2, g3, g4 ]>[128X[104X
    [4X[25Xgap>[125X [27XRelatorsOfFpGroup( F );[127X[104X
    [4X[28X[ g1^2, g2^-1*g1^-1*g2*g1*g2^-1, g3^-1*g1^-1*g3*g1*g4^-1*g3^-1,[128X[104X
    [4X[28X  g4^-1*g1^-1*g4*g1*g4^-1*g3^-1, g2^3, g3^-1*g2^-1*g3*g2*g4^-1*g3^-1,[128X[104X
    [4X[28X  g4^-1*g2^-1*g4*g2*g3^-1, g3^2, g4^-1*g3^-1*g4*g3, g4^2 ][128X[104X
  [4X[32X[104X
  
  
  [1X46.4 [33X[0;0YConstructing Pc Groups[133X[101X
  
  [33X[0;0YIf  necessary,  you can supply [5XGAP[105X with a pc presentation by hand. (Although
  this  is  the  most  tedious  way  to  input  a  pc group.) Note that the pc
  presentation has to be confluent in order to work with the pc group in [5XGAP[105X.[133X
  
  [33X[0;0Y(If  you  have  already  a  suitable  pcgs  in  another  representation, use
  [2XPcGroupWithPcgs[102X ([14X46.5-1[114X), see below.)[133X
  
  [33X[0;0YOne  way  is  to define a finitely presented group with a pc presentation in
  [5XGAP[105X  and  then convert this presentation into a pc group, see [2XPcGroupFpGroup[102X
  ([14X46.4-1[114X).  Note  that  this  does  not  work  for arbitrary presentations of
  polycyclic groups, see Chapter [14X47.14[114X for further information.[133X
  
  [33X[0;0YAnother  way  is  to create and manipulate a collector of a pc group by hand
  and  to  use it to define a pc group. This is the most technical way and has
  little  error  checking  and thus is intended mostly for experts who want to
  create  a  pc  presentation  in  a  particular  way.  [5XGAP[105X provides different
  collectors for different collecting strategies; at the moment, there are two
  collectors  to  choose  from: the single collector for finite pc groups (see
  [2XSingleCollector[102X   ([14X46.4-2[114X))  and  the  combinatorial  collector  for  finite
  [22Xp[122X-groups. See [Sim94] for further information on collecting strategies.[133X
  
  [33X[0;0YA  collector  is  initialized with an underlying free group and the relative
  orders of the pc series. Then one adds the right hand sides of the power and
  the commutator or conjugate relations one by one. Note that omitted relators
  are assumed to be trivial.[133X
  
  [33X[0;0YFor   performance   reasons   it   is   beneficial  to  enforce  a  [21Xsyllable[121X
  representation in the free group (see [14X37.6[114X).[133X
  
  [33X[0;0YNote  that  in  the  end,  the collector has to be converted to a group, see
  [2XGroupByRws[102X ([14X46.4-6[114X).[133X
  
  [33X[0;0YWith  these  methods  a  pc  group  with  arbitrary  defining  pcgs  can  be
  constructed. However, for almost all applications within [5XGAP[105X we need to have
  a   pc   group   whose   defining   pcgs   is   a   prime  order  pcgs,  see
  [2XIsomorphismRefinedPcGroup[102X ([14X46.4-8[114X) and [2XRefinedPcGroup[102X ([14X46.4-9[114X).[133X
  
  [1X46.4-1 PcGroupFpGroup[101X
  
  [33X[1;0Y[29X[2XPcGroupFpGroup[102X( [3XG[103X ) [32X function[133X
  
  [33X[0;0Ycreates  a pc group [3XP[103X from an fp group (see Chapter [14X47[114X) [3XG[103X whose presentation
  is  polycyclic.  The  resulting  group [3XP[103X has generators corresponding to the
  generators  of  [3XG[103X.  They are printed in the same way as generators of [3XG[103X, but
  they  lie  in  a  different  family.  If  the  pc  presentation  of [3XG[103X is not
  confluent, an error message occurs.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XF := FreeGroup(IsSyllableWordsFamily,"a","b","c","d");;[127X[104X
    [4X[25Xgap>[125X [27Xa := F.1;; b := F.2;; c := F.3;; d := F.4;;[127X[104X
    [4X[25Xgap>[125X [27Xrels := [a^2, b^3, c^2, d^2, Comm(b,a)/b, Comm(c,a)/d, Comm(d,a),[127X[104X
    [4X[25X>[125X [27X            Comm(c,b)/(c*d), Comm(d,b)/c, Comm(d,c)];[127X[104X
    [4X[28X[ a^2, b^3, c^2, d^2, b^-1*a^-1*b*a*b^-1, c^-1*a^-1*c*a*d^-1,[128X[104X
    [4X[28X  d^-1*a^-1*d*a, c^-1*b^-1*c*b*d^-1*c^-1, d^-1*b^-1*d*b*c^-1,[128X[104X
    [4X[28X  d^-1*c^-1*d*c ][128X[104X
    [4X[25Xgap>[125X [27XG := F / rels;[127X[104X
    [4X[28X<fp group on the generators [ a, b, c, d ]>[128X[104X
    [4X[25Xgap>[125X [27XH := PcGroupFpGroup( G );[127X[104X
    [4X[28X<pc group of size 24 with 4 generators>[128X[104X
  [4X[32X[104X
  
  [1X46.4-2 SingleCollector[101X
  
  [33X[1;0Y[29X[2XSingleCollector[102X( [3Xfgrp[103X                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  