This is part of live presentation series called Mathematical Games in which we explore a variety of games and puzzles using Wolfram Language. In this episode, we explore games that involve space groups and filling space.
Watch on YouTube: https://www.youtube.com/watch?v=YQRHsnd9yCA
demonstrations.wolfram.com
demonstrations.wolfram.com
Many Demonstrations deal with crystals, tiling and space groups.
230 Space Groups
230 Space Groups
There’s a nice free poster of the space groups available. MaXrd is good package of programs for space groups.
Terrence Tao and SMBC
Terrence Tao and SMBC
Also, a few days ago, Terrence Tao teamed up with SMBC to give a 5-part exploration of how math is perceived, before an extended discussion of sphere packing. It’s always great when you pick a topic for a talk... and one of the most famous mathematicians in the world (Terrence Tao) has been looking at the same item. The 5-part comic is worth a read.
Lattices can be tricky
Lattices can be tricky
For example, a 4×4×4 lattice.
In[]:=
cube=Tuples[{-3,-1,1,3},{3}]
Out[]=
{{-3,-3,-3},{-3,-3,-1},{-3,-3,1},{-3,-3,3},{-3,-1,-3},{-3,-1,-1},{-3,-1,1},{-3,-1,3},{-3,1,-3},{-3,1,-1},{-3,1,1},{-3,1,3},{-3,3,-3},{-3,3,-1},{-3,3,1},{-3,3,3},{-1,-3,-3},{-1,-3,-1},{-1,-3,1},{-1,-3,3},{-1,-1,-3},{-1,-1,-1},{-1,-1,1},{-1,-1,3},{-1,1,-3},{-1,1,-1},{-1,1,1},{-1,1,3},{-1,3,-3},{-1,3,-1},{-1,3,1},{-1,3,3},{1,-3,-3},{1,-3,-1},{1,-3,1},{1,-3,3},{1,-1,-3},{1,-1,-1},{1,-1,1},{1,-1,3},{1,1,-3},{1,1,-1},{1,1,1},{1,1,3},{1,3,-3},{1,3,-1},{1,3,1},{1,3,3},{3,-3,-3},{3,-3,-1},{3,-3,1},{3,-3,3},{3,-1,-3},{3,-1,-1},{3,-1,1},{3,-1,3},{3,1,-3},{3,1,-1},{3,1,1},{3,1,3},{3,3,-3},{3,3,-1},{3,3,1},{3,3,3}}
In[]:=
Graphics3D[Point[cube]]
Serhiy Grabarchuk noticed that each of these had six points at distance 6.
This is now called the Grabarchuk graph.
This is now called the Grabarchuk graph.
But what does it look like in 2D? Up until a week ago, no symmetric embedding was known.
Then I noticed the “face” vertices (in blue) made the Nauru graph.
Then I noticed the “face” vertices (in blue) made the Nauru graph.
And with that, I found an order-4 embedding. It’s always great when you pick a topic for a talk... and one of the most famous mathematicians in the world (Donald Knuth) has been looking at the same item.
Space-filling Polyhedra
Space-filling Polyhedra
Years ago, I knew there were space-filling polyhedra, such as cubes.
The Kepler packing of spheres relates to both the rhombic dodecahedron and truncated octahedron.
The Kepler packing of spheres relates to both the rhombic dodecahedron and truncated octahedron.
There one more parallelohedron as identified by Fedorov, the elongated dodecahedron. Here’s code I’ve rewritten many times.
The Engel-38, Peter Engel’s Geometric Crystallography
The Engel-38, Peter Engel’s Geometric Crystallography
Starting about 30 years ago, I knew there were weirder polyhedra.
The record setter had 38-faces. Here was the best available picture:
The record setter had 38-faces. Here was the best available picture:
Later, Branko Grünbaum and G. C. Shephard made a slightly better picture in Tilings with congruent tiles.
Still not enough for me to understand it.
Still not enough for me to understand it.
I had no idea how to make a 3D picture of it.
Moritz W. Schmitt, On Space Groups and Dirichlet–Voronoi Stereohedra
Moritz W. Schmitt, On Space Groups and Dirichlet–Voronoi Stereohedra
A new paper by Moritz W. Schmitt, On Space Groups and Dirichlet–Voronoi Stereohedra, seemed to have most of an answer on page 135.
Within space group IT(214) generating grid point (427/6984, 761/6984, 1421/6984), gives the 38-sided space-filling polyhedron can be generated. The author also supplies the program https://github.com/moritzschmitt/plesiohedron.
Within space group IT(214) generating grid point (427/6984, 761/6984, 1421/6984), gives the 38-sided space-filling polyhedron can be generated. The author also supplies the program https://github.com/moritzschmitt/plesiohedron.
I couldn’t get the program to run. So, faced with a tough problem, back in 2017, I asked other people to solve it for me.
In 2022, Anders Kaseorg posted an answer for the vertices.
Plesiohedra Code
Plesiohedra Code
So, I wanted code for generating all the plesiohedra in the Schmitt paper. I figured maybe I could browbeat an AI into writing the code for me. And since I also had some finalized answers, I could check for correctness. First off, I got data for 3903 plesiohedra from the Schmitt paper. ( See https://community.wolfram.com/groups/-/m/t/3688732 . )
I could open up that compressed form. Imagine 50 pages of code.
MaXrd is good package of programs for space groups, as I mentioned.
MaXrd is good package of programs for space groups, as I mentioned.
How many rotations are in each space group? I needed to know that later on.
JUST IN CASE
JUST IN CASE
A lot of this data is large. Just in case I need to shrink this notebook, I put code and data at Wolfram Community,
Spacefilling Polyhedra, https://community.wolfram.com/groups/-/m/t/3688732 .
Spacefilling Polyhedra, https://community.wolfram.com/groups/-/m/t/3688732 .
Back to talking
Back to talking
A lot of this data is large. Just in case I need to shrink this notebook, I put code and data at Wolfram Community,
Spacefilling Polyhedra, https://community.wolfram.com/groups/-/m/t/3688732 .
Spacefilling Polyhedra, https://community.wolfram.com/groups/-/m/t/3688732 .
The following means that I found 16 4-sided space-fillers and 1 38-sided space-fillers:
Engel 38-sided space-filling polyhedron
Engel 38-sided space-filling polyhedron
The last one is Engel-38
So, to solve this, I used the tried and true method of giving up and asking for help: 38-sided space-filling polyhedron. After five years, Anders Kaseorg posted an answer with approximate coordinates. Turns out the Moritz Schmitt method worked. With those approximate answers, I was able to use various WL tricks to get exact coordinates. The resource functions IntegerChop (multiply by 6984) and ReflectPoints helped to create 38 midplanes.
And we’ll get back to that. Now that I had this one, I’ve wanted to use the Schmitt paper to generate ALL of the plesiohedra.
Tetrahedra in Schmitt
Tetrahedra in Schmitt
The tetrahedra found in the Schmitt paper.
We can find their tiling cells.
Space-Filling Tetrahedra
Space-Filling Tetrahedra
Already, we seem to be missing some.
There are five known space-filling tetrahedra when mirror images are not allowed. Hill (1896), Baumgartner (1968), and Sommerville (1923) each enumerated four of the five.
Goldberg (1972) was the first to list all five. He also studied dissections of triangular prisms and found three basic ways in which a prism could be split into identical tetrahedra, if mirror images are allowed. Each of these three methods leads to infinite families of tetrahedra. All three methods are represented in the five tetrahedra listed here.
Whether other space-filling tetrahedra exist is a long unsolved question that dates back to Aristotle.
Five sided space-fillers
Five sided space-fillers
There are a lot of repeats in the data
I need to do another overnight run to add transition cells and max dihedral angles.
Triangles and Quadrilaterals
Triangles and Quadrilaterals
Any triangle can tile the plane. Drag the blue points to make a new triangle.
Six-sided space-filling polyhedra
Six-sided space-filling polyhedra
We get a lot of cuboids in the full list
The 4th one is wrong.
The Michael Goldberg Hexahedra
The Michael Goldberg Hexahedra
In the 1970’s, Michael Goldberg tried to enumerate the polyhedra of various types. Here are his hexahedra.
Pentagons
Pentagons
On July 29, 2015, a 15th type was announced by Casey Mann, Jennifer McLoud, and David Von Derau. This Demonstration gives exact solutions for all 15 families.
Seven-sided space-filling polyhedra
Seven-sided space-filling polyhedra
Two of the tiling pentagons are sporadic,
Because of similarity problems, we only select those with a different graph structure. I should have kept track of dihedral angles.
I could have shown a much longer list to illustrate how many of the pentagonal prisms are missing.
I could have shown a much longer list to illustrate how many of the pentagonal prisms are missing.
I also need to keep track of the number of group elements and favor the smaller cells.
The Goldberg Heptahedra
The Goldberg Heptahedra
From 1976, the Goldberg list of heptahedra.
Eight-sided space-filling polyhedra
Eight-sided space-filling polyhedra
Because of similarity problems, we only select those with a different graph structure. I should have kept track of dihedral angles.
Goldberg’s space-filling octahedra
Goldberg’s space-filling octahedra
Goldberg’s 1979 listing of octahedra.
Dihedral Angle
Dihedral Angle
Since I’ve mentioned dihedral angle a few times.
Those faces look pretty flat.
But apparently not quite flat.
Nine-sided space-filling polyhedra
Nine-sided space-filling polyhedra
Because of similarity problems, we only select those with a different graph structure. I should have kept track of dihedral angles.
Hilbert’s 18th: Building up of space from congruent polyhedra
Hilbert’s 18th: Building up of space from congruent polyhedra
1. How many space groups are there? Answer: 230
2. Are there tilings where two of the tiles cannot be related by the underlying group?
3. Densest sphere packing.
2. Are there tilings where two of the tiles cannot be related by the underlying group?
3. Densest sphere packing.
A few answers are known for #2, but there is barely a start on a complete solution.
There are two solutions for #2 just in the pentagons. Here’s the image from Forbes ... by me.
Ten-sided space-filling polyhedra
Ten-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit to 24 at a time.
Voronoi diagram == Dirichlet region
Voronoi diagram == Dirichlet region
In a 2D set of points, the region of control for a point is called the Voronoi diagram or Dirichlet region or Thiessen polygon.
Joining the points that share a regional edge gives a Delaunay triangulation.
They are not named after the first to describe them, René Descartes in 1644.
Joining the points that share a regional edge gives a Delaunay triangulation.
They are not named after the first to describe them, René Descartes in 1644.
Eleven-sided space-filling polyhedra
Eleven-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit to 24 at a time.
Twelve-sided space-filling polyhedra
Twelve-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit them.
Thirteen-sided space-filling polyhedra
Thirteen-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit to 24 at a time.
Fourteen-sided space-filling polyhedra
Fourteen-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit to 24 at a time.
Fifteen-sided space-filling polyhedra
Fifteen-sided space-filling polyhedra
The polyhedra are getting stranger.
Sixteen-sided space-filling polyhedra
Sixteen-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit to 24 at a time.
Seventeen-sided space-filling polyhedra
Seventeen-sided space-filling polyhedra
The degenerate polyhedra are too much, so we limit to 24 at a time.
18-sided through 20-sided space-filling polyhedra
18-sided through 20-sided space-filling polyhedra
Starting to group them.
21-sided to 24-sided space-filling polyhedra
21-sided to 24-sided space-filling polyhedra
The polyhedra get smaller and smaller faces.
25-sided to 29-sided space-filling polyhedra
25-sided to 29-sided space-filling polyhedra
The polyhedra are drifting to a certain shape.
The Gyroid
The Gyroid
In 1970, Alan Schoen discovered gyroids, “infinite periodic minimal surfaces without self-intersections”[1]. One feature of this unusual surface is its many channels, which you can see by rotating the object.
This surface uses space group IT(214).
cos(x) sin(y)+sin(x) cos(z)+cos(y) sin(z) ==0
This surface uses space group IT(214).
cos(x) sin(y)+sin(x) cos(z)+cos(y) sin(z) ==0
Of the 230 space groups, IT(214) is considered the most complicated. In the words of Steve Dutch, “This group looks chaotic, but visualizing it is easy. All you do is sit there until little beads of blood form on your forehead.”
I co-wrote a book with Alan Schoen.
30 to 38 -sided space-filling polyhedra
30 to 38 -sided space-filling polyhedra
A lot of similarity in the many-sided plesiohedra:
Engel38
Engel38
I worked on getting tighter cells.
Tight Engel
Tight Engel
Unsolved
Unsolved
1. What is the enumeration of distinct n-sided polyhedra families, for 4 to 38 sides?
2. What are all of the sporadic space-fillers that do not belong to a family? I know of 4.
a. two sporadic tetrahedra
b. two sporadic pentagonal prisms.
3. In each family, what is an ideal realization?
4. What polyhedra did Goldberg miss?
2. What are all of the sporadic space-fillers that do not belong to a family? I know of 4.
a. two sporadic tetrahedra
b. two sporadic pentagonal prisms.
3. In each family, what is an ideal realization?
4. What polyhedra did Goldberg miss?
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Mathematical Games: space groups and filling space
by Ed Pegg
Wolfram Community, STAFF PICKS, April 16, 2026
https://community.wolfram.com/groups/-/m/t/3690751
by Ed Pegg
Wolfram Community, STAFF PICKS, April 16, 2026
https://community.wolfram.com/groups/-/m/t/3690751