Group Theory
A group is a set G together with an associative operation * satisfying
the axioms of existence of a unit element and an inverse of every
element of the group. The Axiom category Group
represents this setting. Many data structures in Axiom are groups and
therefore there is a large variety of examples as fields and polynomials,
although the main interest there is not a group structure.
To work with and in groups in a concrete manner some way of representing
groups has to be chosen. A group can be given as a list of generators and
as a set of relations. If there are no relations, then we have a free group,
realized in the domain FreeMonoid which
won't be discussed here. We consider permutation groups, where a group is
realized as a subgroup of the symmetric group of a set, i.e., the group of
all bijections of a set, the operation being the composition of maps. Indeed,
every groupo can be realized this way, although this may not be practical.
Furthermore group elements can be given as invertible matrices. The group
operation is reflected by matrix multiplication. More precise in
representation theory group homomorphisms from a group to general linear
groups are constructed. Some algorithms are implemented in Axiom.