An Aperiodic Monotile


I tried to put up a dirty anemone script to put tiles down:

There are holes and incompatible gaps.
Simply putting down a tile while “it fits” is not enough. You have to check the next possible positions of future tiles to see whether or not you are going to make it impossible.

So… the tiler guy on the construction yard have a tricky task! :rofl:

Is there a smart way to check everything is going to be good, while putting down tiles one by one?
If one have to follow a printed/paper layout while putting tiles, we already have lost half of the usefulness of the aperiodic tile… or not?

1 Like

Nice to see this subject is still ongoing !

A few weeks ago I tweaked @DanielPiker and @bob.h.mackay algorithms to be able to generate a larger patch of tiles for any configuration.
I forgot to post and I realize this heavily uses my Smart Merge and I really don’t have time/patience to replace all of those, so if anyone want to have a look at this awful code, here it is !

Clipper is required only at the end for the offset.

magicteddy.gha (70.5 KB) (37.9 KB)


That’s a good question.
Putting together a large patch by manually placing individual tiles without a hierarchical approach certainly becomes a very tricky puzzle.
For Penrose tiles there are the Ammann bars, as mentioned earlier in this thread, which can be used to decorate the tiles and determine the tiling.
For the monotile though (either the one with flips or this new one) there isn’t anything similar… yet!
The preprint only went up a few hours ago though. I remain hopeful that something like this will be found.

1 Like

Hello everyone,

First time I am joining this blog.

Please find here below some remarks regarding aperiodic hats tiling arrangement.

What is your opinion ?

Is there a way to construct the octagon pattern on the right other than by means of the mapping from the completed aperiodic hat tiling?

The aim is rather to use the octagon pattern in order to construct all possible version of aperiodic hat tiling.

Nevertheless, reconsidering this evening the octagon hypothesis, please find here below an example where the rule do not apply (something like threefold arrangement, where the red, blue and orange 7-hats-sets (also called H7) have some hats in common :
Therefore the construction I have proposed does not reflect all possible hats arrangements ! It looks again more complicated !

Sorry …

And this one

1 Like

Yes … But apart the “Hat” tile, the “Comma” tile obtained as variation of the Hat looks simplier. Variations here below were indicated by Smith’s team and recalled by Daniel Piker on 1st April :
It looks that the use of the “Comma” tile - when trying - is enough to fill the space same as the “Hat” tile, ***but without the need to flip several tiles in order to succeed in. ***

I am trying at the moment to do so with apparently some success. Nevertheless if the fact is proven, we may consider “Comma” tile as the true aperiodic tile - that do not need any flips !

Perhaps equations can be used to find solutions for the drawing of this pattern, we start with straight’s lines and different start points.

1 Like

The comma can also tile periodically though.

1 Like

I’m not sure if this is a trip report, or a cry for help, but I had a go at making the spectre pattern from whole cloth, to see how it went. I had some successes, but uncovered more mysteries.

Here was my result: (32.9 KB)

Canvas at 09;43;40

The algorithm is the elementary approach of positioning each of the subunits explicitly to form one generation, and then using the result for the next generation. The grasshopper file also allows for contouring the edge of the tiles to some arbitrary curve.

The Hat pattern was easier, because the pattern is based on a simple triangular grid. In the case of the spectre, it turns out that all the vertex coordinates can be expressed as

x or y = (n + r * sqrt (3)) / 2

where n and r are integers. This follows by induction: starting from the origin, all possible moves are either by a distance of 1 along one of the axes, or by a distance of 0.5 along one axis and sqrt(3)/2 along the other. Following a ‘turtle graphics’ path from the origin to any point is then a sum of all these transitions. Rotating a component about a vertex does not change the argument.

Dealing with integers, rather than irrational numbers, gives a much simpler handling of positioning, and is rather like using complex numbers and the complex plane.

Each generation of the expansion results in a component that is rotated and mirrored relative to the previous generation.

Each generation consists of eight uses of the previous generation.

  • One component is the previous generation, unchanged, at the origin
  • One component is the previous generation with one of its eighths removed
  • One component becomes the one to be omitted in the next generation
  • One component is adjacent to the first component, and the two form the ‘mystic’ pattern, which is bilaterally symmetrical and could be flipped over to form a variation in the pattern
  • the other four are identical with the previous generation.

At each expansion, all the components need to be rotated, each differently, and the way this is done is different for alternate generations, i.e. there are only two ways to do it.

The complexity is in the positioning of the subcomponents to form each generation, and this is perhaps the basis of my question. In principle, there is a geometric expansion ratio at each generation, being some function of sqrt (15), but in practice this probably applies only after many generations; the first few generations have much more spotty positioning and there appears to be no simple way to get the coordinates used at one generation to be simply multiplied by some factor to give the coordinates for the next. Or perhaps to take the coordinates in the limit and divide them down.

Am I missing something here, or is positioning these subcomponents really tricky? Perhaps I am using the wrong origin, and a simple shift in origin would suddenly make all the positioning geometric? I use the bottom corner of the initial piece as the origin. Perhaps some other origin would simplify everything. Anyway, a fun exercise!


The integer notation for the vertex coordinates is brilliant

Yes, but it begs the question as to how to come up with these integers, which get large quickly!

I actually did this by first using sliders on x and y, to get approximate positioning, then using the ‘odometer’ component on x and y to nudge the shape into place and get a few more decimal places, and finally a Perl script to explore the whole ‘complex plane’ to find the pairs of integers that gave the right result. Ugly and painstaking!

So my question above was as to whether there is a better way, and how the big boys did it.

Ultimately, for artistic purposes, what I have done (which went one more generation than what you see) is way more than is actually needed. I just wanted to understand whether there is in fact a simple expansion ratio that can be applied to coordinates or whether it really is that messy.



Two Numberphile videos have just dropped: Discovery of the Aperiodic Monotile - Numberphile - YouTube and A New Tile in Newtyle - Numberphile - YouTube. Nothing technical, but a nice interview with Craig Kaplan.


Hi Bob,
did you found a better way / logic behind this in the meanwhile ?

Hi Chris,

No, I’m afraid I did not investigate further. I only needed a few levels of recursion for my projects, since the number of cells explodes rapidly, so I did not go further in trying to work out a better algorithm.


1 Like