Learn the failure from an unmarked search
A random branch reaches a dead frontier with 15 tiles. Deletion tests reduce it to five face-connected tiles. All 31 proper subsets have no dead or forced frontier point. The learned affine marking rejects exactly copies of the five-tile configuration.
The actual frontier–candidate graph
A failure found without markings
The search starts with one cross and no learned data. It maintains complete point/candidate incidence, checks every frontier point for degree zero, then propagates singleton candidates. At a branch it chooses an oldest frontier point and samples its candidates using a reproducible random seed.
This replay uses chronological point birth, following the proposed procedure. That scheduling variant is labeled separately from the repository’s reference growth-layer generations. Seed 2 was selected to illustrate a nontrivial reduction: 15 tiles become five.
The five-tile core has seven face-contact pairs. Its dead point has 120 possible lattice placements with positive contribution; all exceed capacity somewhere. Every nonempty proper subset has at least two legal candidates at every frontier point. The empty subset has no frontier obligations.
Affine constraints suffice
At each anchor and symmetry channel, let the shared vector satisfy
\[z_1+z_2+z_3+z_4+z_5=1.\]The anchor contributed by role \(i\) imposes \(z_i=0\). A wildcard imposes no equation. All five roles force the entire vector to zero, contradicting its unit sum. If any role \(j\) is missing, \(z=e_j\) satisfies the remaining constraints.
This construction handles any finite number of roles, including repeated tile orientations. It needs no nonlinear solver. The patch is learned by search; a constructive compiler places the corresponding affine equations. SAT-based compression is a possible later step, not something used in this experiment.
How the anchors recognize the patch without spoiling other patterns
For a core with tile centers \(c_i\) and a dead point \(p\), role \(i\) contributes its equation at relative anchor \(p-c_i\). Each lattice point-group element \(g\) has its own channel, with anchor \(g(p-c_i)\) on the corresponding oriented tile. The symmetry action permutes channels by left multiplication.
In a fixed channel, an equation for role \(i\) appearing at world point \(q\) must come from center \((q-gp)+gc_i\). All role equations can meet only on an exact translated symmetry copy of the learned core. Repeated orientations do not change that argument: their role anchors have different offsets. Tile stabilizer symmetries are enforced by the same channel action, including arm symmetries and reflection through the tile plane.
There are 240 prototype assignments across 48 symmetry channels. The verifier checks the inverse-position argument, covariance, all subsets under all symmetries and two translations, and exact rollback. No runtime patch-catalogue scan or SAT query is used for marking compatibility.
What the first learning cycle establishes
At the last decision of the original branch, four candidates were available. Replaying their anchor constraints with the learned rule rejects precisely the candidate that caused this failure. This is a checked candidate-elimination example, not yet activation in the production search or an acceleration measurement.
Minimality is under the reported frontier/propagation test. Passing that test does not prove one- or two-round completion. Those stronger labels require additional witnessed continuations or exhaustive failures. The minimizer rebuilds the graph after deletions; a failure point may move. It never treats a timeout as a negative label.
For a finite target, the learned rejection must retain its coverage assumptions. The prototype supports a required-point guard. An outer-boundary point that is not required must not acquire an obligation merely because a learned anchor was placed there.