GCTS / cyclotomic tilings
Ammann–Beenker tiling
Squares, silver rhombs, and matching values at points.
The octagonal member of the family. With \(\zeta_8=e^{\pi i/4}\), vertices lie in \(\mathbb Z[\zeta_8]\subset\mathbb Q(\zeta_8)=\mathbb Q(i,\sqrt2)\). Its inflation factor is the silver ratio \(1+\sqrt2\).
The number field and the two shapes
Use the independent integral basis \(1,\zeta_8,\zeta_8^2,\zeta_8^3\), with \(\zeta_8^4=-1\). Every unit edge is a power of \(\zeta_8\). The field has degree \(4\), and its real subfield is \(\mathbb Q(\sqrt2)\). The ring \(\mathbb Z[i,\sqrt2]\) is a proper subring of \(\mathbb Z[\zeta_8]\): \(\zeta_8=(1+i)/\sqrt2\).
The conjugation \(\zeta_8\mapsto\zeta_8^3\) supplies the internal plane in the cut-and-project construction. A regular octagonal window selects the vertex set. This page searches by local matching rules; it does not use that window or an inflation patch to choose its moves. See Jagannathan and Duneau, Sections 2.1–2.3.
What the marking enforces
Shared edges must agree on arrow direction. At each vertex, the shaded fragments must assemble into one complete house-shaped arrow. The rhomb has two reflected decorations. Edge arrows alone are weaker and permit periodic tilings; use the full rule for the Ammann–Beenker experiment. The decorations follow Tatham, Figures 14 and 36; the aperiodic role of the combined rule is described by Grimm, page 10.
GCTS assigns an edge direction at every midpoint and a house orientation at every vertex. Where a fragment admits several complete houses, the catalog contains every such choice. Shared assigned values must agree, including assigned zero. The drawn whole house shows that chosen orientation, including at unfinished boundary vertices. Clicking it reveals the value.
These are supplied markings. No new marking is trained. The completion cache stores proved local obstructions for the current selected catalog. Changing the rule or tile set resets the search and cache.
Point model and search scope
The exact point domain is \(\tfrac12\mathbb Z[\zeta_8]\); translations lie in \(\mathbb Z[\zeta_8]\). Corner values are \(1/8\) and \(3/8\) for a rhomb, and \(2/8\) for a square. Every edge midpoint contributes \(4/8\). Each required point must reach total \(1\).
The complete frontier graph checks global dead ends, global forced moves, then the earliest generation. Candidate order uses the search seed. All capacities, point identities and marking comparisons are exact; polygon separation is an explicitly numerical geometric control. GCTS additionally exhausts the possible corner completions before branching. The baseline uses the same catalog and scheduler without that propagation.
The initial rhomb has a fixed compatible choice of house labels; the seed input changes branch ordering. Only newly exposed support points are activated. Exhaustion applies to the fixed seeded problem; a budget stop means unknown. This is a finite growth experiment, not a certificate that the entire plane has been tiled.