  
  [1X1 [33X[0;0YIntroduction[133X[101X
  
  [33X[0;0YThis  package  contains  various  algorithms  related  to finite dimensional
  nilpotent  associative  algebras.  It  also  contains many group-theoretical
  functions  related to the Modular Isomorphism Problem. We first give a brief
  introduction  to  finite dimensional nilpotent algebras and then an overview
  of the main algorithms.[133X
  
  
  [1X1.1 [33X[0;0YAssociative algebras and nilpotency[133X[101X
  
  [33X[0;0YLet  [22XA[122X  be  an  associative algebra of dimension [22Xd[122X over a field [22XF[122X. Let [22X{b_1,
  ...,  b_d}[122X be a basis for [22XA[122X. We identify the element [22Xx_1 b_1 + ... + x_d b_d[122X
  of  [22XA[122X  with  the element [22X(x_1, ..., x_d)[122X of [22XF^d[122X. The multiplication of [22XA[122X can
  then be described by a [13Xstructure constants table[113X: a 3-dimensional array with
  entries [22Xa_i,j,k ∈ F[122X satisfying that[133X
  
  
  [24X[33X[0;6Yb_i b_j = \sum_{k=1}^d a_{i,j,k} b_k.[133X
  
  [124X
  
  [33X[0;0YAn  associative algebra [22XA[122X is [13Xnilpotent[113X if its [13Xpower series[113X terminates at the
  trivial ideal of [22XA[122X; that is[133X
  
  
  [24X[33X[0;6YA > A^2 > \ldots > A^c > A^{c+1} = \{0\}[133X
  
  [124X
  
  [33X[0;0Ywhere  [22XA^j[122X is the ideal of [22XA[122X generated by all products of length at least [22Xj[122X.
  The  length  [22Xc[122X  of  the  power  series is also called the [13Xclass[113X of [22XA[122X and the
  dimension  of [22XA/A^2[122X is the [13Xrank[113X of [22XA[122X. Note that [22XA[122X is generated by [22Xdim(A/A^2)[122X
  elements. Clearly, [22XA[122X does not contain a multiplicative identity.[133X
  
  [33X[0;0YFor  computational purposes we describe a nilpotent associative algebra by a
  weighted  basis  and  a description of the corresponding structure constants
  table.  A basis of a nilpotent associative algebra [22XA[122X is [13Xweighted[113X if there is
  a sequence of weights [22X(w_1, ..., w_d)[122X so that[133X
  
  
  [24X[33X[0;6YA^j = \langle b_i \mid w_i \geq j \rangle.[133X
  
  [124X
  
  [33X[0;0YNote that [22XA A^j = A^j+1[122X for every [22Xj[122X. Thus it is possible to choose all basis
  elements  of weight at least 2 so that [22Xb_i = b_k b_l[122X holds for some [22Xk[122X and [22Xl[122X,
  where  [22Xb_k[122X is of weight 1 and [22Xb_l[122X is of weight [22Xw_i-1[122X. This feature allows an
  effective  description  of [22XA[122X via a [13Xnilpotent structure constants table[113X. This
  contains  the structure constants [22Xa_i,j,k[122X for all [22Xi[122X with [22Xw_i = 1[122X and [22X1 ≤ j,k
  ≤ d[122X. For [22Xi[122X with [22Xw_i > 1[122X it either contains a description as [22Xb_i = b_k b_l[122X or
  the structure constants [22Xa_i,j,k[122X for [22X1 ≤ j,k ≤ d[122X. It may also contain both or
  some partial overlap of this information.[133X
  
  
  [1X1.2 [33X[0;0YIsomorphisms and Automorphisms[133X[101X
  
  [33X[0;0YLet  [22XA[122X  be  a finite dimensional nilpotent associative algebra over a finite
  field.  This  package  contains  an implementation of the methods in [Eic08]
  which  allow  the  determination  of  the  automorphism  group  [22XAut(A)[122X and a
  [13Xcanonical form[113X [22XCan(A)[122X.[133X
  
  [33X[0;0YThe  automorphism  group  is  given  by  generators  and is represented as a
  subgroup of [22XGL(dim(A), F)[122X. Also the order of [22XAut(A)[122X is available.[133X
  
  [33X[0;0YA canonical form [22XCan(A)[122X for [22XA[122X is a nilpotent structure constants table for [22XA[122X
  which is unique for the isomorphism type of [22XA[122X; that is, two algebras [22XA[122X and [22XB[122X
  are  isomorphic  if  and  only if [22XCan(A) = Can(B)[122X holds. Hence the canonical
  form can be used to solve the isomorphism problem.[133X
  
  
  [1X1.3 [33X[0;0YThe Modular Isomorphism Problem (MIP)[133X[101X
  
  [33X[0;0YThe  modular isomorphism problem asks whether an isomorphism of algebras [22Xℙ_p
  G  ≅  ℙ_p  H[122X implies an isomorphism of groups [22XG ≅ H[122X for two [22Xp[122X-groups [22XG[122X and [22XH[122X
  and  [22Xℙ_p[122X  the  field  with [22Xp[122X elements. This problem was open for a long time
  until  first  counterexamples  for  the  prime [22Xp=2[122X were found in [GMd22]. It
  remains open for odd primes and many other interesting classes of groups.[133X
  
  [33X[0;0YComputational   approaches   have  been  used  to  investigate  the  modular
  isomorphism  problem.  Based on an algorithm by Roggenkamp and Scott [RS93],
  Wursthorn   [Wur93]   described   an  algorithm  for  checking  the  modular
  isomorphism problem; that is, he described an algorithm for checking whether
  two modular group algebras [22Xℙ_p G[122X and [22Xℙ_p H[122X are isomorphic, where [22XG[122X and [22XH[122X are
  finite  [22Xp[122X-groups.  This algorithm has been implemented in C by Wursthorn and
  has  been  applied  to  the  groups  of order dividing [22X2^7[122X without finding a
  counterexample,  see [BKRW99]. The implementation of Wursthorn appears to be
  lost, but is in any case not publicly available.[133X
  
  [33X[0;0YThis  package  contains  an implementation of the new algorithm described in
  [Eic08]  for  checking isomorphism of modular group algebras. It is based on
  the  fact  that  the  Jacobson radical [22XJ(FG)[122X is nilpotent if [22XFG[122X is a modular
  group  algebra for [22XG[122X a finite [22Xp[122X-group and [22XFG[122X is isomorphic to [22XFH[122X if and only
  if the radicals [22XJ(FG)[122X and [22XJ(FH)[122X are isomorphic. Hence the automorphism group
  and  canonical form algorithm of this package apply and can be used to solve
  the  isomorphism problem for modular group algebras of finite [22Xp[122X-groups. Note
  that in this setting the Jacobson radical of the group algebra [22XFG[122X equals its
  augmentation ideal.[133X
  
  [33X[0;0YThe  methods of this package have been used to study the modular isomorphism
  problem  for  the groups of order dividing [22X3^6[122X and [22X2^8[122X ([Eic08]) and for the
  groups  of  order  [22X2^9[122X  ([EK11]).  It was later used to study also groups of
  order [22X3^7[122X and [22X5^6[122X ([MM22]).[133X
  
  [33X[0;0YA  property  of  a  group  [22XG[122X  is  called  [13X[22XF[122X-invariant[113X  if  an isomorphism of
  [22XF[122X-algebras  [22XFG  ≅  FH[122X implies the same property for [22XH[122X. In the context of the
  Modular Isomorphism Problem, if [22XG[122X is a finite [22Xp[122X-group, then an [22Xℙ_p[122X-invariant
  is  simply  called [13Xinvariant[113X. Many invariants of [22XG[122X are known and the package
  provides  functions  for  them,  as  well  as programs which make it easy to
  compare all the implemented invariants quickly for a given list of groups.[133X
  
  [33X[0;0YIt  also  remains  open  whether  replacing  the  field  [22Xℙ_p[122X  in the Modular
  Isomorphism  Problem with a bigger field of characteristic [22Xp[122X will change the
  outcome  of  the  problem  for  a given pair of groups. The package includes
  several  functions  which  make  it possible to investigate this question by
  applying the algorithm for the same groups varying the field.[133X
  
  
  [1X1.4 [33X[0;0YA nilpotent quotient algorithm[133X[101X
  
  [33X[0;0YGiven  a finitely presented associative algebra [22XA[122X over an arbitrary field [22XF[122X,
  this  package  contains  an  algorithm  to  determine  a nilpotent structure
  constants  table  for  the class-[22Xc[122X nilpotent quotient of [22XA[122X, i.e. the algebra
  [22XA/A^c+1[122X. See [Eic11] for details on the underlying algorithm.[133X
  
  
  [1X1.5 [33X[0;0YKurosh Algebras[133X[101X
  
  [33X[0;0YLet  [22XF(d,F)[122X  denote  the free non-unital associative algebra on [22Xd[122X generators
  over the field [22XF[122X. Then[133X
  
  
  [24X[33X[0;6YA(d,n,F) = F(d,F) / \langle \langle w^n \mid w \in F(d,F) \rangle \rangle[133X
  
  [124X
  
  [33X[0;0Yis the [13XKurosh Algebra[113X on [22Xd[122X generators of exponent [22Xn[122X over the field [22XF[122X. Kurosh
  Algebras  can  be  considered  as  an algebra-theoretic analogue to Burnside
  groups.[133X
  
  [33X[0;0YThis package contains a method to determine [22XA(d,n,F)[122X for given [22Xd[122X, [22Xn[122X, [22XF[122X. This
  can  also  be  used  to  determine  [22XA(d,n,F)[122X  for  all  fields  of  a  given
  characteristic. We refer to [Eic11] for details on the algorithms.[133X
  
  [33X[0;0YThis  package  also  contains  a  database of Kurosh Algebras that have been
  determined with the methods of this package.[133X
  
