Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Bib Ind
 [Top of Book]  [Contents]   [Next Chapter] 


Version 3.3.1

J. D. Mitchell

Stuart Burrell

Manuel Delgado

James East

Attila Egri-Nagy

Nicholas Ham

Julius Jonušas

Markus Pfeiffer

Chris Russell

Ben Steinberg

Finn Smith

Jhevon Smith

Michael Torpey

Wilf A. Wilson


The Semigroups package is a GAP package containing methods for semigroups, monoids, and inverse semigroups. There are particularly efficient methods for semigroups or ideals consisting of transformations, partial permutations, bipartitions, partitioned binary relations, subsemigroups of regular Rees 0-matrix semigroups, and matrices of various semirings including boolean matrices, matrices over finite fields, and certain tropical matrices.

Semigroups contains efficient methods 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 so on. It is 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 presentations for a semigroup, the congruences of a semigroup, the normalizer of a semigroup in a permutation group, the maximal subsemigroups of a finite semigroup, smaller degree partial permutation representations, and the character tables of inverse semigroups. There are functions for producing pictures of the Green's structure of a semigroup, and for drawing graphical representations of certain types of elements.


© 2011-20 by J. D. Mitchell et al.

Semigroups is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.


I would like to thank P. von Bunau, A. Distler, S. Linton, C. Nehaniv, J. Neubueser, M. R. Quick, E. F. Robertson, and N. Ruskuc for their help and suggestions. Special thanks go to J. Araujo for his mathematical suggestions and to M. Neunhoeffer for his invaluable help in improving the efficiency of the package.

Stuart Burrell contributed methods for checking finiteness of semigroups of matrices of the max-plus and min-plus semirings.

Manuel Delgado and Attila Egri-Nagy contributed to the function DotString (19.1-1).

James East, Attila Egri-Nagy, and Markus Pfeiffer contributed to the part of the package relating to bipartitions. I would like to thank the University of Western Sydney for their support of the development of this part of the package.

Nick Ham contributed many of the standard examples of bipartition semigroups.

Max Horn contributed many patches and fixes, in particular, to the kernel module.

Chris Jefferson contributed several patches and fixes to the build system.

Julius Jonušas contributed the part of the package relating to free inverse semigroups, and contributed to the code for ideals.

Zak Mesyan contributed to the code for graph inverse semigroups; see Chapter 11.

Dima Pasechnik contributed to the build system of the kernel module.

Markus Pfeiffer contributed the majority of the code relating to semigroups of matrices over finite fields.

Yann Péresse and Yanhui Wang contributed to the attribute MunnSemigroup (8.2-1).

Jhevon Smith and Ben Steinberg contributed the function CharacterTableOfInverseSemigroup (16.1-10).

Michael Torpey contributed the part of the package relating to congruences.

Murray Whyte was kind enough to update the bibliography in 2019.

Wilf A. Wilson contributed to the part of the package relating maximal subsemigroups and smaller degree partial permutation representations of inverse semigroups. We are also grateful to C. Donoven and R. Hancock for their contribution to the development of the algorithms for maximal subsemigroups and smaller degree partial permutation representations.

We would also like to acknowledge the support of: EPSRC grant number GR/S/56085/01; the Carnegie Trust for the Universities of Scotland for funding the PhD scholarships of Julius Jonušas and Wilf A. Wilson when they worked on this project; the Engineering and Physical Sciences Research Council (EPSRC) for funding the PhD scholarship of M. Torpey when he worked on this project (EP/M506631/1).


1 The Semigroups package
2 Installing Semigroups
3 Bipartitions and blocks
4 Partitioned binary relations (PBRs)
5 Matrices over semirings
6 Creating semigroups and monoids
7 Ideals
8 Standard examples
9 Standard constructions
10 Free objects
11 Graph inverse semigroups
12 McAlister triple semigroups and E-unitary inverse semigroups
13 Green's relations
14 Attributes and operations for semigroups
15 Properties of semigroups
16 Properties and attributes specific to inverse semigroups
17 Congruences
18 Semigroup homomorphisms
19 Visualising semigroups and elements
20 IO

 [Top of Book]  [Contents]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Bib Ind

generated by GAPDoc2HTML