Iterating Polyominoes to Create Fractal Reptiles
Year: 2025 Authors: Robert Fathauer
Core claim
Iterating tessellating polyominoes under allowed rotations and scalings yields a wide range of fractal reptiles that tessellate at each stage and become self-replicating in the limit.
Topics
fractal reptiles, polyomino iteration, tessellations, space-filling tiles, 3D sculpture
Domains
geometry, fractal geometry, tiling theory, integer lattice transformations, mathematical art, generative design, tessellation art, sculptural forms
Methods
iterative construction, grid rotation and scaling, translation patches, lattice vector analysis
Media
square-grid polyominoes, figures, 3D cube assemblies
Paper text
The text below is the locally extracted OCR/Markdown version of the paper. Raw PDF files remain local and are not published here.
Bridges 2025 Conference Proceedings
Iterating Polyominoes to Create Fractal Reptiles
Robert Fathauer
Tessellations Company, Apache Junction, Arizona, USA; robertfathauer@gmail.com
Abstract
I describe a method for creating self-replicating fractal tiles based on iterating tessellating arrangements of polyominoes. In general, while these tiles will tessellate at every stage, they will only be self replicating in the limit of an infinite number of iterations. I further analyze all of the possibilities through heptominoes. A wide range of fractal forms result, some familiar and some not. A space-filling fractal tile and a spatial development of the twindragon tile are described as well.
Introduction
A self-replicating tile, or “reptile”, is a tile that can be tiled by smaller copies of itself, as well as tiling the plane. The simplest example is a square, which can be tiled by four smaller squares. There are a variety of well-known polygonal reptiles [2][3], including the triangle-based Sphinx. Denote by the smallest number of smaller tiles a reptile can be divided into. The linear scaling factor is then . For a square, . A square can also be divided into 9 smaller squares, 16, etc., but 4 is the smallest possible number.
When fractals were identified as a distinct branch of geometry, it was recognized early on that fractal reptiles could be formed by iteration. In “The Fractal Geometry of Nature”, Mandelbrot shows three examples based on four-fold polyominoes [5]. He creates these with curves and describes them as “quadric Koch islands”. Reptiles can be constructed from any map that transforms the lattice of integer vectors to itself [1]. Iterated function systems and integer matrices have been employed for generating reptiles that in general possess fractal boundaries [1][4][5][6][7].
While the theoretical framework is well established, the methods are not very accessible for non-mathematicians, and it can be difficult to find a good variety of examples. The goal of this paper is to present an intuitive graphical approach to creating a variety of fractal forms, with an emphasis on the most interesting and beautiful examples. I present a number of examples I haven’t seen in the literature.
Approach
The three regular tessellations are made up of squares, equilateral triangles, and hexagons. Grids based on these access a wide variety of fractal reptiles derived from polyominoes, polyiamonds, and polyhexes. These polyforms are constructed by edge-to-edge arrangement of squares, equilateral triangles, and regular hexagons, respectively. The mapping of unit vectors mentioned above can be explored by examining overlapping grids. For space reasons, I will only discuss the polyomino case here, leaving the polyiamond and polyhex cases for a later paper. The polyomino case is easier to treat due to the fact that Cartesian coordinates are a grid of unit squares, and trigonometric functions are defined in reference to this grid.
Finding the particular linear transformations that allow grids to be mapped onto themselves will elucidate which scaling factors and angles of rotation should be explored. In Figure 1(a), the unit
Fathauer
square grid is shown along with a second grid expanded by and rotated by the arctangent of . Note that every grid point on the larger lattice coincides with a point on the unit lattice. The values of and map the vectors to . The allowed combinations for various can be visualized using concentric circles of radius , as shown in Figure 1(b). The circles intersect the unit grid at angles that are allowed for the particular circle diameter. Alternatively, a simple numerical approach is to look at pairs of the variables and shown in Figure 1(a). The allowed values for through 20 are shown in Table 1.
Figure 1: (a) Example of a scaling and rotation of the unit square grid that results in a regular array of shared points. (b) Circles with various radii of magnitude and allowed vectors for transforming square-based patches of tiles for angles between and .
Table 1: Allowed values of through 20 for the case of polyominoes (square grid), with associated angles rounded to the nearest tenth degree. Angles are given for the first quadrant only.
| n | 2 | 4 | 5 | 8 | 9 | 10 | 13 | 16 | 17 | 18 | 20 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| √n | √2 | 2 | √5 | √8 | 3 | √10 | √13 | 4 | √17 | √18 | √20 |
| a | 1 | 2 | 2 | 2 | 3 | 3 | 3 | 4 | 4 | 3 | 4 |
| b | 1 | 0 | 1 | 2 | 0 | 1 | 2 | 0 | 1 | 3 | 2 |
| arctan(a/b) | 45° | 0° | 63.4° | 45° | 0° | 71.6° | 56.3° | 0° | 76.0° | 45° | 63.4° |
| arctan(b/a) | 45° | 90° | 26.6° | 45° | 90° | 18.4° | 33.7° | 90° | 14.0° | 45° | 26.6° |
I will use positive angles to denote counterclockwise rotation from the axis, and negative angles to indicate clockwise rotation, with angles lying between and . The angles between and are specified in Table 1, but it should be understood that all angles satisfying the ratio are included. For example, for there are eight allowed angles, with approximate values of , , , and . Different fractals, not all of which will tile, may result from iterating a given polyomino by these different angles.
The method I used to generate the reptiles is illustrated in Figure 2 for the case of the X pentomino. Starting with a square with lower left corner at the origin, the pentomino is generated by translating
Iterating Polyominoes to Create Fractal Reptiles
copies one unit in each of four directions. With there is an allowed rotation angle of . Rotating the starting polyomino by that amount about the origin and scaling by yields a smaller X with vertices that coincide with those of the starting square. Scaling and translating four copies of this by one unit in each of four directions yields the patch of Figure 2(b). After another iteration, Figure 2(c) is obtained, with Figure 2(d) showing the tile after six iterations. At this scale, it’s essentially indistinguishable from the fractal reptile that would be obtained after an infinite number of iterations. The fractal tile tessellates the plane and can be subdivided into five smaller copies of itself.
Figure 2: Iterating the pentomino by successively scaling by and rotating by . (a) The starting pentomino, (b) the first iteration, (c) the second iteration, and (d) the sixth iteration.
As noted previously using other construction methods, mirroring between iterations can result in different fractal reptiles [4]. Note that rotating and then mirroring is equivalent to mirroring alone by a different angle. For example, the transformed grid in Figure 1(a), obtained by rotating by could also be obtained by mirroring about a line at half that angle.
Codifying the construction steps:
- Select a starting polyomino, consisting of squares, that tiles the plane by translation. Placing a single square at the origin, build the polyomino by a combination of translations and/or reflections of copies of that starting square.
Fathauer
- Scale by about the origin and either rotate or reflect the polyomino according to allowed angles from Table 1. Form the first iteration by arranging copies of the polyform in identical fashion to that by which the polyomino was built.
- If the first iteration also tiles, additional iterations may be performed in the same manner. I.e., repeat step 2 as many times as desired using the current iteration. In general, while the tile will tessellate at every stage, it will only be self replicating in the limit of an infinite number of iterations.
Examples
An infinite number of fractal reptiles can be formed in this manner. In addition, infinite families of fractal reptiles can be constructed, for example from bar polyominoes. In Figure 3, I show the first three members of this family. It is evident that the allowed values of are those of the form , with angles of , and values of , where is a positive integer. Note the first one forms the same fractal as the twindragon curve (Figure 4). The second-generation polyomino, consisting of staggered bars, does not possess reflection symmetry, so there are two variants of these fractals, related by an overall reflection. Reflecting these polyominoes between iterations results in parallelograms in the limit, as shown for the domino case in Figure 5(d).
Figure 3: Alignment of bar polyominoes for the first three members of an infinite family of fractal reptiles, with (a) one square slide between adjacent bars, (b) two squares, and (c) three squares.
Figure 4: Fractal reptiles resulting from sliding bar polyominoes of length 2, 5, and 10.
As demonstrated by Figure 4, fractal reptiles become increasingly less interesting visually as increases. This means it’s manageable to examine all or nearly all of the most interesting cases for different polyforms. In the case of polyominoes, Table 1 shows that allowed values are 2, 4, 5, 8 …
Iterating Polyominoes to Create Fractal Reptiles
There is a single domino, there are five tetrominoes, and there are 12 pentominoes. There are over 300 octominoes, which is an impractical number to examine manually, but all of the possibilities through can readily be considered, as and are not allowed.
The twindragon is the only fractal tile that can be generated by the domino, as shown in Figure 5. Translating a square creates the single domino. There are three distinct edge-to-edge ways to translate a domino, all of which create tessellating tetrominoes. Note that the square and bar do not have the required vector length. The Z tetromino is thus the only option for iterating. Three iterations past the Z tetromino stage are shown in Figure 5, without reflecting (c), and with reflecting (d). To describe the mirroring in more detail, the domino is rotated clockwise, then reflected about a vertical line, and then translated. In the next iteration, the Z tetromino is rotated , reflected, and then translated, etc. In the case of the domino, the reflected case is not interesting, as it forms a parallelogram in the limit.
Figure 5: (a) Translation of a square creates a domino. (b) The square and bar that can be formed by translating a scaled domino have the wrong vector lengths. (c) Iterating the staggered domino alignment leads to the twindragon tile. (d) Introducing mirroring leads to a parallelogram.
For tetrominoes, with and or , a unit step in the starting tetromino must transform to two units in the first iteration. The square would clearly work, but the reptile is non-fractal. As shown in Figure 3, the bar tetromino will not work. The Z tetromino, when scaled by and rotated by is identical to the domino after two iterations, meaning it also forms the twindragon tile. Examining the single translation-only tilings for each of the L and T tetrominoes readily shows they do not possess translations of two units in two different directions, as shown in Figure 6. Thus no new fractal tiles are possible with tetrominoes.
For pentominoes, the X and bar pentominoes are discussed above. Examining the possibilities for the remaining ten pentominoes, three are found to allow fractal reptiles, the Z, the P, and the Y. For the Y pentomino, which lacks rotational symmetry, eight distinct fractals are found, as shown in Figure 7. The P pentomino has exactly the same translations and generates eight more distinct fractal reptiles. These are not shown but are somewhat similar, though blobbier. Since the Z pentomino has two-fold rotational symmetry, any reptiles for values of in the second or third quadrants will also be found in the first and fourth quadrants. As a result, there are four distinct reptiles, shown in Figure 8. The dragon fractal of
Fathauer
Figure 8(b), which I haven’t seen anywhere else, is especially attractive visually. The manner in which it tiles the plane is illustrated in Figure 9. For the X pentomino, with four-fold rotational symmetry, there are only two. The reptile generated by mirroring between iterations has a similar overall appearance to the reptile of Figure 2.
Figure 6: Translating the tetromino (a) and tetromino (b) as required for tessellating does not involve moves of two units in and , as required to iterate them.
Figure 7: The eight distinct fractal reptiles allowed by the pentomino. The reflected cases are distinct because this pentomino lacks mirror symmetry.
Iterating Polyominoes to Create Fractal Reptiles
Extension to Three Dimensions
The technique described above works analogously in three dimensions. In the case of polyominoes, the extension is straightforward, with tiles based on connected cubes (polycubes) rather than squares and the addition of the axis. Solid fractal reptiles are much harder to visualize, but simple examples can be readily understood.
(a) Rotate
(b) Rotate
(c) Reflect
Figure 8: The four distinct fractal reptiles allowed by the Z pentomino.
(d) Reflect
I show an example of a three-dimensional reptile in Figure 10. It’s based on a 27-cube in the form of a cube measuring three units on a side. In the first iteration, three face-centered cubes are removed from adjacent faces and attached to the opposing faces, resulting in a tile that tessellates in the same manner as a cube. After four iterations a solid is obtained that is reminiscent of a fourth-level Menger Sponge, but unlike the Menger Sponge, this solid tessellates space.
Figure 9: A portion of the plane tiled by the reptile of Figure 8 (b),
Figure 10: A three-dimensional fractal reptile after one and four iterations.
Fathauer
One can also generate sculptural forms based on fractal reptiles by spatially developing a two-dimensional tiling. In Figure 11, I replaced the squares of Figure 5(c) with cubes, attaching successive generations. The starting point is a single cube, progressing to the domino, progressing through the four steps in Figure 5(c), and through eleven iterations in all. The layer of smallest cubes approximates the twindragon.
Summary and Conclusions
I described a method for iteratively arranging tessellated polyominoes to form fractal self-replicating tiles. All possibilities for polyominoes up to order seven were examined, and examples shown here reveal a broad range of forms. Similar constructs are possible using polyhexes and polyiamonds. In addition, the method is readily extended to three dimensions, resulting in fractal space-filling tiles. Attractive sculptures can be formed as well by spatial development of fractal reptiles.
Figure 11: A spatial development of the domino-based twindragon reptile, carried through twelve generations, shown from two different angles.
References
[1] C. Bandt. “Self-Similar Sets 5. Integer Matrices and Fractal Tilings of .” Proc. American Mathematical Society, vol. 112, 1991, pp. 549-563. [2] M. Gardner. “Chapter 19: Rep-Tiles, Replicating Figures on the Plane.” The Unexpected Hanging and Other Mathematical Diversions, Chicago University Press, 1991, pp. 222-233. [3] S. Golomb. “Replicating Figures in the Plane.” The Mathematical Gazette, vol. 48, 1964, pp. 403-412. [4] S. Hinsley. “Self-Similar Tiles and Related Figures.” http://www.stewart.hinsley.me.uk/Fractals/IFS/Tiles/Tiles.php. 2007, 2008, 2016. [5] B. Mandelbrot. “6: Snowflakes and Other Koch Curves.” The Fractal Geometry of Nature, W.H. Freeman and Co., 1977, pp. 50-55. [6] A. Vince. “Replicating Tessellations.” SIAM J. Disc. Math., vol. 6, 1993, pp. 501-52. [7] A. Vince. “Self-Replicating Tiles and Their Boundary.” Discrete & Computational Geometry, vol. 21, 1999, pp. 463-476.