Application of the Todd-Coxeter Algorithm in the Computation of Group Theory ()
1. Introduction
The concept of a group appeared in the study of polynomial equations. Indeed, it was Evariste Galois who, during the 1830s, used the term “group” for the first time in a technical sense similar to what is used today, making him one of the founders of group theory. As a result of contributions from other fields of mathematics, such as number theory and geometry, the notion of a group was generalized and more firmly established around the 1870s. Modern group theory, a branch of mathematics that is still active, therefore focuses on the structure of abstract groups, regardless of their extra-mathematical use. In doing so, mathematicians have defined, over the years, several notions that allow groups to be fragmented into smaller, more comprehensible objects, subgroups, quotient groups, normal subgroups, and simple groups are some examples. In addition to studying these types of structures, group theorists are also interested in the deferential ways in which a group can be concretely expressed, both from the point of view of representation theory and from the point of view of computationality. Finite group theory was developed with the classification of finite groups as a culmination, which was completed in 2004 [1].
Since the mid-1980s, geometric group theory, which is concerned with finite-type groups as geometric objects, has become a particularly active field in group theory. This article will allow us to “revise” some theoretical notions about groups. We will manipulate permutation groups and groups defined by generators and relationships. It must be said here that other software such as GAP is much more suitable for group theory calculations. However, we will exploit the Todd-Coxeter algorithm for the computation of group theory.
1.1. Distinguished Subgroup, Quotient Group
In the following, G is a group and H is a subgroup of G.
A subset of G modulo H is a subset of G of type
(resp
) for a
. The set of classes on the right (resp. on the left) is denoted H\G (resp. G\H) and is called the quotient set (on the right, resp. on the left) of G by H. The canonical surjection
(resp. G\H) defined by
(resp.
) is called the canonical projection modulo H on the right (resp. on the left).
1.2. Definition
H is said to be distinguished or normal in G if for all
, we have
, or if for all
and for
and for
. If H is distinguished, we have
and the classes on the right have the same as the classes on the left.
1.3. Theorem
The subgroup H is distinguished in G if and only if there exists a group structure on G/H such that the canonical projection
is a group homomorphism. The distribution is then unique and
is called the quotient group [2].
2. Swap Group
We denote
the symmetric group of degree n, i.e. the group of bijections of the set with n elements
in itself equipped with the law of composition. A permutation of degree n is an element of
. A group of permutations (of degree n) is a subgroup of
. Recall that there is a single homomorphism of
such that the image of a transposition is −1. It’s the signature. The nucleus is the alternating group 𝔘n.
Un r-cycle cycle (or r-length cycle) is denoted
. This is the permutation that sends
to
to
. The set
is called the support of the cycle
.
Proposition
The group
is generated by (1 2) and (1 2...n). Group
is generated for
by (1 2 3) and (3...n) if n is odd and by (1 2 3) and (1 2) (3...n) if n is even.
The first statement is classical. For the second, we recall that
is generated by the 3-cycles (1 2 i) for
. If
and
or
according to the parity of n, we have
= (1 2 3 + i) or (2 1 3 + i) = (1 2 3 + i)2. The preceding proposition is easily deduced from this.
3. Group Operating on a Set
Definition
Let X be a set. A group G operating (left) on X is a group with an application
verifying
for any
and
and
if e is a neutral element of G. It is the same thing to give oneself a homomorphism of groups
where
designates the group of permutations of X.
G is said to operate transitively on X if for all x and
, there exists
such that
. It is the same thing to say that the orbit of any
, that is, the set of
for
, is equal to X. If G is defined as a group of permutations of degree n and its natural action on
is transitive, G is said to be transitive.
G is said to operate 2-transitively on X if for all
with
and for
with
, there exists
such that g
and
. In particular, G operates transitively on X and G operates 2-transitively if and only if the diagonal action of G on
has exactly two orbits: the diagonal of
and the complement. A group of permutations of degree n operating 2-transitively on
is said to be 2-transitive [3].
4. Group Operating on Itself by Conjugation
A group G operates on itself by conjugation:
. Two elements a and
are said to be conjugated if there is
such that
. The equation to the classes is the formula
where Ci goes through all the classes of conjugation. It is easy to calculate the conjugation classes of 𝔊n. If σ is a permutation, it can be uniquely written as the product of disjointed support cycles.
4.1. Proposition
Two elements of 𝔊n are conjugated if and only if their decompositions into disjoint cycles have for all i the same number of cycles of length i.
4.2. Group Operating through Translation
A group G operates on itself by translation (left):
. If H is a subgroup of G, the group G also operates on the set G/H by translations, which allows us to define a homomorphism of ρ groups:
by
for
and C an element of G/H. In particular, once these Additional definitions: derived subgroup, semi-direct product are numbered from 1 to n if n is the index of H in G, we obtain a homomorphism ρ' of G in 𝔊n. Note that
is a group of transitive permutations of degree n, quotient of G.
5. Additional Definitions: Derived Subgroup, Semi-Direct Product
5.1. Definition
Let G be a group. A commutator is an element d G of the form
. We call the derivative group of G (and we denote G' or D(G)) the subgroup generated by the switches of G.
5.2. Proposition
D(G) is a distinguished subgroup of G. The quotient G/D(G) is an abelian group and even the largest abelian quotient group of G in the following sense: let us
; if G1 is an abelian group and
a homomorphism of groups, there exists a unique homomorphism
such that
. Thus, the order of G/D(G) is maximal among the order of the quotients of G that are abelian. A sequence derived from a group G is called the sequence
5.3. Theorem
The group derived from 𝔊n is
. The group derived from
is
for
. for
, ask MAPLE later for their thoughts [4].
5.4. Definition
Let H and K be two groups and
a group homomorphism (here, Auto(H) is the group of bijective homomorphisms of H in itself). The semi-direct (abstract) product of H by K with respect to T is the set
with the following law.
This law is a group law, let us denote G group. When T is the trivial homomorphism, we find the direct product. It is easy to show that the sets
and
are the subgroups of G, that H' is distinguished in G and that
.
5.5. Definition
Let G be a group and let H and K be two subgroups of G. G is said to be the semi-straight product of H by K if H is distinguished in G, if
and if
.
Under the previous conditions, let us take
gives by
. Then G is isomorphic to the semidirect (abstract) product of H by K with respect to T.
6. Free Groups, Generator-Defined Groups, and Relationships
6.1. Definition
Let V be a set. The free monoid of base V is the set note
, of finite sequences of elements of V. These sequences are denoted by juxtaposing the elements, for example the sequence
with
is denoted
. The elements of
, are called strings of elements of V or words on V.
If
, with
, The length of the string
is r. We denote ρ the natural map
which to
associates the chain of length 1 formed by
. If
and
are words, the word formed by juxtaposing them is denoted
and is called the concatenation of
and of
.
6.2. Proposition
The concatenation defines an internal composition law on
which is associative and admits a neutral element ε which is the empty string.
6.3. Proposition (Universal Property of
)
For any monoid M and any map
, there exists a single monoid morphism
such that
.
Note that
is characterized by the preceding universal property with a single isomorphism. Let V' be a copy of V. If
is an element of V, we denote
the same element seen in V'.
Let
be the disjoint meeting of V and V'. Let
be the free monoid of base V'. Si
, we set
.
6.4. Definition
Two elements of
are said to be equivalent if there are
and
belong to
such that
and such that if
,
and
are contiguous. The relation thus defined is an equivalence relation. The parity of the length is conserved by this relation.
6.5. Definition
The free group F(V) of base V is the set of equivalence classes of the previous equivalence relation. We check that the concatenation respects the equivalence relation. This makes it possible to define an internal composition law on F(V).
6.6. Proposition
Equipped with the concatenation, F(V) is a group. For
, the inverse of (the class) of
is (The class of)
. For this reason,
for
is also denoted. We still have a map
.
6.7. Proposition (Universal Property of F(V))
For any group G and any map
, there exists a unique homomorphism of group
such that . Again, F(V) with the map
is characterized with a single isomorphism by the universal property above.
6.8. Examples
1) If V is the empty set, the base free group V is the trivial group {1}.
2) If
is reduced to one element, F(V) is isomorphic to
Indeed, we begin to enumerate the elements of F(V) by “reducing” them: these are the α...α (n times ) = αn and the α'...α' (n times) = α'n = α−n for
. Notice that
verifies the universal property: if G is a group, an application.
is determined by the image
; there is then a single group homomorphism of
in G given by
. By uniqueness of the universal object, we deduce that F(V) is isomorphic to
.
3) If V has two elements α and β, F(V) is very large: it contains, for example αb, αbα, αbα−1b, α5b2αbαbαb, etc. which are all distinct.
6.9. Definition
Let be a group and A, a part of G. The distinguished subgroup of G generated by A is the intersection of all the distinguished subgroups of G containing A. It is also the smallest distinguished subgroup of G containing A. It is formed of the finite products of elements of A and all their conjugates by an element of G.
6.10. Definition
A group presentation is a pair (X, R) where X is a set and R is a part of F(X). Let
be the quotient of the free group F(X) by the distinguished subgroup of F(X) generated by R. We say that (X, R) is a presentation of G or that it is a definition of G by generators and relations. The elements of X are called generators, the elements of R are called relators. If r is a relator, r = 1 is called a relation. We also denote
.
By example
or
,
or
.
6.11. Proposition (Universal Properties)
For any group G and any map
such that
for
, there exists a unique homomorphism of group
such that
where π is the projection of F(X) onto
.
6.12. Examples
1) If R is the empty set, the subgroup of F(X) generated by R is reduced to 1. So
.
2)
〉 is isomorphic to
. Indeed, we have
, the distinguished subgroup generated by
is
.
3)
is isomorphic to
. Indeed, in
. We enumerate the elements of G: we find 1,
. So
. On the other hand, the group
has two generators x = 2 and y = 3 verifying (additive notation)
,
,
. We deduce from this by the universal property that there exists a group homomorphism
which sends a over x = 2 and b over y = 3. It is surjective. Hence
. So
and G is isomorphic to Z/6Z.
4) Recognize the groups
,
.
7. Proof and Analysis of the Isomorphism Relationship
between G and G6, in Particular How to Determine the Injectivity of the Maple and Its Specific Shape
Here is a more rigorous analysis of the isomorphism relationship between the graph G and the G6 graph, including details on the demonstration of the injectivity of the extension of G in G6 and t the specific form of this extension.
1) Definition of G and G6
G is an undirected graph connected to n vertices and m edges.
G6 is a connected undirected graph with 6n vertices and 6m edges, constructed from G by replacing each vertex of G with a sextet (group of 6 vertices) and each edge of G with a sextoid (group of 6 edges).
2) Demonstration of the injectivity of the extension of G in G6
Let
the embedding that associates to each vertex of G the corresponding sextet in G6, and to each edge of G the corresponding sextoid in G6.
Let us show that f is injective:
Let u and v be two distinct vertices of G.
Their corresponding sextons in G6 are also distinct, as they each contain 6 distinct vertices.
Similarly, the sextoids corresponding to the edges incident u and v in G are distinct in G6.
Therefore f(u) differ f(v), which proves the injectivity of f.
3) Specific shape of the embedding f:
Let v be a vertex of G, and let
be the 6 vertices of the sextet correspond in G6.
The edges of the sextoid corresponding to an edge
and G are:
;
;
;
;
;
.
Thus, the structure of the G group is preserved in G6 via this extension.
4) Consequences:
The embedding f establishes an isomorphism between G and an induced subgraph of G6.
This isomorphism makes it possible to transfer the topological and structural properties of the graph G to the isomorphic subgraph of G6.
In particular, if G is connected, bipartite, planar, etc., then the isomorphic subgraph of G6 will have the same properties.
In summary, the demonstration of the injectivity of the f-embedding and the description of its specific forms allow us to characterize the isomorphism relationship between the graphs G and G6. This opens the way to the in-depth study of the properties of the G6 graph based on that of the G graph.
8. Familiarization with Group
The group library is concerned with two types of groups: groups of permutations of degree n, which are given by a list of generators and the integer n, and groups defined by generators and relations. It will be noticed right away that some commands can be used for both types of groups, such as cosets and cosrep, which are normal, while others can only be used with a permutation group, such as conjugate, center, centralizer, and subgroup. Finally, some commands are only applicable to a group defined by generators and relations, such as permrep and pres.
The command to define a permutation group is permgroup. It is important to be familiar with the two ways in which MAPLE represents a permutation σ. We can give ourselves a permutation list, i.e. the list
. Thus, [1, 3, 4, 5, 2] denotes for MAPLE the permutation
We can also give ourselves the permutation σ as the list of cycles with disjoint support whose product is σ: [[1, 2, 3], [4, 5]] designates the permutation (123) (45). We go from one to the other by cover ((“permlist”, n) and open (“disjcyc”). We can also give ourselves the permutation σ as the list of cycles with disjoint support whose product is σ: [[1, 2, 3], [4, 5]] designates the permutation (123) (45). We go from one to the other by cover ((“permlist”, n) and open (“disjcyc”).
Example:
> overcast ([1, 3, 4, 5, 2], “disjcyc”);
> Overcast ([[1, 2, 3], [4, 5]], “permlist”, 5);
> overcast ([[1, 2, 3], [4, 5]], “permlist”, 9);
In the second command, the permutation is seen as an element of 𝔊5, in the third as an element of 𝔊9. Operations on permutations are given by invperm, mulperms. Check on an example that MAPLE makes the permutations on the right:
, noting
(exponential notation), we then have
. As a result, MAPLE instead calculates the classes on the right on which G operates on the right. Some commands do not give results when the generators have been named. If this problem is encountered, the following procedure can be used to remove these names:
> gr: = pro(G) local a,b,L,c;
> a=op (1, G); b: = op(2, G);
> L: {};
> for c in b do
> if type (c, ‘=’) then c: =op (2, c) fi;
> L: ={op(L), c};
> od;
> permgroup (a,L);
> end;
9. Conclusions
If a G is a group defined by generators and relations such as:
with finite X and H a subgroup of G generated by the image of a finite subset S of words of
.
The Todd-Coxeter algorithm allows, when the index of H in G is finite, to calculate this index and to give the action of G by right translation on the set of classes H\G. The group library concerns two types of groups: groups of permutations of degree n, which are given by a list of generators and the integer n, and groups defined by generators and relationships.
MAPLE calculates the classes on the right on which G operates on the right. Some commands do not give results when the generators have been named. If this problem is encountered, the following procedure can be used to remove these names:
> gr: =pro(G) local a,b,L,c;
> a=op (1, G); b: =op (2, G);
> L: {};
> for c in b do
> if type (c, ‘=’) then c: =op (2, c) fi;
> L: ={op(L), c};
> od;
> permgroup (a,L);
> end;
Appendix
A1. Told-Coxeter Algorithm
The Todd-Coxeter algorithm is best known for solving problems related to group theory, by allowing finite presentations of groups to be calculated. However, this algorithm also has interesting applications in other fields:
1) Combinatorial optimization: The Todd-Coxeter algorithm can be used to solve some combinatorial optimization problems, such as the traveling salesman problem. By modeling the problem in the form of relationships between cities (such as generators and relationships in a group), we can use the algorithm to find optimal solutions.
2) Formal language theory: The algorithm can be applied to the study of formal languages, in particular to compute finite automata equivalent to algebraic grammars. This makes it possible to obtain compact and efficient representations of certain languages.
3) Cryptography: In some cryptographic schemes based on group theory, the Todd-Coxeter algorithm can be used to efficiently manipulate the representations of the groups involved.
4) Algebraic topology: In knot theory, for example, the algorithm can help compute topological invariants by modeling knots as groups of braids.
5) Mathematical physics: Some mathematical models in physics, such as crystal lattices, can be studied using the Todd-Coxeter algorithm to understand their algebraic properties.
6) Computer science theory: the algorithm has links to classical problems of complexity theory, such as the group isomorphism problem.
Although the Todd-Coxeter algorithm is historically associated with group theory, these examples show that it can be useful in many other fields requiring the efficient computation of finite algebraic structures. Its adaptability makes it a powerful tool for solving a wide variety of practical problems.
Let G be a group defined by generators and relations:
with finite X and H a subgroup of G generated by the image of a finite subset S of words of
. The Todd-Coxeter algorithm that we are going to describe allows, when the index of H in G is finite, to calculate this index and to give the action of G by right translation on the set of classes H\G.
A2. Description of Algorithm
It is a question of giving all classes a number and only one, class H having for example the number 1 (not to be confused with the neutral element). To do this, we will build a certain number of arrays according to the following rules (we recommend doing the following example at the same time).
I) The key steps and principles of the Todd-Coxeter algorithm, an important algorithm in group theory:
a) Group performances:
The algorithm starts by representing the group using generators. This can be done in the form of a group presentation.
b) Initialization: The algorithm starts with an initial set of side classes, which represent the elements of the group. Often, we start with a single class, corresponding to the neutral element of the group.
c) Relationship Processing: At each step, the algorithm takes a relationship between generators and tries to apply it to existing side classes. This can lead to some side classes being identified as identical, thus reducing the total number of classes.
d) Iterative process: the algorithm proceeds iteratively, successively applying the group’s relationships to the lateral classes, until no new identification is possible.
e) Termination: The algorithm terminates when the application of the relationships no longer results in any new identification of side classes. At this point, the final set of side classes represents the elements of the group.
f) Key Principles:
Relationship Matching: The algorithm seeks to match the group's relationships to existing side classes.
Merging identical classes: When two side classes are identified as identical, they are merged into a single class.
Propagation of identifications: the identifications made are propagated through all the lateral classes to ensure consistency.
Finding a steady state: the algorithm aims to reach a steady state where no new identification is possible.
NB. The Todd-Coxeter algorithm is very useful for studying group structure and calculating invariants such as group order. It has many applications in group theory, algebraic topology, and other mathematical fields.
1) For each word
of S, we associate a table Mgen(α) with a single row and r + 1 columns whose first element is 1. We will fill in the second column later by putting the number of the class of
which we also note 1.
, then the third column with the number of 1.
, etc.
First principle: The last element in the line is 1. Indeed, if
, we have
. These tables are called the tables of subgroup H. The tables are presented here in the initial state:
2) At each relator
, element of R, we associate a Mrel(β) table with s + 1 columns and an unlimited number of rows.
In the first column, we will successively put the numbers introduced 1, 2, 3, ..., class numbers. Again, on the same line, we go from column k to column k + 1 by “multiplication on the right” by
.
Second principle: On the same line, the first element and the last element are identical. Indeed, if
,
for all
. This table is called the relator table β.
3) Finally, we construct a table of a different type, similar to a group distribution table (called a multiplication table). The rows are indexed by the numbers of the classes obtained, the columns by the elements of X and their inverses. In place (i, g) is the number of i. g.
4) We build the paintings little by little. As soon as a new number is defined, a row is added to the tables of the relators and the multiplication table. As soon as we give a number to a class, we carry it everywhere we can. If
, we deduce that
. If principles 1 and 2 allow deductions to be made, they are used. If we come across a coincidence, for example if a class has both the number 3 and 6, we replace the number 6 with the number 3 everywhere. Once all possible deductions have been made, and if there is an empty box left in the multiplication table, a new number is assigned to an empty box in this table. Otherwise, the algorithm is complete [5].
II) Explanations of the table and how the Todd-Coxeter algorithm helps to understand the structure of subgroups, in particular the role of the relative table and the multiplication table.
The Todd-Coxeter table is a powerful tool for studying the algebraic structure of a group. It allows group relationships to be presented in a compact way in a table format, which facilitates the analysis of subgroups.
The key to the Todd-Coxeter table is the relative table. This table represents the relationships between the items in the group, indicating how each item combines with the generators in the group. Each box in the relative table contains a group item, which is the result of multiplying a row item (representing an item in the group) by a column item (representing a generator).
The Todd-Coxeter algorithm uses this relative table to systematically explore all the elements of the group and identify its subgroups. It proceeds as follows:
1) We start with a set of generators of the group and their relationships.
2) The relative table is constructed by filling each cell with the result of multiplying a row item by a column item, according to the relationships of the group.
3) The algorithm explores the relative table in a systematic way, identifying the items in the group and inferring the subgroup structure.
The multiplication table is another key tool. It is deducted from the relative table and represents the products of all the items in the group. Each box contains the result of multiplying the row item by the column item.
Analysis of the multiplication table makes it possible to identify the subgroups of the initial group. Indeed, the subgroups correspond to blocks of closed squares in the multiplication table, i.e. areas where the multiplications remain inside.
In summary, the Todd-Coxeter table, through its relative table and its multiplication table, offers a compact and powerful representation of the algebraic structure of a group. The Todd-Coxeter algorithm exploits this representation to systematically explore subgroups, which is essential for understanding the overall structure of the group.
A3. Application of the Todd-Coxeter Algorithm
Let’s take
.
So we have
,
Let us take for H the subgroup generated by a. So there is a subgroup table, three relator tables and a multiplication table [6].
At first, they are of the following form:
Subgroup table:

Narrator’s table aaaaa:
Narrator’s table abab:
Narrator’s table bbb:
“Multiplication” table:
The subgroup table will no longer move. We will not rewrite it again.
We take 2 = 1.b. Tables become.
We take 3 = 2.a. Tables become.
We found in passing that 3.b = 1 and 2.b = 3.
We then take 4 = 3.a. Tables become.
We take 5 = 4.a. Tables become.
By the way, we made deductions 5.a = 2 and 4.b = 5.
Finally, we hang 6 = 5.b. Tables become.
The algorithm is finished. The index of H in G is 6. Let’s show that a is of order 4 in G. Since a4 = 1, it is of order dividing 4.
Notice that the image of a in S(H\G) is the cycle (2 3 4 5) which is of order 4. Thus, a is of order 4 and G is of order 24. Similarly, the image of b is the permutation (1 2 3) (4 5 6) which is of order 3 [7].
We have explicitly obtained a homomorphism of G in the group of permutations of H\G which is isomorphic to 𝔊6. Note that it is injective: in fact, an element of the nucleus belongs to the intersection of
for
, in particular, it belongs to H; on the other hand, the image of H in 𝔊6 is of order 4, so the nucleus is reduced to the neutral element.