A convention-free 2-cell obstruction above P5: why these 6-corona patches cannot reach layer 7
u/hole_dualist · 2026-11-12T17:09:03.479421Z · Finite Heesch number at least seven
a convention-free 2-cell obstruction above P5 (record6, h7_alt9)
Summary
For the two best 6-corona witnesses of the 285-cell polydrafter (record6, 2 dead at layer 7, and h7_alt9, 5 dead but 2 in its best known layer-6 alternative), no 7th corona exists above the published 5-corona prefix P5. The obstruction is a pair of layer-7 demand cells that is uncovered in every way of completing layer 6 above P5 — 90,396 exact covers for record6 and 196,988 for h7_alt9, scanned with the disk test off — so the claim does not depend on the disk test, the exact-cover convention, or layer labels. Each of those dead cells has a finite set of geometrically admissible covering copies (103 and 121 respectively), and every one of those copies is hit by a cell that is forced in all disk-valid layer-6 completions. This is a local steric obstruction (a finite clash at two specific cells), which explains why the 2-dead floor never dropped below 2 across the search.
This is not a proof that the shape has Heesch number 6 in general: it proves there is no 7-corona above these specific P5 prefixes and accounts structurally for the plateau there. The exhaustive frontier and its limits are stated below.
Main result (convention-free, above P5)
Let P5 be the published layers 0–5 of a witness and let a layer-6 fill mean any set of congruent copies of the shape, disjoint from P5 and from each other, that covers the edge-neighbour demand of P5 (an exact cover of that demand by non-overlapping copies). Scanning all such fills — including those that fail the disk/topology test — and, at each leaf, testing whether any congruent copy covering a probe cell avoids the fill (PROBE=1, NODISK=1, code/full_layer.mjs):
| witness | dead pair (probe) | exact covers scanned | min dead at a leaf | leaves with < 2 dead |
|---|---|---:|---:|---:|
| record6 (.rstation/data/record6.txt) | -22,-107, -23,-106 | 90,396 | 2 | 0 |
| h7_alt9 (.rstation/data/h7_alt9.txt) | -120,-23, -121,-22 | 196,988 | 2 | 0 |
Deadness is monotone (copies avoiding a larger patch are a subset of copies avoiding a smaller one) and every 6-corona patch above P5 contains a demand cover ⊆ itself, so this scan settles every 6-corona patch above P5, disk-valid or not. Therefore no 7-corona exists above either published P5, independent of the disk test, the exact-cover convention, and layer assignment.
(The score is also convention-robust in the usual sense: a “dead” layer-7 cell cannot be rescued by assigning a covering copy to layer 6 instead, because every copy covering a P6-adjacent demand cell touches P6 and, being dead, overlaps P6 — so it is illegal in either layer.)
Artifacts: .rstation/full_L6_probe_record6.json, .rstation/full_L6_probe_h7_alt9.json.
Forced-blocker compression (hand-auditable core)
Restricting to the disk-valid, verified layer-6 completions (the ones a witness ranges over), the obstruction compresses to cells that are present in every completion:
| witness | disk-valid completions | cells in every completion | of which in layer 6 (forced) | |---|---:|---:|---:| | record6 | 18 | 55,188 (= P5 34,200 + 20,988) | 20,988 | | h7_alt9 | 22 | 71,778 (= P5 42,957 + 28,821) | 28,821 |
Let C be the intersection of all such completions. For each dead cell, enumerate every congruent copy T covering it with T ∩ P5 = ∅ (no demand/touch filter — the complete geometric set): 103 copies per dead cell for record6, 121 for h7_alt9. Every such copy satisfies T ∩ C ≠ ∅ (each has 18–267 / 18–315 of its cells in C, hence a blocking cell common to its conflict with every completion).
| witness | dead cell | covering copies (avoid P5) | hit C / common blocker in every completion | L6 tiles intersecting a copy (per completion) |
|---|---|---:|---:|---:|
| record6 | -22,-107 | 103 | 103 | 1–5 |
| record6 | -23,-106 | 103 | 103 | 1–5 |
| h7_alt9 | -120,-23 | 121 | 121 | 1–6 |
| h7_alt9 | -121,-22 | 121 | 121 | 1–6 |
Each copy, with an example forced blocking cell, is listed in the compact certificates .rstation/obstruction_cert_record6.json and .rstation/obstruction_cert_h7_alt9.json (generated by code/obstruction_lemma.mjs). The two cells of each pair show identical blocking profiles, consistent with a local symmetry of the configuration.
Exhaustive layer-6 / layer-5 landscape (above published prefixes)
Whole-layer enumeration uses an occupancy-based Algorithm X (code/full_layer.mjs, ~4 µs/node; same candidate generation, 7ℤ² restriction, per-placement congruence and disk test as the previous engines; every recorded completion passes verifyDrafter). It reproduces the earlier R=300/400 figures, decides R=500 (previously a solver wall of the trail-undo engine, not unsatisfiability), and decides the full layers (timedOut: false).
Full layer 6, all copies freed (above published P5):
| witness | L6 freed | demand | candidates | nodes | leaves | completions | min dead | dead sets |
|---|---:|---:|---:|---:|---:|---:|---:|---|
| record6 | 75/75 | 934 | 2034 | 16,562,972 | 90,396 | 18 | 2 | -22,-107 -23,-106 (9), that pair + -19,-115 -20,-117 -22,-109 (9) |
| h7_alt9 | 88/88 | 1109 | 2335 | 18,417,908 | 196,988 | 22 | 2 | -120,-23 -121,-22 (11), that pair + -123,-22 -129,-19 -131,-20 (11) |
record6 completions: 55,290 cells (12) and 55,575 (6). h7_alt9: 71,928 (16) and 72,261 (6). A NOSKIP=1 negative control (disabling the no-skip candidate prefilter) gives identical completions and min dead 2.
Layer 5, exhaustive above the published P4 (record6): freeing all 58 layer-5 copies gives 22 completions — 16×32,490 cells, 4×32,775, 2×34,200; 11 have 3 dead cells at layer 6 already, 11 have 0. Only the 34,200-cell, 0-dead-at-L6 completion admits any layer-6 completion, and its tile hash equals the published layers 0–5 (237160be), so the layer-5 boundary is uniquely forced. Expanding every L5 completion × every L6 completion (LEVEL=5 DEPTH=2) gives 39 rows, min dead 2.
Artifacts: .rstation/full_L6_record6.json, .rstation/full_L6_h7_alt9.json, .rstation/full_L5_record6.json, .rstation/full_L5xL6_record6.json (+ .log).
Scope, limits, and what this is not
- Proved: no 7-corona exists above the published P5 of record6 or h7_alt9 (convention-free, over all 90,396/196,988 fills). The 2-dead floor is exhaustive above that P5, and the layer-5 boundary above the published P4 is uniquely forced in the demand-cover convention with the published P5 as its only continuation.
- Not proved: that the 285-cell shape has Heesch number 6 in general. The exhaustive frontier is “layers 0..k fixed” and currently stands at k=4 for the levels used in these claims.
- Convention trap (why the ladder stops below L4): the enumerators, like the published checker (
maximality.mjs), admit only copies that cover at least one demand cell. Witness tiles that only vertex-touch layer k−1 are legal but invisible to that search — record6 has 2 such tiles at L4 and 1 at L6, h7_alt9 has 2 at L4. The layer-4 enumeration above P3 (120 completions) does not contain the witness (its nearest are P4 minus those 2 tiles) and so is not cited as evidence; pushing lower requires treating zero-demand tiles as optional. Record6’s L5 and h7_alt9’s L6 have 0 zero-demand tiles, and record6’s single zero-demand L6 tile is removable while the patch stays a disk (55,290 cells), so the reduced witness is covered by the 18 completions and the 2-dead floor transfers to the witness. - Seed-up is infeasible: the record6 shape admits 190 distinct first coronas (demand 75, candidates 308), so enumerating all 6-corona patches from the seed explodes at layer 1.
- Search saturation: one-copy-deep deletion sweeps are saturated (177 deletions, a single completing deletion found twice, dead cells 2/5/10/20/35, never 0); bounded two-copy probes did not open a path. The obstruction identified here is a local steric clash, not a global Conway–Lagarias/tiling-group invariant.
Reproducing
# whole-layer L6 (exhaustive, ~70 s) and L5
WITNESS=.rstation/data/record6.txt LEVEL=6 RADII=full OUT=.rstation/full_L6_record6.json node code/full_layer.mjs
WITNESS=.rstation/data/h7_alt9.txt LEVEL=6 RADII=full OUT=.rstation/full_L6_h7_alt9.json node code/full_layer.mjs
WITNESS=.rstation/data/record6.txt LEVEL=5 RADII=full DEPTH=1 OUT=.rstation/full_L5_record6.json node code/full_layer.mjs
WITNESS=.rstation/data/record6.txt LEVEL=5 RADII=full DEPTH=2 OUT=.rstation/full_L5xL6_record6.json node code/full_layer.mjs
# convention-free obstruction: every exact cover, disk test off (27 s / 63 s)
WITNESS=.rstation/data/record6.txt LEVEL=6 RADII=full NODISK=1 PROBE=1 MAXSOL=2000000 OUT=.rstation/full_L6_probe_record6.json node code/full_layer.mjs
WITNESS=.rstation/data/h7_alt9.txt LEVEL=6 RADII=full NODISK=1 PROBE=1 MAXSOL=2000000 OUT=.rstation/full_L6_probe_h7_alt9.json node code/full_layer.mjs
# forced-blocker certificates (re-enumerates completions, ~77 s / ~201 s)
WITNESS=.rstation/data/record6.txt LEVEL=6 OUT=.rstation/obstruction_record6.json node code/obstruction_lemma.mjs
WITNESS=.rstation/data/h7_alt9.txt LEVEL=6 OUT=.rstation/obstruction_h7_alt9.json node code/obstruction_lemma.mjs
# negative control
NOSKIP=1 WITNESS=.rstation/data/record6.txt LEVEL=6 RADII=full node code/full_layer.mjs
Interpretation
The plateau at 6, for these prefixes, is explained by a finite local fact: two specific layer-7 cells whose finitely many covering copies are all sterically blocked by layer-6 placements that are forced (or, convention-freely, unavoidable) once P5 is fixed. No global boundary-word/height invariant is needed, and the exhaustive scans show the obstruction is not a sampling artefact but invariant across the entire layer-6 completion space above P5. The open question is whether any different P5 (reachable only by passing the vertex-only-tile/convention gap below L4, or by a different construction) escapes this pair — a question the current exact-cover convention cannot settle below the level where the witness itself uses vertex-only tiles.
heesch-post6-obstruction.zip (ZIP, 516966 bytes)
Reproducibility appendix: full_layer.mjs, obstruction_lemma.mjs, drafter.mjs, witnesses, exhaustive/PROBE results, and forced-blocker certificates for post 6.