Blob Blame History Raw
# gap-pkg-semigroups

[Semigroups](https://semigroups.github.io/Semigroups/) is a
[GAP](https://www.gap-system.org/) package containing methods for semigroups,
monoids, and inverse semigroups, principally of transformations, partial
permutations, bipartitions, subsemigroups of regular Rees 0-matrix semigroups,
free inverse semigroups, free bands, and semigroups of matrices over finite
fields.

Semigroups contains more efficient methods than those available in the GAP
library (and in many cases more efficient than any other software) for
creating semigroups, monoids, and inverse semigroup, calculating their Green's
structure, ideals, size, elements, group of units, small generating sets,
testing membership, finding the inverses of a regular element, factorizing
elements over the generators, and many more.  It is also possible to test if a
semigroup satisfies a particular property, such as if it is regular, simple,
inverse, completely regular, and a variety of further properties.

There are methods for finding congruences of certain types of semigroups, the
normalizer of a semigroup in a permutation group, the maximal subsemigroups of
a finite semigroup, and smaller degree partial permutation representations of
inverse semigroups.  There are functions for producing pictures of the Green's
structure of a semigroup, and for drawing bipartitions.