  
  [1X1 [33X[0;0YIntroduction[133X[101X
  
  [33X[0;0YThis  chapter serves as an introduction and showcases some highlights of the
  package [5XWPE[105X.[133X
  
  
  [1X1.1 [33X[0;0YOverview[133X[101X
  
  [33X[0;0YThe  package  [5XWPE[105X  ([13XW[113Xreath  [13XP[113Xroduct [13XE[113Xlements). provides methods to work with
  elements  of  finite  groups  which  are  wreath products. It contributes to
  [13Xintuitive research[113X and [13Xefficient computing[113X in wreath products of groups.[133X
  
  [33X[0;0YIt  allows  access to a representation of wreath products, which we refer to
  as  the  [13Xgeneric  representation[113X,  that  is  more intuitive to the User when
  working  with  wreath  products  of groups. Access is as straight-forward as
  using  the  provided  command  [10XIsomorphismWreathProduct[110X  on a wreath product
  created by the native [5XGAP[105X command [10XWreathProduct[110X, see [14X1.2[114X for an example.[133X
  
  [33X[0;0YAdditionally, this representation may have computational benefits over other
  representations.  Note, that just by loading the package [5XWPE[105X and without any
  additional  setup,  all  optimizations are applied to computations in wreath
  products  created by the native [5XGAP[105X command [10XWreathProduct[110X, by exploiting the
  generic  representation  under  the  hood  when  appropiate.  See  [14X1.3[114X for a
  highlight showcase of such computational problems.[133X
  
  [33X[0;0YIn   particular,   this  package  provides  efficient  methods  for  finding
  [13Xconjugating   elements[113X,   [13Xconjugacy  classes[113X,  and  [13Xcentralisers[113X  in  wreath
  products.  The  implementations  are  based  on  an accompanying publication
  [BNRW22],  that  generalizes  results  from  [Spe32] and [Ore42] on monomial
  groups, wreath products whose top group is the full symmetric group.[133X
  
  [33X[0;0YFor example, the computation of all [22X886640[122X conjugacy classses of elements of
  the  wreath  product  [22XW  =  M_22 ≀ A_9[122X takes about 12 seconds with [5XWPE[105X. With
  native [5XGAP[105X this computation is not feasible.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XLoadPackage("WPE");;[127X[104X
    [4X[25Xgap>[125X [27XK := MathieuGroup(22);;[127X[104X
    [4X[25Xgap>[125X [27XH := AlternatingGroup(9);;[127X[104X
    [4X[25Xgap>[125X [27XG := WreathProduct(K, H);;[127X[104X
    [4X[25Xgap>[125X [27XC := ConjugacyClasses(G);;[127X[104X
    [4X[25Xgap>[125X [27XSize(C);[127X[104X
    [4X[28X886640[128X[104X
  [4X[32X[104X
  
  
  [1X1.2 [33X[0;0YIntuitive Research[133X[101X
  
  [33X[0;0YOne  of  the two main goals of the package is to provide the User with tools
  to conduct [13Xintuitive research[113X in wreath products of groups on the computer.[133X
  
  [33X[0;0YIn  this section we present an example session which demonstrates how we can
  access  the  generic  representation  of  a  wreath product. As noted in the
  introduction,  no  additional setup is required if one wants to benefit from
  the  optimizations for computations in wreath products (see [14X1.3[114X for examples
  on this).[133X
  
  [33X[0;0YFirst  we  construct  the  wreath product [22XG = Alt(5) ≀ Sym(7)[122X (see [14X2.1[114X). For
  this we use the native [5XGAP[105X command [2XWreathProduct[102X ([14XReference: WreathProduct[114X).
  The  resulting group is embedded into a symmetric group on [22X5 ⋅ 7 = 35[122X points
  via the imprimitive action of the wreath product. The size of the group is[133X
  
  
  [24X[33X[0;6Y| G | = |Alt(5)|^7 ⋅ |Sym(7)| = 60^7 ⋅ 5040 = 14108774400000000 .[133X[124X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XK := AlternatingGroup(5);;[127X[104X
    [4X[25Xgap>[125X [27XH := SymmetricGroup(7);;[127X[104X
    [4X[25Xgap>[125X [27XG := WreathProduct(K, H);[127X[104X
    [4X[28X<permutation group of size 14108774400000000 with 4 generators>[128X[104X
  [4X[32X[104X
  
  [33X[0;0YNow  we  construct  an  isomorphism  to  a  wreath  product given in generic
  representation  that  is  provided  in  [5XWPE[105X.  For  this, we need to load the
  package [5XWPE[105X.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XLoadPackage("WPE");;[127X[104X
    [4X[25Xgap>[125X [27Xiso := IsomorphismWreathProduct(G);;[127X[104X
    [4X[25Xgap>[125X [27XW := Image(iso);[127X[104X
    [4X[28X<group of size 14108774400000000 with 4 generators>[128X[104X
  [4X[32X[104X
  
  [33X[0;0YLet  us  compare how [5XGAP[105X displays elements of [22XG[122X and [22XW[122X respectively. Elements
  of  [22XG[122X  are represented as permutations. In this representation it is hard to
  identify the base and top components of this element (see [14X2.1[114X).[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xg := (1,13,3,14,4,12,2,15,5,11)[127X[104X
    [4X[25X>[125X [27X        (6,31,21,7,35,25,9,33,23,8,34,24,10,32,22)[127X[104X
    [4X[25X>[125X [27X        (18,19,20);;[127X[104X
    [4X[25Xgap>[125X [27Xg in G;[127X[104X
    [4X[28Xtrue[128X[104X
  [4X[32X[104X
  
  [33X[0;0YElements  of  [22XW[122X  however  are represented as generic wreath product elements
  (see  [14X2.1[114X).  This  allows  us  to read off the base and top component of the
  element  easily  by either printing or displaying the element. Otherwise, by
  default  the  element  is viewed in compressed form (see [14X4.4[114X). This printing
  behaviour is similar to the behaviour of matrices in [5XGAP[105X.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xw := g ^ iso;[127X[104X
    [4X[28X< wreath product element with 7 base components >[128X[104X
    [4X[25Xgap>[125X [27XPrint(w);[127X[104X
    [4X[28X[ (1,3,4,2,5), (2,5)(3,4), (), (3,4,5), (1,2)(4,5), (), (), (1,3)(2,7,5) ][128X[104X
    [4X[25Xgap>[125X [27XDisplay(w);[127X[104X
    [4X[28X       1           2       3      4         5       6   7       top     [128X[104X
    [4X[28X( (1,3,4,2,5), (2,5)(3,4), (), (3,4,5), (1,2)(4,5), (), (); (1,3)(2,7,5) )[128X[104X
  [4X[32X[104X
  
  [33X[0;0YFurthermore,  we  can  display  and  access  each  component easily with the
  provided commands.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XBaseComponentOfWreathProductElement(w, 2);[127X[104X
    [4X[28X(2,5)(3,4)[128X[104X
    [4X[25Xgap>[125X [27XTopComponentOfWreathProductElement(w);[127X[104X
    [4X[28X(1,3)(2,7,5)[128X[104X
  [4X[32X[104X
  
  
  [1X1.2-1 [33X[0;0YThe Power of Component-wise Representation[133X[101X
  
  [33X[0;0YThis  component-wise  representation  is  often  exactly  the  one  that  we
  encounter  in  research  on wreath products. Thus having it available on the
  computer  greatly  sharpens  our  intuition.  We  can  make very non-trivial
  statements by looking at the components of such an element, and for the case
  of the element [22Xw[122X even without a computer.[133X
  
  [33X[0;0YLet  us  start  off  with  an  easy  observation. Just by looking at the top
  component  of  [22Xw[122X, i.e. [22X(1,3)(2,7,5)[122X, we can see that the smallest power of [22Xw[122X
  that lies in the base group of [22XW[122X has exponent [22X6[122X, since it has to be equal to
  the order of the top component.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xm := Order(w);[127X[104X
    [4X[28X30[128X[104X
    [4X[25Xgap>[125X [27XFirst( [1 .. m], k -> IsOne(TopComponentOfWreathProductElement(w ^ k)) );[127X[104X
    [4X[28X6[128X[104X
    [4X[25Xgap>[125X [27XDisplay(w ^ 6);[127X[104X
    [4X[28X       1            2            3       4        5       6        7       top[128X[104X
    [4X[28X( (1,2,3,5,4), (1,4,5,2,3), (1,2,3,5,4), (), (1,3,2,5,4), (), (1,3,2,5,4); () )[128X[104X
  [4X[32X[104X
  
  [33X[0;0YNow let us be more advanced. Just by looking at the element [22Xw[122X, we can deduce
  structural information on the conjugacy class [22Xw^W[122X. All elements conjugate to
  [22Xw[122X  in  [22XW  =  K  ≀ H[122X must have at least one trivial base component, since the
  territory  of  [22Xw[122X  (see  [14X2.2[114X)  contains exactly six elements, whereas the top
  group acts on seven points.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XLength(Territory(w));[127X[104X
    [4X[28X6[128X[104X
    [4X[25Xgap>[125X [27XNrMovedPoints(H);[127X[104X
    [4X[28X7[128X[104X
  [4X[32X[104X
  
  [33X[0;0YOn  the  other  hand, all such elements must have at least three non-trivial
  base  components,  since  the  wreath  cycle  decomposition  of  [22Xw[122X (see [14X2.2[114X)
  contains exactly three wreath cycles with non-trivial yades (see [14X2.3[114X).[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XNumber(WreathCycleDecomposition(w), c -> not IsOne(Yade(c)));[127X[104X
    [4X[28X3[128X[104X
  [4X[32X[104X
  
  [33X[0;0YMoreover,  for  each  integer  [22Xk[122X  with  [22X3  ≤ k ≤ 6[122X there exists at least one
  conjugate element with exactly [22Xk[122X non-trivial base components.[133X
  
  
  [1X1.3 [33X[0;0YEfficient Computing[133X[101X
  
  [33X[0;0YOne of the two main goals of the package is to empower the User to carry out
  [13Xefficient computations[113X in wreath products of groups on the computer.[133X
  
  [33X[0;0YIn  this  section  we present a highlight showcase of computational problems
  that  benefit from the generic representation. As noted in the introduction,
  no   additional  setup  is  required  if  one  wants  to  benefit  from  the
  optimizations  for  computations  in  wreath  products. We simply create the
  wreath  products  via  the  native  [5XGAP[105X  command  [2XWreathProduct[102X  ([14XReference:
  WreathProduct[114X), and the generic representation provided by [5XWPE[105X is used under
  the hood whenever appropiate.[133X
  
  [33X[0;0YWe  only  give  a  summary  of  some  computational problems that now become
  approachable  on the computer, and include examples for such computations in
  Chapter  [14X3[114X  containing  extensive  [5XGAP[105X  sessions that can be followed like a
  tutorial.[133X
  
  [33X[0;0YIn the following let [22XG = K ≀ H[122X be a wreath product of finite groups, where [22XH
  ≤ Sym(m)[122X. Further let [22Xx, y ∈ P = K ≀ Sym(m)[122X be elements of the parent wreath
  product [22XP[122X which is given in the same representation as [22XG[122X.[133X
  
  [8X Conjugacy Problem [108X
        [33X[0;6YSolve  the  conjugacy  problem for [22Xx[122X and [22Xy[122X over [22XG[122X, i.e. decide whether
        there  exists  [22Xc  ∈  G[122X with [22Xx^c = y[122X and if it does, explicitly compute
        such a conjugating element [22Xc[122X.[133X
  
  [8X Conjugacy Classes [108X
        [33X[0;6YEnumerate  representatives  of all conjugacy classes of elements of [22XG[122X,
        i.e.  return  elements [22Xg_1, dots, g_ℓ[122X such that [22Xg_1^G, dots, g_ℓ^G[122X are
        the conjugacy classes of [22XG[122X.[133X
  
  [8X Centralizer [108X
        [33X[0;6YCompute  the  centralizer  of [22Xx[122X in [22XG[122X, i.e. compute a generating set of
        [22XC_G(x)[122X.[133X
  
  [8X Cycle Index Polynomial[108X
        [33X[0;6YCompute  the  cycle  index  polynomial of [22XG[122X either for the imprimitive
        action or the product action.[133X
  
