The St Andrews GAP semigroup package ------------------------------------------------------------
At St Andrews we are developing a GAP semigroup package.
Our code is not yet ready to distribute but it is intended
that this will be available with a futurerelease of GAP V4.
We have two semigroup enumerators based on Todd-Coxeter
which enumerate semigroups given by a finite presentation.
One of these is a C program which enumerates the semigroup
and returns the "coset table" to GAP. The second is written
in the GAP language.
We have a number of functions written in GAP to investigate
algebraic properties of a semigroup once it has been
enumerated. These functions find idempotents, find left
or right or two-sided ideals, R-classes, L-classes and D-
In addition we have implemented in GAP a program to
compute the semigroup given by a finite set of
transformations. Here is an abstract of a paper we are
writing on this part of the software.
Computing transformation monoids
S.A. Linton, G. Pfeiffer, E.F. Robertson and N. Ruskuc
Abstract: Efficient computational methods are available for
computing with finite groups of permutations. In this paper we
utilise such methods in developing an algorithm to compute
the order and algebraic structure of finite transformation
monoids. We start from an algorithm due to Lallement and
McFadden and develop some theoretical improvements. The
underlying strategy is to translate computations in the
transformation monoid into computations in some
Abstracts of some other relevant publications are
available on the WWW at the URL
Although we intend a Todd-Coxeter and the transformation
monoid program to be the basic tools of the GAP semigroups
package, we are going to develop many more functions to
allow semigroups computed with these basic tools to be
We have developed theoretically a number of other T-C
type algorithms for semigroups which we have not
Nik Ruskuc Edmund Robertson 1 Aug 1996