Finitely generated groups and their subgroups are important domains in GAP. They are represented as permutation groups, matrix groups, ag groups or even more complicated constructs as for instance automorphism groups, direct products or semi-direct products where the group elements are represented by records.
Groups are created using Group (see Group), they are represented
by records that contain important information about the groups. Subgroups are
created as subgroups of a given group using Subgroup, and are
also represented by records. See More about Groups and Subgroups for details
about the distinction between groups and subgroups.
Because this chapter is very large it is split into several parts. Each part consists of several sections.
Note that some functions will only work if the elements of a group are represented in an unique way. This is not true in finitely presented groups, see Group Functions for Finitely Presented Groups for a list of functions applicable to finitely presented groups.
The first part describes the operations and functions that are available for
group elements, e.g., Order (see Group Elements). The next part
tells your more about the distinction of parent groups and subgroups (see
More about Groups and Subgroups). The next parts describe the functions that
compute subgroups, e.g., SylowSubgroup (Subgroups), and series
of subgroups, e.g., DerivedSeries (see Series of Subgroups). The
next part describes the functions that compute and test properties of groups,
e.g., AbelianInvariants and IsSimple (see
Properties and Property Tests), and that identify the isomorphism type. The
next parts describe conjugacy classes of elements and subgroups (see
Conjugacy Classes) and cosets (see Cosets of Subgroups). The next part
describes the functions that create new groups, e.g., DirectProduct
(see Group Constructions). The next part describes group homomorphisms, e.g.,
NaturalHomomorphism (see Group Homomorphisms). The last part
tells you more about the implementation of groups, e.g., it describes the
format of group records (see Set Functions for Groups).
The functions described in this chapter are implemented in the following
library files. LIBNAME/"grpelms.g" contains the functions for
group elements, LIBNAME/"group.g" contains the dispatcher and
default group functions, LIBNAME/"grpcoset.g" contains the
functions for cosets and factor groups, LIBNAME/"grphomom.g"
implements the group homomorphisms, and LIBNAME/"grpprods.g"
implements the group constructions.
This chapter contains the following sections: