The Monoids of Orders Eight, Nine & Ten
Available from Annals of Mathematics and Artificial Intelligence
Page 1
The Monoids of Orders Eight, Nine & Ten
The Monoids of Orders Eight, Nine & Ten
Andreas Distler1 and Tom Kelsey2
1 School of Mathematics and Statistics, Mathematical Institute,
North Haugh, St Andrews, KY16 9SS, UK
andreas@mcs.st-andrews.ac.uk
2 School of Computer Science, Jack Cole Building,
North Haugh, St Andrews, KY16 9SX, UK
tom@cs.st-andrews.ac.uk
Abstract. We describe the use of symbolic algebraic computation allied
with AI search techniques, applied to the problem of the identification,
enumeration and storage of all monoids of order ten or less. Our approach
is novel, using computer algebra to break symmetry and constraint sat-
isfaction search to find candidate solutions. We present new results in
algebraic combinatorics: up to isomorphism and anti-isomorphism, there
are 858,977 monoids of order eight; 1,844,075,697 monoids of order nine
and 52,991,253,973,742 monoids of order ten.
1 Introduction
The aim of this paper is to find all solutions to a class of problems in algebraic
combinatorics. This is a well-known research area: it is natural when discussing,
for example, various types of latin squares to try to resolve the question of how
many of each type exist. As well as obtaining the correct answer in terms of
number of solutions, we aim to store each solution so that they can be analysed
in terms of their structure by algebraists. This second aim means that we are
not searching for a purely constructive solution to the enumeration problem; we
want to generate and store a canonical example from each equivalence class of
solutions.
The On-Line Encyclopedia of Integer Sequences [1] contains numerous exam-
ples of known initial sequences of enumerations of algebraic and combinatorial
structures. The sequence that this paper extends is A058133: the numbers of
monoids of order n, considered to be equivalent when they are isomorphic or
anti-isomorphic. Currently values for n ≤ 7 are available online, values for n = 8
and 9 were given in [2], the value for n = 10 is a new result.
A monoid is an algebraic structure equipped with a closed and associative
binary operator, and an identity element. The formal definition used throughout
this paper is the following:
Definition 1. A monoid is a tuple 〈M, ∗, e〉 where M is a set; ∗ : M ×M →M
satisfies x ∗ (y ∗ z) = (x ∗ y) ∗ z ∀x, y, z ∈M ; and the identity e ∈M satisfies
x ∗ e = x = e ∗ x ∀x ∈M .
If 〈M, ∗, e〉 is a monoid, and |M | = n, then 〈M, ∗, e〉 has order n.
Andreas Distler1 and Tom Kelsey2
1 School of Mathematics and Statistics, Mathematical Institute,
North Haugh, St Andrews, KY16 9SS, UK
andreas@mcs.st-andrews.ac.uk
2 School of Computer Science, Jack Cole Building,
North Haugh, St Andrews, KY16 9SX, UK
tom@cs.st-andrews.ac.uk
Abstract. We describe the use of symbolic algebraic computation allied
with AI search techniques, applied to the problem of the identification,
enumeration and storage of all monoids of order ten or less. Our approach
is novel, using computer algebra to break symmetry and constraint sat-
isfaction search to find candidate solutions. We present new results in
algebraic combinatorics: up to isomorphism and anti-isomorphism, there
are 858,977 monoids of order eight; 1,844,075,697 monoids of order nine
and 52,991,253,973,742 monoids of order ten.
1 Introduction
The aim of this paper is to find all solutions to a class of problems in algebraic
combinatorics. This is a well-known research area: it is natural when discussing,
for example, various types of latin squares to try to resolve the question of how
many of each type exist. As well as obtaining the correct answer in terms of
number of solutions, we aim to store each solution so that they can be analysed
in terms of their structure by algebraists. This second aim means that we are
not searching for a purely constructive solution to the enumeration problem; we
want to generate and store a canonical example from each equivalence class of
solutions.
The On-Line Encyclopedia of Integer Sequences [1] contains numerous exam-
ples of known initial sequences of enumerations of algebraic and combinatorial
structures. The sequence that this paper extends is A058133: the numbers of
monoids of order n, considered to be equivalent when they are isomorphic or
anti-isomorphic. Currently values for n ≤ 7 are available online, values for n = 8
and 9 were given in [2], the value for n = 10 is a new result.
A monoid is an algebraic structure equipped with a closed and associative
binary operator, and an identity element. The formal definition used throughout
this paper is the following:
Definition 1. A monoid is a tuple 〈M, ∗, e〉 where M is a set; ∗ : M ×M →M
satisfies x ∗ (y ∗ z) = (x ∗ y) ∗ z ∀x, y, z ∈M ; and the identity e ∈M satisfies
x ∗ e = x = e ∗ x ∀x ∈M .
If 〈M, ∗, e〉 is a monoid, and |M | = n, then 〈M, ∗, e〉 has order n.
Page 2
Not requiring an identity element gives the definition of a semigroup – denoted
henceforth as 〈S, ∗〉. A group – denoted as 〈G, ∗, e,−1 〉 – is a special case of a
monoid; each group element has a multiplicative inverse.
Throughout this paper we consider only finite monoids, where M is a finite
set. We also simplify denotation of monoid, semigroup and group to M , S and
G respectively, whenever the multiplication, identity and/or inverses are either
unimportant or clear from the context.
Definition 2. Let 〈M1, ∗1, e1〉 and 〈M2, ∗2, e2〉 be two monoids of the same or-
der. A bijection σ : M1 →M2 is an isomorphism if it respects the multiplication
– i. e. (a ∗1 b)σ = aσ ∗2 bσ – and an anti-isomorphism if it inverts the multi-
plication – i. e. (a ∗1 b)σ = bσ ∗2 aσ. If such a bijection exists the monoids are
isomorphic, respectively anti-isomorphic, and are equivalent if either.
Remark 1. Since the identity element of a monoid does not form part of the
definition of equivalence, the above definition also applies to semigroups.
In this paper we are interested in monoids up to equivalence. Thus we can
choose the underlying set to be {1, 2, . . . , n}. We then represent monoids by
their multiplication tables, with rows and columns indexed from 1 up to n.
Table 1: Example multiplication table, and its image under permutation (1, 4)
∗1 1 2 3 4
1 1 2 3 4
2 2 1 3 4
3 3 3 3 3
4 4 4 3 3
∗2 1 2 3 4
1 3 1 3 1
2 1 4 3 2
3 3 3 3 3
4 1 2 3 4
Isomorphism of monoids induces an action on tables. Given a permutation g
of the members of M , we modify the table by permuting each row according
to g, then each column, and finally permuting the values. An anti-isomorphism
is the result of an isomorphism action followed by transposing the table. The
effect of applying permutation (1, 4) is shown in Table 1. Since permutations of a
finite set, permutations of rows and columns of a multiplication table, and table
transposition are all invertible, (anti-)isomorphism is a reflexive, symmetric and
transitive relation on monoids, and is hence an equivalence relation.
In common with many algebraic enumeration problems, there is a combina-
torial explosion as n increases. There are n choices for each of the n2 positions in
a multiplication table. For n = 9 and 10, the number of choices is approximately
2 × 1077 and 10100 respectively. This increase in problem size effectively rules
out the obvious exhaustive search approach of generating each table, checking
if the monoid axioms hold, then checking whether or not an (anti-)isomorphic
version of the table has already been found.
Our approach is to develop algebraic results that allow us to devise algo-
rithms for search-space reduction. We implement these algorithms in symbolic
computational algebra; formulate the remaining problems in terms of constraints
henceforth as 〈S, ∗〉. A group – denoted as 〈G, ∗, e,−1 〉 – is a special case of a
monoid; each group element has a multiplicative inverse.
Throughout this paper we consider only finite monoids, where M is a finite
set. We also simplify denotation of monoid, semigroup and group to M , S and
G respectively, whenever the multiplication, identity and/or inverses are either
unimportant or clear from the context.
Definition 2. Let 〈M1, ∗1, e1〉 and 〈M2, ∗2, e2〉 be two monoids of the same or-
der. A bijection σ : M1 →M2 is an isomorphism if it respects the multiplication
– i. e. (a ∗1 b)σ = aσ ∗2 bσ – and an anti-isomorphism if it inverts the multi-
plication – i. e. (a ∗1 b)σ = bσ ∗2 aσ. If such a bijection exists the monoids are
isomorphic, respectively anti-isomorphic, and are equivalent if either.
Remark 1. Since the identity element of a monoid does not form part of the
definition of equivalence, the above definition also applies to semigroups.
In this paper we are interested in monoids up to equivalence. Thus we can
choose the underlying set to be {1, 2, . . . , n}. We then represent monoids by
their multiplication tables, with rows and columns indexed from 1 up to n.
Table 1: Example multiplication table, and its image under permutation (1, 4)
∗1 1 2 3 4
1 1 2 3 4
2 2 1 3 4
3 3 3 3 3
4 4 4 3 3
∗2 1 2 3 4
1 3 1 3 1
2 1 4 3 2
3 3 3 3 3
4 1 2 3 4
Isomorphism of monoids induces an action on tables. Given a permutation g
of the members of M , we modify the table by permuting each row according
to g, then each column, and finally permuting the values. An anti-isomorphism
is the result of an isomorphism action followed by transposing the table. The
effect of applying permutation (1, 4) is shown in Table 1. Since permutations of a
finite set, permutations of rows and columns of a multiplication table, and table
transposition are all invertible, (anti-)isomorphism is a reflexive, symmetric and
transitive relation on monoids, and is hence an equivalence relation.
In common with many algebraic enumeration problems, there is a combina-
torial explosion as n increases. There are n choices for each of the n2 positions in
a multiplication table. For n = 9 and 10, the number of choices is approximately
2 × 1077 and 10100 respectively. This increase in problem size effectively rules
out the obvious exhaustive search approach of generating each table, checking
if the monoid axioms hold, then checking whether or not an (anti-)isomorphic
version of the table has already been found.
Our approach is to develop algebraic results that allow us to devise algo-
rithms for search-space reduction. We implement these algorithms in symbolic
computational algebra; formulate the remaining problems in terms of constraints
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime
Start using Mendeley in seconds!
Readership Statistics
2 Readers on Mendeley
by Discipline
50% Mathematics
by Academic Status
50% Researcher (at an Academic Institution)
50% Associate Professor
by Country
100% United Kingdom


