The Small Groups Library
Overview The Small Groups library gives access to all groups of certain small orders. The groups are sorted by their orders and they are listed up to isomorphism; that is, for each of the available orders a complete and irredundant list of isomorphism type representatives of groups is given. Currently, the library contains the following groups:

those of order at most 2000 except 1024 (423\;164\;062 groups); those of cubefree order at most 50 000 (395 \; 703 groups); those of order p^7 for the primes p = 3,5,7,11 (907 \; 489 groups); those of order p^n for n \leq 6 and all primes p; those of order q^n \cdot p for q^n dividing 2^8, 3^6, 5^5 or 7^4 and all primes p with p \neq q; those of squarefree order; those whose order factorises into at most 3 primes.

The first three items in this list cover an explicit range of orders; the last four provide access to infinite families of groups having orders of certain types.

The library also has an identification function: it returns the library number of a given group. This function determines library numbers using invariants of groups. The function is available for all orders in the library except for the orders 512 and 1536 and except for the orders p^5, p^6 and p^7 above 2000.

The library is organised in 11 layers. Each layer contains the groups of certain orders and their corresponding group identification routines. It is possible to install the first n layers of the group library and the first m layers of the group identification for each 1 \leq m \leq n \leq 11. This might be useful to save disk space. Which orders belong to which layer is described in Chapter , along with detailed information on how the groups were determined, how they are stored, and how they are identified.

The data in this library has been carefully checked and cross-checked. It is believed to be reliable. However, no absolute guarantees are given and users should, as always, make their own checks in critical cases.

This library has been constructed by Hans Ulrich Besche, Bettina Eick and E. A. O'Brien. A survey on this topic and an account of the history of group constructions can be found in . Further detailed information on the construction of this library is available in , , , , , , , , , , , , . TwoGroup library ThreeGroup library The Small Groups library incorporates the &GAP; 3 libraries TwoGroup and ThreeGroup. The data from these libraries was directly included into the Small Groups library, and the ordering there was preserved. The Small Groups library replaces the &GAP; 3 library of solvable groups of order at most 100. However, both the organisation and the data descriptions of these groups have changed in the Small Groups library.

As of version 1.4 of this library, the arrangement of groups is the same as in Magma, version 2.23. In earlier releases of this library, the arrangement in orders p^7, p=3,5,7,11 disagreed. An attempt to fix this was made in version 1.1 of this library, but a wrong permutation was used. If you would like to refer to index numbers for these orders in older versions of the library, see . The arrangement of all other orders has always agreed and has remained stable.

In version 1.5, the number of groups of order 1024 was corrected. For more information, refer to .
Related packages Several other &GAP; packages give access to groups of orders which are not covered by this library, or which are covered only in part. A package can make its groups available through the functions of this chapter by calling .

SglPPow package The SglPPow package provides the groups of order p^7 for primes p > 11 and the groups of order 3^8. It extends this library: once it is loaded, its groups are available through the usual functions , and so on, and takes them into account. See https://gap-packages.github.io/sglppow/.

SOTGrps package The SOTGrps package constructs and identifies the groups whose order factorises into at most 4 primes, as well as those of order p^4 q for distinct primes p and q. It extends this library for those of its orders this one does not cover, and comes with its own functions SOTGroup, AllSOTGroups and IdSOTGroup for all of them. Be aware that where the orders covered by both overlap, the numbering used by SOTGrps in general differs from the one used here. See https://gap-packages.github.io/sotgrps/.
Function Reference <#Include Label="SmallGroup"> <#Include Label="SmallGroupsAvailable"> <#Include Label="AllSmallGroups"> <#Include Label="OneSmallGroup"> <#Include Label="NumberSmallGroups"> <#Include Label="NumberSmallGroupsAvailable"> <#Include Label="SelectSmallGroups"> <#Include Label="IdSmallGroup"> <#Include Label="IdGroupsAvailable"> <#Include Label="IdsOfAllSmallGroups"> <#Include Label="IdGap3SolvableGroup"> <#Include Label="SmallGroupsInformation"> <#Include Label="SmallGroupsAddLayer"> <#Include Label="UnloadSmallGroupsData"> <#Include Label="SMALL_GROUPS_OLD_ORDER">