Skip to main content

Module classify

Module classify 

Source
Expand description

Tiling classification: screen enumerated cyclotomic tiles into the buckets cannot tile / tiles periodically / undecided candidate (the aperiodic-monotile / spectre-sibling hunt), via sound one-sided tests that engage the real global geometry.

Two complementary sound verdicts:

  • heesch – the Heesch-number reject: how many coronas can fully surround the tile (rotations only)? A finite Heesch number is a sound proof the tile cannot tile; Heesch 0 (cannot be surrounded even once) is the cheapest, highest-yield reject – just the bound = 1 case.

  • the sound periodicity acceptance: where finite Heesch proves a tile cannot tile, these prove it does tile periodically (disqualifying it as an aperiodic monotile). cascade::certify_periodic runs a cheap-first cascade of constructively-verified detectors – conway::conway_criterion (p1/p2), torus::tiles_torus (patch-derived k-tile domains), the aniso cluster and isohedral (p3/p4/p6) searches – with WithAdjacency carrying the tile adjacency the mint carve reads to cut a translation cell, grow building the lattice-exposing corona patches, the shared plane-lattice primitives in lattice, and every positive gated by the exact verification in tilingminting a provenance-tagged certificate a verifier can replay.

Both verdicts fire only positively and soundly: neither can decide tiling in general (the domino problem is undecidable), so a tile that is neither rejected nor accepted stays an undecided candidate.

§Scope of the certified claims

All verdicts are relative to SINGLE-CHIRALITY, EDGE-TO-EDGE tilings: copies are rotated by ring units (multiples of one turn / T::turn()), never reflected, and adjacent copies share complete unit edges.

  • Rotations: no loss of generality within edge-to-edge tilings. An edge-overlapping contact forces the two edge directions to coincide, and every edge direction of a rat is a ring unit, so along the (connected) edge-contact graph of a tiling every copy is rotated by a ring unit.
  • Reflections: excluded BY CHOICE – this is the chiral aperiodic-monotile hunt (the spectre family tiles without its mirror image; admitting reflections would be a different question).
  • Edge-to-edge: the SEARCH only ever generates full unit-edge contacts, and Z[zeta_12] is dense, so brick-wall-style slides exist in principle (translating a neighbour by e.g. 2 - sqrt(3) along a shared edge line produces T-vertices – a corner resting on the interior of another tile’s edge). This is NOT a gap in the cannot-tile claims: by the edge-to-edge reduction theorem (docs/math/edge-to-edge-reduction.md), any single-chirality tiling of the plane by a unit-edge polygon can be realigned, strip by strip along its parallel slid fault lines, into an edge-to-edge tiling. Hence “no edge-to-edge tiling” (what a cert::HeeschCert with Finite status establishes) already implies “no single-chirality tiling at all”. Periodic ACCEPTS never needed the reduction: a verified cert exhibits a concrete tiling.

Modules§

aniso
Anisohedral periodicity: the monotile tiles by a multi-tile cluster.
cascade
The decision cascades: compose detectors + minters into a verdict.
cert
Certificates of a screened tile’s verdict.
classify_tiles
Classify a tilezz-ratdb DAFSA asset into a certified verdict store.
conway
The Conway criterion – the cheapest sound “tiles periodically” detector.
grow
Corona-patch growers: build a compact, near-periodic patch of a monotile by the Heesch burial discipline (close every boundary edge before moving outward, with backtracking), capturing each placed copy’s Iso placement. The torus cover detector reads candidate lattices off these patches, and the cert carve reads the tile adjacency off the grown patch inline (no recipe replay – replay survives only for re-deriving a stored witness).
heesch
Heesch-number filter – the surroundability stage of the candidate-filter pipeline, generalising “first corona” to “how many coronas”.
isohedral
Edge-gluing isohedral search (p3/p4/p6 and beyond).
mint
Certificate minters: turn a detector’s positive into a replayable, verify-gated PeriodicCert / HeeschCert.
render
Render a Heesch / corona witness patch to a picture.
reptile
Rep-tile screen: does a tile tile a scaled-up copy of itself?
store
On-disk verdict store for the classifier: the JSONL <dafsa index>\t<Classified> format plus the machinery around it.
tiling
Constructed-tiling infrastructure: the shared shape every periodic detector’s positive takes – a Tiling (generators + lattice + placed orbit) – and the EXACT verification that gates every accept.
torus
Torus cover – a sound (but not complete) periodic-acceptance stage.