  
  [1X1 [33X[0;0YPreface[133X[101X
  
  [33X[0;0YThe  determination  of  all  groups  of a given order up to isomorphism is a
  central  problem  in  finite  group  theory.  It was initiated in 1854 by A.
  Cayley, who constructed the groups of order 4 and 6.[133X
  
  [33X[0;0YA large number of publications followed Cayley's work. For example, Hall and
  Senior  determined  the  groups  of order [22X2^n[122X for [22Xn ≤ 6[122X, Neubüser listed the
  groups  of  order  at most 100 except 64 and 96 and Laue added the groups of
  order  96,  see  [HS64], [Neu67] and [Lau82]. These determinations partially
  relied on the help of computers, but a general algorithm to construct groups
  had  not  been  used. The resulting catalogue of groups of order at most 100
  was available in GAP 3.[133X
  
  [33X[0;0YThen  Newman  and  O'Brien  introduced  an  algorithm to determine groups of
  prime-power  order,  see  [O'B90].  An  implementation  of  this  method  is
  available  in the ANUPQ package of GAP. This method has been used to compute
  the groups of order [22X2^n[122X for [22Xn ≤ 8[122X and the groups of order [22X3^n[122X for [22Xn ≤ 6[122X, see
  [O'B88],  and the resulting groups are available in GAP. Moreover, the large
  number  of  groups  of order [22X2^8[122X shows that algorithmic methods are the only
  sensible way for group determinations in this range.[133X
  
  [33X[0;0YIn   this  package  we  introduce  practical  methods  to  determine  up  to
  isomorphism  all  groups  of  a given order. The algorithms are described in
  [BE99a].  These methods have been used to construct the non-nilpotent groups
  of  order  at  most  1000, see [BE99b]. The resulting catalogue of groups is
  available within the Small Groups library of GAP 4.[133X
  
  [33X[0;0YOur  methods are not limited to groups of order at most 1000 and thus may be
  used to determine all or certain groups of higher order as well. However, it
  is  not easy to say for which orders our methods are still practical and for
  which  not. As a rule of thumb one can say that the number of primes and the
  size  of  the prime-powers contained in the factorisation of the given order
  determine  the practicability of the algorithm; that is, the more primes are
  contained in the factorisation the more difficult the determination gets.[133X
  
  [33X[0;0YAs  an  example, the construction of all non-nilpotent groups of order [22X192 =
  2^6 ⋅ 3[122X takes 17 minutes on a 400 MHz PC. This is a medium-sized application
  of our methods. However, the construction of the groups of order [22X768 = 2^8 ⋅
  3[122X takes already rather long (a few days) and can be considered as a limit of
  our  methods. On the other hand, the groups of order [22X5425 = 5^2 ⋅ 7 ⋅ 31[122X can
  be  determined  in  5  sec.  Moreover,  if  the  determination  of groups is
  restricted  to  groups with certain properties, then this might increase the
  efficiency of the construction process considerably. We include some example
  applications of our methods to illustrate this at the end of the manual.[133X
  
  [33X[0;0YFinally,  we  mention that the correctness of our algorithms is very hard to
  check for a user; in particular, since there are no other algorithms for the
  same  purpose  available,  it  might be difficult to verify that our methods
  compute  all  desired  groups. Thus we note here that methods implemented in
  this  package  have  been  used  to  compute large parts of the Small Groups
  library  and  this, in turn, has been checked by the authors as described in
  [BE99a] and [BE99b].[133X
  
  [33X[0;0YComments  and suggestions on this package are very welcome. Please send them
  to[133X
  
  [33X[0;0Ybeick@tu-bs.de or hubesche@tu-bs.de.[133X
  
  [33X[0;0YBug reports should also be e-mailed to either of these addresses.[133X
  
