Skip to the content.

Exploring group presentations and Cayley graphs using GAP

Mike Grady / June 2020

In a beautiful early paper on group theory, Maschke [1] gave many of the now classic Cayley graphs of the polyhedral groups. All of them form edge graphs of the Archimedean solids [2], and provide an attractive entry into the exploration of group presentations using the GAP System [3].

In this tutorial, we examine the Archimedean solids one by one and guess at the generators and relations evident in their edge graphs. GAP makes it easy to test our guesses. (We assume the reader has GAP installed. If not, please visit the GAP System website). It may also prove helpful to have the excellent Wikipedia article on the Archimedean solids in front of you as we go along.

1. Truncated Octahedron.

Truncated Octahedron

Image by Tilman Piesk, licensed under CC BY 4.0


The truncated octahedron [2] has six square faces, 8 hexagonal faces and 24 vertices, with each vertex having three edges incident to it. If its edges form a Cayley graph, the group must have order 24, the same as the number of vertices. Let the edges surrounding each square represent generator “a” directed clockwise as seen from above. Let the edges connecting squares represent generator “b”. The visible part of the corresponding edge graph looks like this:

cayley graph

Relators are words spelled out by circuits in the graph. They equal the identity in the group under consideration. The red square and black edge above give relators a^4 and b^2, following the convention that directed loops of length two are drawn as a single undirected edge. The hexagon gives relator (a*b)^3. This suggests the following presentation:

< a, b | a^4, b^2, (a*b)^3 >

It is a simple matter to test this presentation in GAP.

We first create a free group on two generators and give the generators the names “a” and “b”.

gap> f := FreeGroup(2);
gap> a := f.1;
gap> b := f.2;

We next list the relators that define the group, and take the quotient of the free group of rank two with the normal closure of the subgroup generated by these relators.

gap> rels := [a^4, b^2, (a*b)^3];
gap> G := f/rels;

Finally, we ask GAP to give the name of this group and its order.

gap> newline := "\n";
gap> Print("group: ", StructureDescription(G), "   order: ", Order(G), newline);

As expected, the group is S4, the rotation group of the octahedron, whose order is 24.

If the edge graph of this polyhedron is given a Schlegel projection onto the plane, we have the classic Cayley graph of S4 given by Maschke:

cayley graph s4

By numbering the vertices, we can immediately give a regular permutation representation of G:

gap> a := (1,2,3,4)(5,6,7,8)(9,10,11,12)(13,14,15,16)(17,18,19,20)(21,22,23,24);
gap> b := (1,17)(2,8)(3,11)(4,22)(5,20)(6,16)(7,12)(9,15)(10,23)(13,19)(14,24)(18,21);
gap> G := Group(a,b);
gap> Print("group: ", StructureDescription(G), "   order: ", Order(G), newline);

We now briefly look at the remaining Archimedean Solids and guess the presentations of their corresponding groups. The excellent POVRay renderings of Tilman Piesk make this easy. The reader is encouraged to type and run the corresponding GAP commands. Here, we give only computed results. To see the Schlegel projections of the corresponding Cayley graphs, we refer you to Maschke’s original paper [1], to Tom Ruen’s renditions of the Archimedean edge graphs [4] or to N. S. Wedd’s interesting website [5] on a variety of Cayley graphs, including those of the polyhedral groups and groups of low order.


2. Truncated Tetrahedron.

Truncated Tetrahedron

Image by Tilman Piesk, licensed under CC BY 4.0


Each vertex of the truncated tetrahedron has three edges incident to it. The triangle gives relation a^3, and the edges connecting two triangles give b^2. Our presentation is:

< a, b | a^3, b^2, (a*b)^3 >

This is the Alternating group on four symbols: A4, the rotation group of the tetrahedron.


3. Cubeoctahedron.

Cubeoctahedron

Image by Tilman Piesk, licensed under CC BY 4.0


Here, we can’t assign the same generator of order three to all the triangles because each edge would be labeled with the same generator, and any path would consist of words in a single letter, giving at most a group of order three. Instead, let’s suppose two different generators of order three meet at a vertex, giving a square circuit of length four: (a*b)^2.

< a, b | a^3, b^3, (a*b)^2 >

The cubeoctahedron has twelve vertices, so if the edges form a Cayley graph, we expect to find a group of order 12. In fact, this presentation gives us A4 again, the rotation group of the tetrahedron.

This is a good time for a couple of exercises. Answers are given at the end of the tutorial.

Exercise 1: What happens if we try to assign two different generators of order four meeting at every vertex? Does this yield a Cayley graph?

Exercise 2: What about a generator of order four and two of order two meeting at every vertex?


4. Truncated Cube.

Truncated Cube

Image by Tilman Piesk, licensed under CC BY 4.0


This one is easy. There are two obvious circuits. Try

< a, b | a^3, b^2, (a*b)^4 >

You should get S4, the rotation group of the cube.


5. Rhombicubeoctahedron.

Rhombicubeoctahedron

Image by Tilman Piesk, licensed under CC BY 4.0


Consider the red squares and yellow triangles:

< a, b | a^4, b^3, (a*b)^2 >

This is yet another presentation of S4. We have different presentations of the same abstract group, yet they have clear geometric meaning.


6. Truncated Cubeoctahedron.

Truncated Cubeoctahedron

Image by Tilman Piesk, licensed under CC BY 4.0


The truncated cuboctahedron has twelve squares, eight hexagons, six octagons and 48 vertices. So we need a group of order 48. If we tried to use a generator of order four and another of order two, we would have the following relators: a^4, b^2, (ab)^4, (ab)^3. But if (ab)^3 is the identity, then (ab)^4 = a*b = identity.

Exercise 3: What group do you get with the above generators? Why is this not an acceptable assignment of generators to edges if we want a Cayley graph?

Notice that every vertex has three edges. What happens if we use three generators of order two? In order to make sure to label each edge in a circuit properly, let’s use the following definition:

“a” is an edge that is adjacent to a square and a hexagon. “b” is an edge that is adjacent to a hexagon and an octagon. “c” is an edge that is adjacent to a square and and octagon.

This assignment gives the following presentation:

< a, b, c | a^2, b^2, c^2, (ac)^2, (ab)^3, (c*b)^4 >

Since we have three generators, our GAP code must be modified to use a free group of rank 3.

gap> f := FreeGroup(3);
gap> a := f.1;
gap> b := f.2;
gap> c := f.3;
gap> rels := [a^2, b^2, c^2, (a*c)^2, (a*b)^3, (b*c)^4];
gap> G := f/rels;
gap> Print("group: ", StructureDescription(G), "   order: ", Order(G), newline);

This gives the full octahedral group: C2 x S4, with order 48.


7. Snub Cube.

Snub Cube

Image by Tilman Piesk, licensed under CC BY 4.0


Using a red square, a yellow triangle and a blue edge, we get presentation:

< a, b, c | a^4, b^3, c^2, (abc) >

Exercise 4: Verify this works using GAP.


8. Truncated Dodecahedron.

Truncated Dodecahedron

Image by Tilman Piesk, licensed under CC BY 4.0


Another easy one:

< a, b | a^3, b^2, (a*b)^5 >

You should get the alternating group A5, the rotation group of the dodecahedron.


9. Truncated Icosahedron.

Truncated Icosahedron

Image by Tilman Piesk, licensed under CC BY 4.0


Once again, the obvious presentation should work.

< a, b | a^5, b^2, (a*b)^3 >


10. Rhombicosidodecahedron.

Rhombicosidodecahedron

Image by Tilman Piesk, licensed under CC BY 4.0


Red pentagons and yellow triangles.

< a, b | a^5, b^3, (a*b)^2 >

Another presentation of A5.


11. Truncated Icosidodecahedron.

Truncated Icosidodecahedron

Image by Tilman Piesk, licensed under CC BY 4.0


This polyhedron has 120 vertices, the most of any Archimedean solid.

Exercise 5: Find the group presentation suggested by this polyhedron. (Hint: you will need three generators of order two. The group will be C2 x A5, the full symmetry group of the icosahedron or dodecahedron).


12. Snub Dodecahedron.

Truncated Icosidodecahedron

Image by Tilman Piesk, licensed under CC BY 4.0


This nice rendering clearly suggests the presentation.

Exercise 6: give the presentation and the corresponding group.


Further reading

One of the very best resources for exploring these topics in more detail is the classic book by Coxeter and Moser [6].


References:

  1. Maschke, H. “The representation of finite groups by Cayley color diagrams”, Amer. J. Math. 1896, Vol 18, p 156-194.
  2. Wikipedia, “Archimedean solid” https://en.wikipedia.org/wiki/Archimedean_solid. We use twelve images by Tilman Piesk in this article. These are all part of a Wikipedia series on Platonic, Archimedean and Catalan Solids https://commons.wikimedia.org/wiki/Category:Platonic,_Archimedean_and_Catalan_solids_with_direction_colors.
  3. The GAP System website: https://www.gap-system.org/.
  4. Wikipedia, “Archimedean graph” https://en.wikipedia.org/wiki/Archimedean_graph.
  5. N. S. Wedd, “Cayley Diagrams drawn on Platonic Solids” http://www.weddslist.com/groups/cayley-plat/index.html.
  6. Coxeter, H.S.M, Moser, W.O.J. Generators and Relations for Discrete Groups, Springer-Verlag, 1980.


Answers to exercises:

Ex. 1: It is not possible to color the squares with two different colors properly. For example, suppose we needed red and green squares to meet at each vertex. If we try to color the rectangles adjacent to a triangle, this cannot be done.

Ex. 2: There is no way to color the faces of a cubeoctahedron so that there are three mutually non-touching squares.

Ex. 3: < a, b | a^4, b^2, (a*b) > is the cyclic group C2. The truncated cubeoctahedron has 48 vertices. A Cayley graph for C2 has 2 vertices.

Ex. 4: GAP confirms that group: the presentation gives the symmetric group S4, with 24 elements.

Ex. 5: < a, b, c | a^2, b^2, c^2, (ac)^2, (ab)^3, (b*c)^5 >.

Ex. 6: < a, b, c | a^5, b^3, c^2, (abc) >, which is A5.