The Drafter Survey

An exhaustive Heesch-number census of polyforms on the [4.6.12] Laves grid


The drafter here is the cell of the [4.6.12] Laves tiling (the kisrhombille): a 30-60-90 right triangle, twelve of which meet at each of the grid's most crowded vertices, and thirty-six of which assemble the grid's regular hexagon. (Naming note: these are the poly-[4.6.12]-tiles of OEIS A197462, joined edge to edge; they are not the classical polydrafters of A056842, whose rule also lets a short leg meet half a hypotenuse, and not polyforms of the Archimedean 4.6.12 tiling of dodecagons, which is this grid's dual.) A shape of n drafters is any edge-connected union of n cells, and the survey asks, for every single one of them: how many times can copies of the shape fully surround it? That count is the shape's Heesch number. Shapes that tile the plane can be surrounded forever; the interesting ones are those that can be surrounded several times and then, provably, never again. The published record for any shape in the plane is 6 coronas (Bošnjak 2020), and this grid is surveyed because it is fine enough to express the known record-holders and their relatives.

Conventions, so every number below means one thing. Heesch numbers are hole-free: each corona together with everything it encloses must be simply connected, and each corona must contain the previous patch in its interior. An entry "= k" is a completed, exhausted search: no (k+1)-th corona exists, and since a tiling shape has coronas of every order, "= k" is simultaneously a proof that the shape does not tile. A ">= k" is only a verified k-corona patch, a lower bound. Searches marked complete ran over all lattice placements in full geometry, twelve orientations, no sublattice restriction.

The census

Every level is enumerated in full, and the free-polyform counts agree with OEIS A197462 at every size, including the large terms (a(21) = 25,475,398; a(22) = 65,416,733; a(23) = 168,277,945; a(24) = 433,705,325; a(25) = 1,119,610,147; a(26) = 2,894,928,713) that Aaron N. Siegel added to the sequence in 2022, which independently validates the enumerator; every holeless shape is then screened with a fast search, and every shape whose best depth lands in the interesting band gets a long re-screen and, if it survives, an exhaustive proof. Sizes 1 to 17 were surveyed first with an older pipeline and were run again on 2026-09-12 with the census settings of the larger sizes (search cap 10, 6-second triage, band 3 to 9, every GPU reject certified by the CPU), so every row below means the same thing. The Heesch ≥ 3 column names every shape of that size with a finite Heesch number of 3 or more, linked to its entry below.

sizeholeless screenedband (3-9)non-tilersHeesch ≥ 3outcome
1100nonethe single drafter tiles the plane.
2300noneall 3 tile the plane (certified periodic tilings).
3300none2 tile the plane (certified periodic tilings); the other one has Heesch number 0.
4900none5 tile the plane (certified periodic tilings); the other 4 have Heesch number 0.
51400noneno 5-drafter shape tiles the plane; their Heesch numbers are 0 (10), 1 (3) and 2 (1), every search complete.
63800none27 tile the plane (certified periodic tilings); the other 11 have Heesch number 0.
77300none2 tile the plane (certified periodic tilings); the others have Heesch number 0 (64), 1 (5) or 2 (2).
817800none32 tile the plane (certified periodic tilings); the others have Heesch number 0 (138) or 1 (8).
938800none15 tile the plane (certified periodic tilings); the others have Heesch number 0 (368), 1 (4) or 2 (1).
1093300none7 tile the plane (certified periodic tilings); the others have Heesch number 0 (888), 1 (37) or 2 (1).
112,13900noneno 11-drafter shape tiles the plane; their Heesch numbers are 0 (2,119), 1 (18) and 2 (2), every search complete.
125,12900none824 tile the plane (certified periodic tilings); the others have Heesch number 0 (4,281) or 1 (24).
1312,09611ph13_10909 (= 3)ph13_10909, Heesch exactly 3, is the smallest Heesch-3 shape on this grid: no size below 13 has a shape in the band. 3 tile the plane (certified periodic tilings); the others have Heesch number 0 (12,057), 1 (34) or 2 (1).
1429,10511pw14_496 (= 3)pw14_496, Heesch exactly 3, the shape the pinwheel generator had produced first. One more shape, ph14_3069_66, ran out of the 6-second budget at 2 coronas; a complete search settles it at exactly 2, and it has no periodic tiling to index 70. 567 tile the plane (certified periodic tilings); the others have Heesch number 0 (28,407), 1 (127) or 2 (3).
1569,59400none38 tile the plane (certified periodic tilings); the others have Heesch number 0 (69,418), 1 (135) or 2 (3).
16167,71510noneThe one band shape is the hat (8 kites, 16 drafters), the aperiodic monotile: it tiles the plane, but never periodically, so no torus test certifies it, and it held 9 coronas until the search budget ran out. It has no finite Heesch number. 453 tile the plane (certified periodic tilings); the others have Heesch number 0 (166,772), 1 (482) or 2 (7).
17403,25111pw17_87489 (= 3)pw17_87489, Heesch exactly 3, also produced by the pinwheel generator. No 17-drafter shape tiles the plane; their Heesch numbers are 0 (403,086), 1 (162) and 2 (2), every search complete.
18972,5511510noneevery band shape is a tiler
192,343,83611ph19_465652 (= 3)the single band shape is ph19_465652, Heesch 3
205,658,732261pk10_9509 (= 3)the one non-tiler is pk10_9509, already known from the polykite survey; two independent pipelines agreeing on it checks both
2113,670,078110nonenothing above Heesch 2
2233,078,30562ph22_12261039 (= 5)
ph22_172437 (= 3)
ph22_12261039 (Heesch 5) and ph22_172437 (Heesch 3)
2380,135,06511ph23_22308527 (= 3)ph23_22308527 (Heesch 3); zero shapes even reached the corona cap, against four at n=22. This one shape was lost to a log-encoding bug during extraction and recovered by re-enumerating the level and matching its part by fingerprint
24194,424,6359400noneall 940 band shapes are periodic tilers: 713 tile isohedrally and 236 anisohedrally (torus index 6 or 12), each certified by an explicit periodic tiling found by the engine and re-found by an independent checker; the flat depth histogram was slow tilers, not deep non-tilers
25472,271,26932ph25_292025025 (= 4)
ph25_103717005 (= 3)
two non-tilers: ph25_292025025 (Heesch 4, the first Heesch 4 of the census) and ph25_103717005 (Heesch 3); the third band shape and both cap-reachers tile the (5,5) torus, index 25 (a 25-cell tile can only tile tori of index 25, 50, ...). Screened with the GPU filter under CPU certification (engine_v41), 0 contradictions; every shape counted once (level fingerprint = enumerator fingerprint).
261,148,534,24321ph26_854355365 (= 4)one non-tiler, ph26_854355365 (Heesch 4, same corona sizes as the 25-drafter Heesch 4); the other band shape tiles a (26,2) torus of index 52. One shape, ph26_895317515, is left at Heesch >= 2 unproven: no periodic tiling to index 104 and 71,074 probed second coronas none of which extends, but its corona-3 space is too large for the exact search. Enumerated and screened at the same time in 130 min (GPU filter under CPU certification, 0 contradictions); every shape counted once (level fingerprint = enumerator fingerprint).
272,795,822,31931ph27_1149329920 (= 3)the first level beyond the published counts: OEIS A197462 stops at 26, and this run's enumeration gives the next term, 7,496,071,416 free 27-cell shapes (its orbit self-check reproduces the known fixed count A197464 a(27) = 89,952,855,848). One non-tiler, ph27_1149329920 (Heesch 3), which turned out to be the pinwheel sixth pwn_27_0 constructed on the 7th; the other two band shapes are certified tilers (index 18 and 27). Enumerated and screened at the same time in 6 h with the enumerator throttled to the screen (GPU filter under CPU certification, 0 contradictions); every shape counted once.
286,811,765,918193ph28_2888713711 (= 3)
ph28_2961181138 (= 3)
ph28_32873864 (= 3)
The second level beyond the published counts. This run's enumeration gives the next terms of both sequences: 19,436,832,576 free 28-cell shapes (A197462) and 233,241,031,215 fixed ones (A197464, from the enumerator's orbit self-check). Three non-tilers, all with Heesch number exactly 3: ph28_2888713711, another pinwheel sixth, and ph28_2961181138 and ph28_32873864, the second of them two hexagons and four drafters. The other 16 band shapes are certified tilers. Enumerated and screened at the same time in 16 h (GPU filter under CPU certification, 0 contradictions); every hole-free shape counted once.
2916,608,861,50711ph29_4740_3048571 (= 4)The third level beyond the published counts, and the first run as a single census process (enumeration and screen in one engine_v56 process, 12.1 h). New terms: 50,461,543,754 free 29-cell shapes (A197462) and 605,538,525,048 fixed ones (A197464, from the orbit self-check). One band shape, which is also the one non-tiler: ph29_4740_3048571, Heesch exactly 4, the third Heesch 4 of the census. No shape reached the corona cap and none ran out of search budget. Unlike the levels above, GPU rejects were trusted rather than certified by the CPU, so the completeness of this level also rests on the GPU having made no wrong reject. A display-driver reset about 2 h 20 min in switched the rest of the run to CPU certification, and the 13 enumerator tasks triaged on trusted verdicts just before it were screened again with certification and came out identical. Every hole-free shape counted once (screen fingerprint = enumerator fingerprint).

Through size 23 that is 136 million shapes screened end to end, with two conclusions: non-tilers with deep coronas are extraordinarily rare (a handful in the whole census, none above Heesch 5), and depth does not grow with size along any trend; the one Heesch 5 sits alone at size 22 between essentially barren neighbours.

How the numbers are checked

Two separate questions, checked two separate ways. Are the shapes right? The enumerator's free-polyform counts agree with OEIS A197462 at every size from 1 to 24, a sequence built by Joseph Myers (to size 19) and extended by Aaron N. Siegel (sizes 20 to 26) with their own independent programs; an enumerator that dropped, duplicated or mis-identified shapes would not land on 433,705,325 by chance. Every level also carries an order-independent fingerprint of its shape set, reproduced across engine versions and machines whenever a level is regenerated. Are the Heesch numbers right? That rests on evidence that has nothing to do with the counts: the engine reproduces Craig Kaplan's published tables of polyform Heesch numbers exactly; every patch in this catalogue is re-verified by a separate checker that shares no code with the search engine; the small finds were additionally confirmed by heesch-sat, Kaplan's own solver; each "= k" is an exhausted search, which is both the exact value and the proof of non-tiling; and each level's screen is cross-checked against an independent depth histogram so that the census provably touched every shape (194,424,635 of them at size 24). The counts guarantee the shapes; the searches are guaranteed separately.

Prior art, stated plainly. Craig Kaplan's published Heesch survey (2022) covers polyominoes to 19 cells, polyhexes to 17 and polyiamonds to 24, with maxima of 3, 4 and 4; it does not touch this grid, and no paper, dataset or post we can find reports Heesch numbers for poly-[4.6.12] tiles. His public solver heesch-sat does include this grid as an option (we use it ourselves to confirm the small finds), so the tooling to run such a census has existed for years; what has not existed, to our knowledge, is the census. The results here are offered on that basis: the computation and the shapes are new, the idea of screening polyforms for Heesch numbers is Kaplan's.

The finds

Each entry shows the tile and its maximal patch, coloured by corona: black centre, then outward through red, orange, amber and blue. Scroll to zoom, drag to pan, hover a tile for its exact placement; switch to orientation colouring to see how the twelve images of the tile conspire.

ph13_1090913 drafters, Heesch 3

13 drafters · 12 sides · Heesch = 3 · corona sizes 1, 8, 14, 20

The smallest cell count we know of with Heesch number 3, from the small end of the survey. Complete full-geometry search, agreeing across seeds and with clause learning disabled, and confirmed independently by heesch-sat, Craig Kaplan's solver.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 3, refl, t = (-1, -2)corona 3, rot 0, refl, t = (3, 1)corona 3, rot 4, t = (-2, 3)corona 3, rot 5, refl, t = (4, -2)corona 3, rot 0, t = (1, -3)corona 3, rot 1, t = (4, -3)corona 3, rot 1, t = (3, -3)corona 3, rot 3, t = (1, 3)corona 3, rot 3, t = (2, 2)corona 3, rot 1, refl, t = (0, 3)corona 3, rot 4, refl, t = (2, -3)corona 3, rot 2, t = (4, -1)corona 3, rot 4, t = (-1, 3)corona 3, rot 2, t = (4, 0)corona 3, rot 3, refl, t = (0, -3)corona 3, rot 2, refl, t = (-3, 0)corona 3, rot 5, t = (-2, -1)corona 3, rot 2, refl, t = (-3, 1)corona 3, rot 4, t = (-3, 3)corona 3, rot 2, refl, t = (-3, 2)corona 2, rot 0, refl, t = (3, 0)corona 2, rot 2, t = (3, -1)corona 2, rot 0, t = (0, -2)corona 2, rot 5, t = (-2, 1)corona 2, rot 4, t = (0, 2)corona 2, rot 5, t = (-2, 0)corona 2, rot 1, refl, t = (1, 2)corona 2, rot 3, refl, t = (-1, -1)corona 2, rot 5, refl, t = (3, -2)corona 2, rot 3, t = (2, 1)corona 2, rot 2, refl, t = (-1, 2)corona 2, rot 2, refl, t = (-2, 2)corona 2, rot 4, refl, t = (1, -2)corona 2, rot 1, t = (2, -2)corona 1, rot 3, refl, t = (-1, 0)corona 1, rot 2, t = (2, -1)corona 1, rot 0, t = (0, -1)corona 1, rot 5, t = (0, 1)corona 1, rot 3, t = (2, 0)corona 1, rot 1, t = (1, -1)corona 1, rot 5, t = (-1, 1)corona 1, rot 4, t = (1, 1)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

pw14_49614 drafters, Heesch 3

14 drafters · 8 sides · Heesch = 3 · corona sizes 1, 6, 12, 18

Found by the pinwheel sector generator rather than by enumeration, on the same grid. With 8 sides it is the simplest-boundaried Heesch-3 shape here: fewer cells than any previously published Heesch-3 shape and fewer sides than ph13_10909, so the two are incomparable and both are kept. Confirmed independently by heesch-sat.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 1, t = (1, 2)corona 3, rot 1, refl, t = (-4, 1)corona 3, rot 4, refl, t = (2, -2)corona 3, rot 3, t = (-5, 1)corona 3, rot 0, t = (3, -3)corona 3, rot 0, t = (3, -2)corona 3, rot 3, refl, t = (0, -3)corona 3, rot 2, t = (-4, 4)corona 3, rot 5, refl, t = (1, 1)corona 3, rot 5, refl, t = (-1, 2)corona 3, rot 4, t = (-3, -2)corona 3, rot 2, t = (-2, 4)corona 3, rot 5, t = (1, -4)corona 3, rot 1, t = (2, 1)corona 3, rot 0, refl, t = (-3, 2)corona 3, rot 0, refl, t = (-3, 3)corona 3, rot 4, t = (-2, -3)corona 3, rot 2, refl, t = (-2, -2)corona 2, rot 5, t = (1, -3)corona 2, rot 3, refl, t = (0, -2)corona 2, rot 2, refl, t = (-2, -1)corona 2, rot 1, refl, t = (-2, 0)corona 2, rot 2, t = (-4, 3)corona 2, rot 1, t = (-1, 3)corona 2, rot 1, t = (0, 2)corona 2, rot 0, t = (2, -1)corona 2, rot 0, refl, t = (-2, 1)corona 2, rot 5, refl, t = (-1, 1)corona 2, rot 4, refl, t = (1, -1)corona 2, rot 1, refl, t = (-3, 1)corona 1, rot 3, t = (-3, 0)corona 1, rot 3, refl, t = (-1, -1)corona 1, rot 4, refl, t = (0, -1)corona 1, rot 2, refl, t = (-2, 0)corona 1, rot 4, refl, t = (-1, 0)corona 1, rot 5, refl, t = (-1, 0)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

pw17_8748917 drafters, Heesch 3

17 drafters · 15 sides · Heesch = 3 · corona sizes 1, 6, 14, 17

A third find from the pinwheel generator. Dominated by both of the above (more cells than ph13_10909, more sides than pw14_496) and kept as an independent confirmation that small Heesch-3 shapes are not a fluke of one construction.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 4, refl, t = (-3, 2)corona 3, rot 2, refl, t = (1, -4)corona 3, rot 3, refl, t = (2, -2)corona 3, rot 3, refl, t = (2, -3)corona 3, rot 0, t = (-3, 2)corona 3, rot 3, t = (0, -6)corona 3, rot 4, t = (3, -1)corona 3, rot 3, refl, t = (1, -3)corona 3, rot 0, refl, t = (-1, -3)corona 3, rot 3, refl, t = (0, 2)corona 3, rot 2, t = (-3, -3)corona 3, rot 3, refl, t = (2, -1)corona 3, rot 5, t = (0, 2)corona 3, rot 4, t = (3, -6)corona 3, rot 1, refl, t = (0, -4)corona 3, rot 1, t = (-4, 0)corona 3, rot 5, refl, t = (-3, -1)corona 2, rot 5, t = (1, 1)corona 2, rot 3, refl, t = (0, -3)corona 2, rot 1, t = (-3, 0)corona 2, rot 2, refl, t = (0, -3)corona 2, rot 5, t = (2, 0)corona 2, rot 0, refl, t = (0, -3)corona 2, rot 4, refl, t = (-2, 1)corona 2, rot 5, refl, t = (-2, -1)corona 2, rot 0, t = (-2, 2)corona 2, rot 1, refl, t = (0, -3)corona 2, rot 5, t = (3, -1)corona 2, rot 4, refl, t = (0, -3)corona 2, rot 5, t = (3, -2)corona 2, rot 5, t = (3, -3)corona 1, rot 5, refl, t = (0, -3)corona 1, rot 0, t = (-1, 1)corona 1, rot 4, refl, t = (0, -2)corona 1, rot 4, refl, t = (0, -1)corona 1, rot 5, refl, t = (-1, -2)corona 1, rot 4, refl, t = (-1, 0)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph19_46565219 drafters, Heesch 3

19 drafters · 16 sides · Heesch = 3 · corona sizes 1, 9, 19, 25

The unique non-tiler among all 2,343,836 holeless 19-drafter shapes. The completed full-geometry search proves no 4th corona exists, hence also that it does not tile; the torus test (clean to index 100) is a redundant cross-check.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 2, refl, t = (-3, 2)corona 3, rot 5, refl, t = (6, -2)corona 3, rot 0, refl, t = (3, 2)corona 3, rot 2, t = (-1, -2)corona 3, rot 4, t = (6, -4)corona 3, rot 4, refl, t = (5, -5)corona 3, rot 2, t = (-3, 0)corona 3, rot 1, t = (-2, 3)corona 3, rot 0, refl, t = (2, 2)corona 3, rot 2, t = (0, -3)corona 3, rot 5, t = (4, 1)corona 3, rot 1, refl, t = (-1, 3)corona 3, rot 4, refl, t = (5, -4)corona 3, rot 0, t = (1, 3)corona 3, rot 3, t = (3, -5)corona 3, rot 3, refl, t = (1, -4)corona 3, rot 4, t = (6, -3)corona 3, rot 2, refl, t = (-3, 3)corona 3, rot 3, refl, t = (2, -4)corona 3, rot 0, t = (0, 3)corona 3, rot 2, refl, t = (-3, 1)corona 3, rot 3, t = (4, -5)corona 3, rot 2, t = (-2, -1)corona 3, rot 5, refl, t = (5, -1)corona 3, rot 5, t = (5, 0)corona 2, rot 4, refl, t = (5, -3)corona 2, rot 1, t = (-2, 2)corona 2, rot 3, t = (4, -3)corona 2, rot 2, refl, t = (-1, -1)corona 2, rot 2, t = (1, -3)corona 2, rot 3, refl, t = (3, -4)corona 2, rot 5, t = (3, 1)corona 2, rot 5, refl, t = (4, 0)corona 2, rot 2, refl, t = (0, -2)corona 2, rot 2, t = (2, -3)corona 2, rot 3, t = (4, -4)corona 2, rot 2, refl, t = (-2, 0)corona 2, rot 0, refl, t = (1, 2)corona 2, rot 4, t = (4, -1)corona 2, rot 4, t = (5, -2)corona 2, rot 5, t = (2, 1)corona 2, rot 0, t = (0, 2)corona 2, rot 1, t = (-2, 1)corona 2, rot 1, refl, t = (-1, 2)corona 1, rot 1, refl, t = (-1, 1)corona 1, rot 2, t = (3, -3)corona 1, rot 3, t = (4, -2)corona 1, rot 0, t = (0, 1)corona 1, rot 5, t = (1, 1)corona 1, rot 1, t = (0, -1)corona 1, rot 1, t = (1, -2)corona 1, rot 4, t = (3, 0)corona 1, rot 1, t = (-1, 0)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

pk10_950920 drafters (10 kites), Heesch 3

20 drafters · 19 sides · Heesch = 3 · corona sizes 1, 4, 12, 24

Not a survey discovery: the polykite survey found it first. The drafter survey then rediscovered it at size 20 as the level's sole non-tiler, down a completely different pipeline, which is exactly the kind of agreement that validates both. Among all 14,181 polykites of up to 10 kites it is the only non-aperiodic one with Heesch number above 2.

the tile
colour by
centre123
rot 0rot 2rot 4rot 0 + reflrot 2 + reflrot 4 + refl
corona 3, rot 2, t = (-1, 0)corona 3, rot 4, t = (-3, 7)corona 3, rot 2, refl, t = (2, 1)corona 3, rot 4, t = (2, -3)corona 3, rot 2, refl, t = (-4, 2)corona 3, rot 4, t = (2, 2)corona 3, rot 2, refl, t = (-3, 1)corona 3, rot 4, refl, t = (0, 6)corona 3, rot 4, t = (-4, 6)corona 3, rot 2, refl, t = (5, -2)corona 3, rot 4, refl, t = (-1, 5)corona 3, rot 2, t = (-3, 0)corona 3, rot 0, refl, t = (-2, 0)corona 3, rot 2, refl, t = (3, -3)corona 3, rot 0, refl, t = (-6, 7)corona 3, rot 4, refl, t = (5, -5)corona 3, rot 4, t = (-6, 3)corona 3, rot 4, refl, t = (3, 5)corona 3, rot 2, t = (2, 4)corona 3, rot 4, t = (2, -2)corona 3, rot 2, t = (3, 3)corona 3, rot 0, t = (1, -5)corona 3, rot 4, t = (4, -1)corona 3, rot 0, refl, t = (2, -5)corona 2, rot 4, t = (1, 2)corona 2, rot 2, t = (-1, 2)corona 2, rot 2, refl, t = (1, 2)corona 2, rot 4, refl, t = (4, 0)corona 2, rot 0, refl, t = (0, -2)corona 2, rot 2, t = (-1, 1)corona 2, rot 2, t = (-2, 3)corona 2, rot 2, refl, t = (0, 3)corona 2, rot 2, refl, t = (2, -3)corona 2, rot 4, refl, t = (-1, 4)corona 2, rot 0, refl, t = (-2, 1)corona 2, rot 2, t = (3, -1)corona 1, rot 0, refl, t = (-1, 3)corona 1, rot 2, refl, t = (1, -2)corona 1, rot 0, refl, t = (-2, 2)corona 1, rot 0, refl, t = (-2, 3)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph22_1226103922 drafters, Heesch 5

22 drafters · 9 sides · Heesch = 5 · corona sizes 1, 9, 21, 28, 33, 32

The find of the survey so far. Every previously known Heesch-5 shape is at least 141 drafters; this one does it at 22, a factor of 6.4 smaller. A complete full-geometry search at cap 12 proves no 6th corona exists, which is itself the proof that it does not tile; the patch was additionally verified by an independent checker that shares no code with the engine, and the torus test is clean to index 100. It is also the only shape in the catalogue whose final corona is SMALLER than the one before it (33 then 32), a second anomaly in the same tile.

the tile
colour by
centre12345
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 5, rot 1, refl, t = (-7, -1)corona 5, rot 1, refl, t = (1, 7)corona 5, rot 5, refl, t = (6, 4)corona 5, rot 4, t = (-8, 9)corona 5, rot 2, refl, t = (3, -9)corona 5, rot 5, refl, t = (4, 6)corona 5, rot 0, t = (5, -8)corona 5, rot 3, refl, t = (10, -7)corona 5, rot 4, refl, t = (10, -1)corona 5, rot 5, t = (-4, -3)corona 5, rot 1, refl, t = (-8, 2)corona 5, rot 2, refl, t = (5, -9)corona 5, rot 0, refl, t = (-8, 8)corona 5, rot 4, t = (-8, 3)corona 5, rot 5, t = (-2, -5)corona 5, rot 4, refl, t = (9, 1)corona 5, rot 2, refl, t = (4, -9)corona 5, rot 0, refl, t = (1, 8)corona 5, rot 1, t = (10, -8)corona 5, rot 2, refl, t = (6, -9)corona 5, rot 3, t = (-4, 9)corona 5, rot 1, refl, t = (-5, -3)corona 5, rot 0, t = (5, -7)corona 5, rot 5, refl, t = (8, 2)corona 5, rot 3, t = (-2, 9)corona 5, rot 1, refl, t = (-6, -2)corona 5, rot 5, refl, t = (2, 8)corona 5, rot 1, refl, t = (-4, -4)corona 5, rot 4, t = (-8, 7)corona 5, rot 3, t = (0, 9)corona 5, rot 1, t = (10, -6)corona 5, rot 2, t = (2, 7)corona 4, rot 0, t = (5, -6)corona 4, rot 1, refl, t = (-3, -4)corona 4, rot 1, t = (9, -4)corona 4, rot 2, refl, t = (6, -7)corona 4, rot 4, t = (-6, 3)corona 4, rot 4, refl, t = (8, 2)corona 4, rot 5, t = (-2, -4)corona 4, rot 5, refl, t = (-2, 9)corona 4, rot 3, t = (-3, 8)corona 4, rot 4, t = (-7, 4)corona 4, rot 4, refl, t = (6, 4)corona 4, rot 5, refl, t = (-4, 9)corona 4, rot 3, refl, t = (10, -5)corona 4, rot 4, t = (-4, 1)corona 4, rot 5, refl, t = (-1, 9)corona 4, rot 1, t = (8, -3)corona 4, rot 2, refl, t = (6, -8)corona 4, rot 5, refl, t = (-3, 9)corona 4, rot 1, refl, t = (-2, -5)corona 4, rot 5, t = (0, -4)corona 4, rot 4, refl, t = (7, 3)corona 4, rot 5, t = (-1, -4)corona 4, rot 3, refl, t = (10, -6)corona 4, rot 5, refl, t = (1, 8)corona 4, rot 5, t = (1, -4)corona 4, rot 0, refl, t = (-8, 4)corona 4, rot 3, t = (-3, 7)corona 4, rot 4, t = (-5, 2)corona 4, rot 0, refl, t = (-8, 5)corona 4, rot 0, refl, t = (-8, 7)corona 4, rot 3, refl, t = (10, -4)corona 4, rot 0, refl, t = (-8, 6)corona 4, rot 2, t = (6, 3)corona 3, rot 2, t = (4, 4)corona 3, rot 3, t = (-3, 5)corona 3, rot 4, refl, t = (5, 4)corona 3, rot 2, t = (2, 4)corona 3, rot 3, t = (-3, 4)corona 3, rot 0, refl, t = (-6, 2)corona 3, rot 2, refl, t = (6, -6)corona 3, rot 2, t = (3, 4)corona 3, rot 1, refl, t = (1, -5)corona 3, rot 5, t = (1, -3)corona 3, rot 1, t = (7, -2)corona 3, rot 4, t = (-3, 1)corona 3, rot 3, refl, t = (8, -2)corona 3, rot 4, t = (-2, 0)corona 3, rot 1, refl, t = (-1, -5)corona 3, rot 2, t = (1, 4)corona 3, rot 5, refl, t = (-4, 7)corona 3, rot 0, refl, t = (-7, 3)corona 3, rot 0, t = (5, -5)corona 3, rot 0, t = (5, -4)corona 3, rot 5, refl, t = (-4, 8)corona 3, rot 3, t = (-3, 6)corona 3, rot 1, refl, t = (0, -5)corona 3, rot 0, refl, t = (-5, 1)corona 3, rot 3, refl, t = (9, -3)corona 3, rot 4, refl, t = (4, 5)corona 3, rot 5, t = (1, -2)corona 3, rot 1, t = (6, -1)corona 2, rot 0, t = (3, -2)corona 2, rot 4, refl, t = (2, 5)corona 2, rot 2, refl, t = (6, -5)corona 2, rot 3, t = (0, 1)corona 2, rot 4, refl, t = (3, 5)corona 2, rot 4, t = (0, 0)corona 2, rot 5, refl, t = (-4, 5)corona 2, rot 0, t = (4, -3)corona 2, rot 5, refl, t = (-4, 6)corona 2, rot 3, refl, t = (7, -1)corona 2, rot 2, t = (1, 3)corona 2, rot 1, t = (4, 0)corona 2, rot 1, t = (5, -1)corona 2, rot 3, t = (-2, 3)corona 2, rot 4, t = (-1, 0)corona 2, rot 4, refl, t = (1, 5)corona 2, rot 2, t = (1, 2)corona 2, rot 3, t = (-1, 2)corona 2, rot 0, refl, t = (-3, 0)corona 2, rot 4, t = (1, 0)corona 2, rot 5, t = (1, -1)corona 1, rot 2, t = (1, 1)corona 1, rot 1, t = (2, 0)corona 1, rot 0, t = (2, -1)corona 1, rot 5, t = (1, 0)corona 1, rot 2, t = (1, 0)corona 1, rot 1, t = (3, 0)corona 1, rot 3, refl, t = (5, 0)corona 1, rot 1, t = (1, 0)corona 1, rot 3, t = (2, 0)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph22_17243722 drafters, Heesch 3

22 drafters · 8 sides · Heesch = 3 · corona sizes 1, 6, 16, 26

The second non-tiler of the n=22 level. Proven exactly 3 by a complete search that exhausts in 7.3 seconds; independently, no periodic tiling exists up to torus index 200. Unremarkable next to its level-mate, which is rather the point: even in the one rich level, depth 5 happened once.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 2, t = (6, 2)corona 3, rot 0, t = (-4, 2)corona 3, rot 1, refl, t = (-4, 3)corona 3, rot 1, t = (5, -7)corona 3, rot 2, t = (7, -5)corona 3, rot 2, refl, t = (6, -7)corona 3, rot 5, t = (-3, 7)corona 3, rot 2, t = (-2, 1)corona 3, rot 3, t = (4, -4)corona 3, rot 0, t = (-3, -2)corona 3, rot 0, refl, t = (-3, 6)corona 3, rot 0, t = (5, -2)corona 3, rot 4, refl, t = (6, 1)corona 3, rot 5, t = (-4, 2)corona 3, rot 3, refl, t = (6, 3)corona 3, rot 3, t = (6, 2)corona 3, rot 0, refl, t = (-4, 1)corona 3, rot 4, refl, t = (3, -3)corona 3, rot 2, refl, t = (2, 3)corona 3, rot 0, t = (1, 4)corona 3, rot 5, refl, t = (5, -1)corona 3, rot 5, t = (4, 3)corona 3, rot 4, refl, t = (-2, 7)corona 3, rot 0, refl, t = (-1, -2)corona 3, rot 4, refl, t = (0, -1)corona 3, rot 3, refl, t = (7, -4)corona 2, rot 1, refl, t = (-3, 1)corona 2, rot 2, refl, t = (4, -5)corona 2, rot 3, t = (1, 0)corona 2, rot 4, refl, t = (5, 3)corona 2, rot 3, refl, t = (5, -2)corona 2, rot 2, t = (5, -3)corona 2, rot 4, refl, t = (1, 5)corona 2, rot 5, t = (-1, -1)corona 2, rot 1, t = (0, -1)corona 2, rot 3, t = (2, 4)corona 2, rot 2, refl, t = (0, 2)corona 2, rot 5, refl, t = (1, 5)corona 2, rot 1, refl, t = (4, -3)corona 2, rot 1, t = (-1, 2)corona 2, rot 4, t = (3, 2)corona 2, rot 4, t = (2, 5)corona 1, rot 5, refl, t = (2, 2)corona 1, rot 3, refl, t = (4, 1)corona 1, rot 5, refl, t = (0, 1)corona 1, rot 1, refl, t = (1, -1)corona 1, rot 0, refl, t = (-2, 3)corona 1, rot 2, refl, t = (1, -1)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph23_2230852723 drafters, Heesch 3

23 drafters · 19 sides · Heesch = 3 · corona sizes 1, 9, 19, 25

The lone band shape among 80 million at size 23, and the level's only non-tiler. A complete search exhausts it in a tenth of a second, so it is exactly 3 and does not tile; the torus test is clean to index 200. It nearly went missing: a log-encoding bug dropped its extraction, and it was recovered a day later by re-enumerating the whole level unsharded and matching the regenerated part to the fingerprint recorded before the original was deleted, with the part's depth histogram agreeing with the record digit for digit.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 3, t = (-3, 6)corona 3, rot 2, refl, t = (4, -5)corona 3, rot 4, refl, t = (5, 4)corona 3, rot 1, refl, t = (-3, -3)corona 3, rot 1, refl, t = (-2, -3)corona 3, rot 2, t = (1, 4)corona 3, rot 0, refl, t = (-6, 3)corona 3, rot 0, t = (3, -3)corona 3, rot 3, refl, t = (7, -2)corona 3, rot 2, refl, t = (4, -6)corona 3, rot 4, refl, t = (6, 3)corona 3, rot 0, refl, t = (-7, 4)corona 3, rot 5, t = (-2, -2)corona 3, rot 4, t = (-4, 2)corona 3, rot 5, t = (-1, -2)corona 3, rot 5, refl, t = (-4, 8)corona 3, rot 5, refl, t = (-4, 7)corona 3, rot 3, t = (-3, 5)corona 3, rot 4, refl, t = (4, 5)corona 3, rot 2, t = (4, 4)corona 3, rot 2, t = (2, 4)corona 3, rot 4, t = (-5, 3)corona 3, rot 2, t = (3, 4)corona 3, rot 0, t = (3, -4)corona 3, rot 1, t = (6, -2)corona 2, rot 4, t = (-2, 2)corona 2, rot 5, t = (-1, 0)corona 2, rot 4, t = (-3, 2)corona 2, rot 2, t = (1, 2)corona 2, rot 5, t = (-1, -1)corona 2, rot 4, refl, t = (2, 5)corona 2, rot 0, t = (2, -2)corona 2, rot 0, refl, t = (-5, 2)corona 2, rot 1, t = (4, 0)corona 2, rot 3, t = (-1, 3)corona 2, rot 5, refl, t = (-4, 6)corona 2, rot 4, refl, t = (1, 5)corona 2, rot 2, t = (1, 3)corona 2, rot 1, t = (5, -1)corona 2, rot 4, refl, t = (3, 5)corona 2, rot 3, refl, t = (6, -1)corona 2, rot 3, t = (-2, 4)corona 2, rot 2, refl, t = (4, -4)corona 2, rot 1, refl, t = (-1, -3)corona 1, rot 3, t = (0, 2)corona 1, rot 1, t = (2, 0)corona 1, rot 1, t = (3, 0)corona 1, rot 0, t = (1, -1)corona 1, rot 2, t = (1, 1)corona 1, rot 5, t = (-1, 1)corona 1, rot 3, refl, t = (5, 0)corona 1, rot 1, t = (1, 0)corona 1, rot 4, t = (-1, 2)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph25_29202502525 drafters, Heesch 4

25 drafters · 20 sides · Heesch = 4 · corona sizes 1, 9, 20, 31, 35

The first Heesch 4 of the survey, one of two non-tilers among the 472,271,269 holeless 25-drafter shapes. Corona sizes 1, 9, 20, 31, 35 (96 tiles); the complete search at cap 10 (two seeds) proves no fifth corona and hence that it does not tile; no periodic tiling to torus index 50. A serrated bar with claims at both ends, in the family of the Basic precursors.

the tile
colour by
centre1234
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 4, rot 3, t = (-4, 0)corona 4, rot 3, refl, t = (-5, 9)corona 4, rot 1, t = (-2, 7)corona 4, rot 4, t = (3, -6)corona 4, rot 3, refl, t = (-2, 8)corona 4, rot 1, refl, t = (8, -2)corona 4, rot 1, refl, t = (8, -4)corona 4, rot 2, t = (-6, 5)corona 4, rot 1, refl, t = (8, -3)corona 4, rot 5, refl, t = (-2, -5)corona 4, rot 5, refl, t = (-3, -4)corona 4, rot 2, refl, t = (5, 3)corona 4, rot 0, refl, t = (6, -7)corona 4, rot 5, refl, t = (3, -7)corona 4, rot 4, refl, t = (-7, 6)corona 4, rot 3, refl, t = (-4, 9)corona 4, rot 4, t = (7, -7)corona 4, rot 2, refl, t = (3, 6)corona 4, rot 3, t = (-4, -1)corona 4, rot 0, t = (4, 2)corona 4, rot 4, refl, t = (-8, 4)corona 4, rot 5, refl, t = (-5, -2)corona 4, rot 0, t = (4, 3)corona 4, rot 4, refl, t = (-8, 6)corona 4, rot 5, refl, t = (-4, -3)corona 4, rot 3, refl, t = (-3, 9)corona 4, rot 2, refl, t = (4, 5)corona 4, rot 2, t = (-5, 5)corona 4, rot 5, refl, t = (-5, -1)corona 4, rot 5, refl, t = (-1, -6)corona 4, rot 1, refl, t = (7, -4)corona 4, rot 4, refl, t = (-8, 5)corona 4, rot 1, t = (-1, 6)corona 4, rot 5, t = (6, -3)corona 4, rot 2, refl, t = (5, 4)corona 3, rot 2, t = (-4, 5)corona 3, rot 3, refl, t = (-1, 7)corona 3, rot 5, refl, t = (-5, 1)corona 3, rot 2, t = (-3, 5)corona 3, rot 0, t = (4, 0)corona 3, rot 5, refl, t = (-5, 0)corona 3, rot 4, t = (1, -4)corona 3, rot 3, refl, t = (0, 6)corona 3, rot 1, t = (1, 3)corona 3, rot 4, refl, t = (-6, 6)corona 3, rot 4, t = (0, -3)corona 3, rot 1, t = (1, 4)corona 3, rot 0, t = (3, 0)corona 3, rot 4, refl, t = (-5, 6)corona 3, rot 2, refl, t = (5, 2)corona 3, rot 0, t = (4, 1)corona 3, rot 1, refl, t = (6, -4)corona 3, rot 4, t = (-1, -1)corona 3, rot 4, t = (-1, -2)corona 3, rot 2, t = (-2, 4)corona 3, rot 3, t = (-4, 2)corona 3, rot 5, t = (5, -3)corona 3, rot 4, t = (2, -5)corona 3, rot 2, refl, t = (5, 1)corona 3, rot 0, refl, t = (5, -7)corona 3, rot 1, t = (0, 5)corona 3, rot 0, refl, t = (3, -7)corona 3, rot 0, refl, t = (2, -6)corona 3, rot 3, t = (-3, 2)corona 3, rot 0, refl, t = (4, -7)corona 3, rot 3, t = (-4, 1)corona 2, rot 3, t = (-1, 2)corona 2, rot 2, t = (-1, 3)corona 2, rot 4, t = (-1, 0)corona 2, rot 0, refl, t = (1, -5)corona 2, rot 0, refl, t = (0, -4)corona 2, rot 2, t = (0, 2)corona 2, rot 0, refl, t = (-1, -3)corona 2, rot 5, t = (2, -2)corona 2, rot 3, t = (-2, 2)corona 2, rot 1, t = (1, 1)corona 2, rot 1, refl, t = (5, -4)corona 2, rot 4, t = (-1, 1)corona 2, rot 3, refl, t = (1, 5)corona 2, rot 1, t = (1, 2)corona 2, rot 5, t = (3, -3)corona 2, rot 5, refl, t = (-5, 2)corona 2, rot 0, t = (2, 0)corona 2, rot 4, refl, t = (-4, 6)corona 2, rot 2, refl, t = (5, 0)corona 2, rot 5, t = (4, -3)corona 1, rot 5, t = (-1, 1)corona 1, rot 5, t = (1, -1)corona 1, rot 1, t = (1, 0)corona 1, rot 1, refl, t = (4, -4)corona 1, rot 0, t = (1, 0)corona 1, rot 5, t = (0, 0)corona 1, rot 3, t = (0, 2)corona 1, rot 2, t = (1, 1)corona 1, rot 4, t = (-1, 2)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph25_10371700525 drafters, Heesch 3

25 drafters · 8 sides · Heesch = 3 · corona sizes 1, 8, 15, 21

The other 25-drafter non-tiler: a compact trapezoid with a single tail, unlike the bars. Corona sizes 1, 8, 15, 21 (45 tiles); complete search at cap 10 (two seeds), no periodic tiling to torus index 50.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 5, refl, t = (6, -3)corona 3, rot 2, t = (6, 0)corona 3, rot 3, t = (-2, 4)corona 3, rot 1, refl, t = (-4, -2)corona 3, rot 4, refl, t = (6, 0)corona 3, rot 5, refl, t = (2, 4)corona 3, rot 2, refl, t = (2, -6)corona 3, rot 0, refl, t = (-6, 2)corona 3, rot 2, t = (2, 4)corona 3, rot 4, refl, t = (6, -4)corona 3, rot 1, refl, t = (-2, -4)corona 3, rot 1, t = (6, -4)corona 3, rot 4, t = (-4, 2)corona 3, rot 5, t = (-2, -2)corona 3, rot 1, t = (3, 3)corona 3, rot 0, t = (2, -4)corona 3, rot 5, refl, t = (-4, 6)corona 3, rot 3, refl, t = (6, -6)corona 3, rot 0, refl, t = (-6, 4)corona 3, rot 5, refl, t = (-2, 6)corona 3, rot 2, refl, t = (4, -6)corona 2, rot 4, refl, t = (2, 4)corona 2, rot 2, t = (2, 2)corona 2, rot 2, refl, t = (4, -4)corona 2, rot 4, t = (-2, 0)corona 2, rot 4, refl, t = (4, 2)corona 2, rot 5, refl, t = (-4, 4)corona 2, rot 2, t = (0, 2)corona 2, rot 1, refl, t = (0, -4)corona 2, rot 0, refl, t = (-4, 0)corona 2, rot 3, refl, t = (6, -4)corona 2, rot 4, refl, t = (0, 4)corona 2, rot 3, refl, t = (6, -2)corona 2, rot 1, t = (4, -2)corona 2, rot 3, t = (-2, 2)corona 2, rot 5, t = (0, -2)corona 1, rot 4, t = (0, 0)corona 1, rot 2, t = (0, 0)corona 1, rot 1, t = (2, 0)corona 1, rot 5, t = (0, 0)corona 1, rot 3, refl, t = (4, 0)corona 1, rot 0, t = (2, -2)corona 1, rot 3, t = (0, 0)corona 1, rot 1, t = (0, 0)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph26_85435536526 drafters, Heesch 4

26 drafters · 12 sides · Heesch = 4 · corona sizes 1, 9, 20, 31, 35

The second Heesch 4, found in the 26-drafter level while it was still being enumerated, with exactly the corona sizes of the 25-drafter Heesch 4 (1, 9, 20, 31, 35; 96 tiles): the same serrated-bar mechanism one cell longer. Complete search at cap 10 (two seeds), no periodic tiling to torus index 52.

the tile
colour by
centre1234
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 4, rot 0, t = (4, 2)corona 4, rot 0, t = (4, 3)corona 4, rot 5, refl, t = (3, -7)corona 4, rot 3, refl, t = (-3, 9)corona 4, rot 1, refl, t = (8, -4)corona 4, rot 3, t = (-4, 0)corona 4, rot 3, refl, t = (-5, 9)corona 4, rot 0, refl, t = (6, -7)corona 4, rot 2, refl, t = (5, 3)corona 4, rot 5, refl, t = (-5, -1)corona 4, rot 4, refl, t = (-8, 5)corona 4, rot 2, refl, t = (4, 5)corona 4, rot 4, t = (7, -7)corona 4, rot 5, refl, t = (-4, -3)corona 4, rot 4, refl, t = (-8, 4)corona 4, rot 3, refl, t = (-2, 8)corona 4, rot 4, refl, t = (-7, 6)corona 4, rot 1, t = (-2, 7)corona 4, rot 2, refl, t = (5, 4)corona 4, rot 1, refl, t = (8, -3)corona 4, rot 4, t = (3, -6)corona 4, rot 3, refl, t = (-4, 9)corona 4, rot 5, refl, t = (-3, -4)corona 4, rot 4, refl, t = (-8, 6)corona 4, rot 5, refl, t = (-1, -6)corona 4, rot 1, t = (-1, 6)corona 4, rot 5, refl, t = (-2, -5)corona 4, rot 1, refl, t = (8, -2)corona 4, rot 2, t = (-6, 5)corona 4, rot 1, refl, t = (7, -4)corona 4, rot 5, t = (6, -3)corona 4, rot 3, t = (-4, -1)corona 4, rot 2, t = (-5, 5)corona 4, rot 2, refl, t = (3, 6)corona 4, rot 5, refl, t = (-5, -2)corona 3, rot 5, refl, t = (-5, 0)corona 3, rot 0, t = (3, 0)corona 3, rot 5, refl, t = (-5, 1)corona 3, rot 3, refl, t = (0, 6)corona 3, rot 3, refl, t = (-1, 7)corona 3, rot 1, t = (0, 5)corona 3, rot 1, t = (1, 3)corona 3, rot 3, t = (-4, 2)corona 3, rot 4, t = (0, -3)corona 3, rot 4, t = (1, -4)corona 3, rot 0, refl, t = (5, -7)corona 3, rot 3, t = (-4, 1)corona 3, rot 4, refl, t = (-6, 6)corona 3, rot 2, t = (-3, 5)corona 3, rot 0, t = (4, 0)corona 3, rot 0, refl, t = (3, -7)corona 3, rot 2, t = (-2, 4)corona 3, rot 0, refl, t = (4, -7)corona 3, rot 2, t = (-4, 5)corona 3, rot 4, t = (-1, -2)corona 3, rot 4, t = (2, -5)corona 3, rot 4, refl, t = (-5, 6)corona 3, rot 0, refl, t = (2, -6)corona 3, rot 1, refl, t = (6, -4)corona 3, rot 3, t = (-3, 2)corona 3, rot 2, refl, t = (5, 1)corona 3, rot 2, refl, t = (5, 2)corona 3, rot 5, t = (5, -3)corona 3, rot 0, t = (4, 1)corona 3, rot 1, t = (1, 4)corona 3, rot 4, t = (-1, -1)corona 2, rot 3, t = (-1, 2)corona 2, rot 4, t = (-1, 0)corona 2, rot 1, t = (1, 1)corona 2, rot 5, refl, t = (-5, 2)corona 2, rot 0, refl, t = (0, -4)corona 2, rot 0, refl, t = (-1, -3)corona 2, rot 1, t = (1, 2)corona 2, rot 2, t = (-1, 3)corona 2, rot 4, refl, t = (-4, 6)corona 2, rot 0, refl, t = (1, -5)corona 2, rot 5, t = (4, -3)corona 2, rot 0, t = (2, 0)corona 2, rot 2, refl, t = (5, 0)corona 2, rot 3, refl, t = (1, 5)corona 2, rot 5, t = (3, -3)corona 2, rot 3, t = (-2, 2)corona 2, rot 1, refl, t = (5, -4)corona 2, rot 5, t = (2, -2)corona 2, rot 4, t = (-1, 1)corona 2, rot 2, t = (0, 2)corona 1, rot 0, t = (1, 0)corona 1, rot 1, t = (1, 0)corona 1, rot 5, t = (1, -1)corona 1, rot 2, t = (1, 1)corona 1, rot 3, t = (0, 2)corona 1, rot 5, t = (-1, 1)corona 1, rot 4, t = (-1, 2)corona 1, rot 1, refl, t = (4, -4)corona 1, rot 5, t = (0, 0)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph27_114932992027 drafters, Heesch 3 (rediscovered: the catalogue's pd9_12563)

27 drafters · 10 sides · Heesch = 3 · corona sizes 1, 9, 16, 21

The first find beyond the published counts (OEIS stops at 26 cells), and a rediscovery: it is the same shape as pwn_27_0, one sixth of a pinwheel about a lattice point, constructed by hand on the 7th and screened then with the identical verdict (corona sizes 1, 9, 16, 21, 47 tiles). It is also the catalogue's own pd9_12563, the 27-sixth Heesch 3 polydrafter found by the polydrafter survey on the 6th and confirmed by Craig Kaplan, which the old containment checker could not see. Complete search at cap 10 (two seeds), no periodic tiling to torus index 54. The exhaustive census re-finding a constructed shape, verdict for verdict, is a cross-check of both pipelines.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 1, refl, t = (-2, -4)corona 3, rot 0, refl, t = (-5, 7)corona 3, rot 4, refl, t = (7, -2)corona 3, rot 2, refl, t = (1, -5)corona 3, rot 0, refl, t = (-2, 7)corona 3, rot 5, refl, t = (5, 3)corona 3, rot 3, refl, t = (6, -5)corona 3, rot 0, refl, t = (-4, 8)corona 3, rot 0, t = (3, -6)corona 3, rot 1, t = (6, -5)corona 3, rot 2, t = (9, -3)corona 3, rot 0, refl, t = (-6, 6)corona 3, rot 0, t = (1, -5)corona 3, rot 1, refl, t = (-4, 0)corona 3, rot 0, refl, t = (0, 6)corona 3, rot 3, t = (4, 5)corona 3, rot 5, t = (-4, 0)corona 3, rot 5, refl, t = (4, 5)corona 3, rot 4, t = (-6, 6)corona 3, rot 1, refl, t = (-5, 2)corona 3, rot 2, t = (8, -1)corona 2, rot 2, refl, t = (0, -3)corona 2, rot 5, t = (-4, 3)corona 2, rot 3, t = (5, 3)corona 2, rot 3, refl, t = (4, -4)corona 2, rot 4, t = (-2, 7)corona 2, rot 0, t = (0, -3)corona 2, rot 0, refl, t = (1, 4)corona 2, rot 1, refl, t = (-1, 3)corona 2, rot 2, t = (7, -2)corona 2, rot 5, refl, t = (4, 2)corona 2, rot 1, t = (4, -4)corona 2, rot 2, refl, t = (-1, -1)corona 2, rot 4, refl, t = (5, -1)corona 2, rot 1, refl, t = (-3, 4)corona 2, rot 4, t = (0, 6)corona 2, rot 1, refl, t = (-4, 3)corona 1, rot 2, refl, t = (0, 0)corona 1, rot 1, t = (3, -2)corona 1, rot 3, t = (4, 2)corona 1, rot 0, t = (-1, -1)corona 1, rot 4, t = (1, 4)corona 1, rot 3, refl, t = (3, -2)corona 1, rot 5, t = (-3, 4)corona 1, rot 5, t = (-1, 3)corona 1, rot 2, t = (5, -1)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph28_288871371128 drafters, Heesch 3 (a pinwheel sixth)

28 drafters · 13 sides · Heesch = 3 · corona sizes 1, 9, 16, 21

The first non-tiler of the 28-drafter level, found while the level was still being enumerated. Another sixth of a pinwheel about a lattice point, with the same corona sizes as the 27-drafter pinwheel sixth (1, 9, 16, 21; 47 tiles) but a different shape. Complete search at cap 10 (two seeds), no periodic tiling to torus index 56, and no identical or near-size containing tile anywhere in the project's tile files.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 4, refl, t = (7, -2)corona 3, rot 4, t = (-5, 7)corona 3, rot 0, t = (-1, -4)corona 3, rot 1, refl, t = (-5, 2)corona 3, rot 2, t = (8, -1)corona 3, rot 0, refl, t = (-5, 7)corona 3, rot 2, t = (9, -3)corona 3, rot 1, t = (5, -6)corona 3, rot 5, t = (-7, 6)corona 3, rot 5, refl, t = (4, 5)corona 3, rot 3, t = (4, 5)corona 3, rot 4, t = (-3, 9)corona 3, rot 5, refl, t = (5, 3)corona 3, rot 0, refl, t = (-2, 7)corona 3, rot 1, t = (4, -7)corona 3, rot 0, t = (-3, -3)corona 3, rot 1, t = (6, -5)corona 3, rot 0, refl, t = (0, 6)corona 3, rot 5, t = (-5, 2)corona 3, rot 5, t = (-4, 0)corona 3, rot 0, t = (1, -5)corona 2, rot 0, t = (0, -3)corona 2, rot 2, refl, t = (-1, -1)corona 2, rot 5, refl, t = (4, 2)corona 2, rot 1, refl, t = (-3, 4)corona 2, rot 4, refl, t = (5, -1)corona 2, rot 1, refl, t = (-1, 3)corona 2, rot 3, t = (5, 3)corona 2, rot 3, refl, t = (4, -4)corona 2, rot 0, refl, t = (1, 4)corona 2, rot 5, t = (-4, 3)corona 2, rot 2, refl, t = (0, -3)corona 2, rot 4, t = (0, 6)corona 2, rot 1, refl, t = (-4, 3)corona 2, rot 4, t = (-2, 7)corona 2, rot 2, t = (7, -2)corona 2, rot 1, t = (4, -4)corona 1, rot 5, t = (-3, 4)corona 1, rot 0, t = (-1, -1)corona 1, rot 3, refl, t = (3, -2)corona 1, rot 5, t = (-1, 3)corona 1, rot 2, t = (5, -1)corona 1, rot 4, t = (1, 4)corona 1, rot 2, refl, t = (0, 0)corona 1, rot 1, t = (3, -2)corona 1, rot 3, t = (4, 2)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph28_296118113828 drafters, Heesch 3

28 drafters · 17 sides · Heesch = 3 · corona sizes 1, 5, 13, 22

The second non-tiler of the 28-drafter level, and not a pinwheel sixth. The 6-second triage ran out of budget at three coronas; a complete search of about three minutes per seed settles it at exactly 3 (corona sizes 1, 5, 13, 22; 41 tiles). No periodic tiling to torus index 56, and no identical or near-size containing tile anywhere in the project's tile files.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 4, refl, t = (3, -3)corona 3, rot 3, t = (-1, 5)corona 3, rot 0, t = (5, -4)corona 3, rot 2, refl, t = (-4, 2)corona 3, rot 2, t = (1, 4)corona 3, rot 5, t = (-5, 1)corona 3, rot 3, t = (6, 0)corona 3, rot 1, t = (4, -5)corona 3, rot 3, refl, t = (2, -4)corona 3, rot 1, refl, t = (3, 0)corona 3, rot 0, refl, t = (-3, 6)corona 3, rot 0, t = (1, -5)corona 3, rot 4, t = (-4, 5)corona 3, rot 1, t = (2, 2)corona 3, rot 1, refl, t = (-2, -2)corona 3, rot 4, refl, t = (7, -2)corona 3, rot 4, t = (-1, -1)corona 3, rot 5, t = (-1, -1)corona 3, rot 5, t = (-6, 3)corona 3, rot 5, refl, t = (0, 6)corona 3, rot 1, t = (6, -3)corona 3, rot 1, refl, t = (-3, 3)corona 2, rot 3, refl, t = (3, -3)corona 2, rot 2, refl, t = (5, -4)corona 2, rot 0, t = (-1, -1)corona 2, rot 1, t = (-2, 1)corona 2, rot 3, t = (-2, 1)corona 2, rot 3, refl, t = (0, 0)corona 2, rot 0, refl, t = (-2, 4)corona 2, rot 4, refl, t = (5, -1)corona 2, rot 2, t = (2, 2)corona 2, rot 2, t = (-2, 1)corona 2, rot 3, t = (0, 3)corona 2, rot 1, t = (4, -2)corona 2, rot 0, t = (1, 1)corona 1, rot 1, t = (3, -3)corona 1, rot 0, refl, t = (-1, 2)corona 1, rot 1, refl, t = (1, -2)corona 1, rot 2, refl, t = (0, 0)corona 1, rot 1, refl, t = (2, -1)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph28_3287386428 drafters, Heesch 3 (two hexagons)

28 drafters · 11 sides · Heesch = 3 · corona sizes 1, 5, 11, 27

The third non-tiler of the 28-drafter level: two whole 12-drafter hexagons plus four drafters, and not a pinwheel sixth. The 6-second triage ran out of budget at three coronas; a complete search of about 22 seconds per seed settles it at exactly 3 (corona sizes 1, 5, 11, 27; 44 tiles). No periodic tiling to torus index 56, and no identical or near-size containing tile anywhere in the project's tile files.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 3, refl, t = (-2, -1)corona 3, rot 1, t = (1, 6)corona 3, rot 0, refl, t = (-2, 10)corona 3, rot 4, t = (5, -1)corona 3, rot 3, refl, t = (8, -3)corona 3, rot 0, t = (3, 0)corona 3, rot 0, t = (-4, 0)corona 3, rot 4, t = (4, -1)corona 3, rot 5, refl, t = (0, -1)corona 3, rot 5, t = (-5, 6)corona 3, rot 1, t = (0, 5)corona 3, rot 5, refl, t = (3, -1)corona 3, rot 0, refl, t = (-5, 8)corona 3, rot 4, refl, t = (4, 8)corona 3, rot 0, t = (-3, 0)corona 3, rot 3, t = (-1, 5)corona 3, rot 5, t = (1, 7)corona 3, rot 5, t = (1, 6)corona 3, rot 2, t = (0, -2)corona 3, rot 5, refl, t = (4, 3)corona 3, rot 1, t = (-1, 5)corona 3, rot 3, t = (4, 5)corona 3, rot 5, refl, t = (1, -1)corona 3, rot 2, t = (1, -4)corona 3, rot 2, t = (0, -3)corona 3, rot 1, t = (1, 5)corona 3, rot 0, t = (2, -4)corona 2, rot 1, refl, t = (0, -2)corona 2, rot 2, refl, t = (2, 4)corona 2, rot 1, refl, t = (-3, -1)corona 2, rot 3, t = (0, 5)corona 2, rot 3, t = (3, 5)corona 2, rot 4, refl, t = (1, 6)corona 2, rot 1, refl, t = (2, -1)corona 2, rot 0, t = (-1, -3)corona 2, rot 0, t = (-2, 0)corona 2, rot 2, t = (6, -2)corona 2, rot 0, t = (2, 0)corona 1, rot 3, t = (2, 5)corona 1, rot 0, t = (1, 0)corona 1, rot 2, t = (3, -1)corona 1, rot 0, t = (-1, 0)corona 1, rot 3, t = (1, 5)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

ph29_4740_304857129 drafters, Heesch 4

29 drafters · 23 sides · Heesch = 4 · corona sizes 1, 5, 14, 23, 30

The only band shape the 29-drafter census found, and its only non-tiler: the third Heesch 4 of the survey. Its coronas grow differently from the two earlier Heesch 4s (corona sizes 1, 5, 14, 23, 30, 73 tiles, against 1, 9, 20, 31, 35). A complete full-geometry search with two seeds, each finished in a tenth of a second, proves no fifth corona exists and hence that it does not tile; both maximal patches pass the engine's full-geometry verifier, and there is no periodic tiling to torus index 58. The shape passes the pinwheel-sixth test, but its maximal patch does not build that pinwheel around the centre tile: the patch's only six-tile pinwheel is made of first- and second-corona tiles. No identical or near-size containing tile anywhere in the project's tile files (2,243,160 tiles checked; the smallest tile that contains it has 45 drafters).

the tile
colour by
centre1234
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 1 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 4, rot 4, t = (4, 6)corona 4, rot 4, t = (-4, 10)corona 4, rot 4, t = (5, 4)corona 4, rot 1, refl, t = (-4, 0)corona 4, rot 0, t = (-3, -2)corona 4, rot 1, refl, t = (-4, 1)corona 4, rot 2, t = (9, -7)corona 4, rot 5, refl, t = (6, 3)corona 4, rot 4, refl, t = (10, -3)corona 4, rot 4, t = (5, 5)corona 4, rot 2, t = (11, -8)corona 4, rot 3, t = (11, -1)corona 4, rot 3, t = (10, -2)corona 4, rot 3, refl, t = (8, -7)corona 4, rot 2, t = (10, -8)corona 4, rot 5, t = (-6, 6)corona 4, rot 3, t = (11, -2)corona 4, rot 3, refl, t = (7, -6)corona 4, rot 4, t = (2, 8)corona 4, rot 5, refl, t = (6, 2)corona 4, rot 1, t = (4, -8)corona 4, rot 4, refl, t = (9, -3)corona 4, rot 4, t = (1, 9)corona 4, rot 2, refl, t = (2, -5)corona 4, rot 1, t = (3, -7)corona 4, rot 1, t = (3, -6)corona 4, rot 4, t = (3, 7)corona 4, rot 1, refl, t = (-4, -1)corona 4, rot 5, refl, t = (-3, 10)corona 4, rot 0, refl, t = (-6, 7)corona 3, rot 1, t = (3, -5)corona 3, rot 0, refl, t = (-2, 7)corona 3, rot 0, refl, t = (0, 5)corona 3, rot 0, t = (-3, 0)corona 3, rot 0, refl, t = (2, 3)corona 3, rot 3, refl, t = (6, -5)corona 3, rot 4, refl, t = (8, -3)corona 3, rot 1, refl, t = (-3, 1)corona 3, rot 4, t = (5, 3)corona 3, rot 0, refl, t = (-1, 6)corona 3, rot 4, t = (5, 2)corona 3, rot 5, refl, t = (6, 1)corona 3, rot 2, refl, t = (2, -4)corona 3, rot 0, refl, t = (1, 4)corona 3, rot 3, t = (9, -2)corona 3, rot 0, refl, t = (-5, 7)corona 3, rot 0, t = (-3, -1)corona 3, rot 5, t = (-5, 6)corona 3, rot 3, t = (8, -2)corona 3, rot 0, refl, t = (-3, 7)corona 3, rot 0, refl, t = (-4, 7)corona 3, rot 2, t = (7, -5)corona 3, rot 2, t = (8, -6)corona 2, rot 0, t = (-2, 0)corona 2, rot 1, t = (3, -4)corona 2, rot 3, t = (7, -2)corona 2, rot 1, refl, t = (-2, 1)corona 2, rot 5, t = (2, 2)corona 2, rot 2, refl, t = (2, -3)corona 2, rot 5, t = (0, 4)corona 2, rot 5, t = (-2, 6)corona 2, rot 5, t = (-1, 5)corona 2, rot 5, t = (-3, 6)corona 2, rot 5, t = (1, 3)corona 2, rot 4, t = (5, 1)corona 2, rot 5, t = (-4, 6)corona 2, rot 2, t = (6, -4)corona 1, rot 0, t = (-1, 0)corona 1, rot 1, refl, t = (0, 1)corona 1, rot 0, t = (1, 0)corona 1, rot 1, t = (3, -3)corona 1, rot 1, refl, t = (-1, 1)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

kaplan7hex252 drafters (7 hexagons), Heesch 3 - published benchmark

252 drafters · 28 sides · Heesch = 3 · corona sizes 1, 7, 13, 24

Kaplan's heptahex, the unique hole-free Heesch-3 shape among the 333 free heptahexes, included for scale: the published small end of Heesch 3 sits at 252 drafters in this grid, and the survey's finds above do the same thing at 13 to 22.

the tile
colour by
centre123
rot 0rot 1rot 2rot 3rot 4rot 5rot 0 + reflrot 2 + reflrot 3 + reflrot 4 + reflrot 5 + refl
corona 3, rot 5, t = (12, -15)corona 3, rot 2, t = (-2, 19)corona 3, rot 2, t = (17, -13)corona 3, rot 5, t = (17, -7)corona 3, rot 5, t = (14, -10)corona 3, rot 5, t = (-19, 11)corona 3, rot 3, t = (-13, 17)corona 3, rot 4, refl, t = (-12, -3)corona 3, rot 0, refl, t = (14, -1)corona 3, rot 5, t = (-12, 24)corona 3, rot 0, t = (-13, 20)corona 3, rot 5, refl, t = (-3, -6)corona 3, rot 1, t = (-2, 13)corona 3, rot 4, t = (-19, 17)corona 3, rot 0, t = (-15, 0)corona 3, rot 1, t = (11, -16)corona 3, rot 4, t = (7, 7)corona 3, rot 2, refl, t = (3, 9)corona 3, rot 3, refl, t = (-7, -7)corona 3, rot 1, t = (-9, 15)corona 3, rot 2, refl, t = (5, -13)corona 3, rot 5, refl, t = (2, -10)corona 3, rot 0, t = (-13, 5)corona 3, rot 3, refl, t = (17, -1)corona 2, rot 5, t = (7, 1)corona 2, rot 2, t = (11, -10)corona 2, rot 4, refl, t = (-7, -1)corona 2, rot 5, t = (11, -4)corona 2, rot 3, refl, t = (4, -8)corona 2, rot 2, t = (14, -7)corona 2, rot 3, t = (-10, 5)corona 2, rot 2, t = (6, 6)corona 2, rot 4, t = (-9, 18)corona 2, rot 3, refl, t = (-2, -5)corona 2, rot 0, t = (-11, 10)corona 2, rot 5, t = (-4, 11)corona 2, rot 3, t = (-8, 10)corona 1, rot 5, t = (-6, 6)corona 1, rot 5, t = (4, -2)corona 1, rot 1, t = (6, 0)corona 1, rot 2, t = (1, -2)corona 1, rot 3, t = (-5, 4)corona 1, rot 2, t = (7, -5)corona 1, rot 2, t = (-1, 8)corona 0, rot 0, t = (0, 0)
the maximal patch · scroll to zoom, drag to pan, double-click to reset

Size comparison

shapedrafterssidesHeesch
ph13_109091312= 3
pw14_496148= 3
pw17_874891715= 3
ph19_4656521916= 3
pk10_95092019= 3
ph22_12261039229= 5
ph22_172437228= 3
ph23_223085272319= 3
ph25_2920250252520= 4
ph25_103717005258= 3
ph26_8543553652612= 4
ph27_11493299202710= 3
ph28_28887137112813= 3
ph28_29611811382817= 3
ph28_328738642811= 3
ph29_4740_30485712923= 4
kaplan7hex25228= 3

Kaplan's heptahex, the published small end of Heesch 3, needs 252 drafters; the survey's finds do the same at 13 to 22, and the 22-drafter shape reaches Heesch 5 where the previous smallest Heesch-5 shape known to us needs 141.

Size 24, resolved

Size 24 looked like the first rich level: 940 band shapes at the 6-second triage, with a suspiciously flat depth histogram and shapes holding 7, 8 and 9 coronas for as long as they were given. It was rich in slow tilers. Every one of the 949 budget-limited shapes has been shown to tile the plane periodically: 713 isohedrally (Kaplan's isohedral test, then a periodic tiling exhibited by our own torus search, index at most 4) and 236 anisohedrally (tilings on tori of index 6 or 12, which the isohedral test cannot see), and an independent exact-cover program that shares no code with the engine re-found a tiling for all 949. A shape that tiles has coronas of every order, so none of them can carry a finite Heesch number. Size 24's non-tiler count is therefore zero, and the size-22 Heesch 5 still stands alone. The lesson is now built into the pipeline: a shape leaves the census only with a checked periodic tiling, and every deep hold gets the tiling tests before it gets another second of corona search.