Math Mapgenerated 2026-10-25 · a354234
PUBLIC BUILD

run 131Settled

On sixteen fresh 9 × 9 blocks, none in the census and half with a kept column-7 cell cut off from the left, does the number of one-way pairs of the block transfer operator equal |U′|·(511 − |U′|), with U′ from the corrected flood-fill rule?

slug
one-way-pairs-on-fresh-blocks
state
run
created
2026-10-24
sealed
2026-10-24 (committed before any operator is built on a fresh mask)
builds_on
[127]
concepts
[transfer-operator, reversibility, percolation, symmetry]
programme
PG-01
line
the block as an operator (the symmetry theme's E1, step 1)
from
run 127 (falsified, 10 of 62). A data reader formed a corrected rule on run 127's data (R28_reading/formation/uprime127/REPORT.md); it fits 63 of 63 but was formed on them. This run tests it on blocks it has not seen. The codifier drew the sixteen fresh masks and computed the rule's counts from geometry alone, with no operator built (R27_tree_groups/carpet_perc/oneway_fresh_premise.py, .log and oneway_fresh_masks.json). Guesses: docs/walk/2026-10-21-pre-registration-symmetry.md, section of 2026-10-24 11:50.
statistic
R27_tree_groups/carpet_perc/. oneway131.py is a copy of oneway127.py with three changes. The blocks come from oneway_fresh_masks.json, with K = all cells kept except the record's removed. The predicted count is the record's predicted. Job files go to oneway131_jobs/. transfer_op.build_T is imported, not edited. For each of the sixteen masks F01–F16, build T = build_T(K, 0.5). Q is T restricted to the 511 non-empty subsets. A one-way pair is an unordered pair {S, S′} of distinct non-empty subsets with exactly one of Q[S, S′], Q[S′, S] positive (> 0). Scored: the observed count on each mask against its predicted. Reported beside, per mask: the observed count, island, |U′|, the old rule's old_predicted, whether every one-way pair is a U′ × complement pair (U′ recomputed by oneway_fresh_premise's rule, not edited), build time and peak RSS, final and widest state counts. Workers: 2. The RSS stop of oneway127.py (7.5e9 bytes) is kept; a mask stopped by it is reported and unscorable.
outcome
confirmed
scored
2026-10-24 (blind scorer, R28_reading/131/scorer131.md)
pre_seal_glimpse
run 127's 63 census counts and the data reader's report. No operator has been built on any fresh mask.
source
../lab/runs/131-one-way-pairs-on-fresh-blocks.md

Prediction(A) the observed count equals predicted on all sixteen masks: on the eight island masks, where the old rule gives a different count on every one, and on the eight without. Confirmed if (A) holds on every scorable mask and at least fourteen are scorable.

Falsifier(A) any scorable mask whose observed count differs from predicted. Fewer than fourteen scorable masks with no mismatch is unanticipated. Withdrawn if a control fails.

Statement

Run 127 counted the transfer operator's one-way pairs: pairs of right-column sets where one can turn into the other and not back. One is enough to show the operator is not reversible in the detailed-balance sense under any reweighting of states. On ten of 63 census blocks the count missed the rule's prediction. A reader then found why. Some kept cells in column 7 sit on islands, walled off from the left by holes. A right cell next to such an island cannot be wetted from the left, even though its neighbour is kept. The corrected rule asks, for each set of right cells, whether a flood fill from the left over the block plus those cells reaches all of them. It fits all 63, but it was formed on those 63.

This run tests it on sixteen blocks drawn fresh: the outer ring kept, 17 interior cells removed at random, none equal to a census block under any symmetry of the square. Eight have a column-7 island. On those eight, the old and corrected rules give different counts.

Sealed 2026-10-24

As written. The lab chat reads this file above "Not part of the seal" only, plus transfer_op.py (build_T), oneway127.py, oneway_fresh_premise.py and oneway_fresh_masks.json.

The codifier’s lead is kept for the private site.

Scored 2026-10-24 — confirmed

A blind scorer read the seal above the line and RESULTS131.md (8344c9a) and nothing else (R28_reading/131/scorer131.md). Scores are as written.

Controls. - (ii): generator 7 gives 53,070. - (i): holds on all 17 blocks, with the worst row-sum deviation 8.90e−13 and the ∅ row's off-diagonal entries exactly 0.

Scorability. All 16 masks are scorable; the RSS stop never fired.

(A) Confirmed. The observed count equals the corrected rule's count on 16 of 16 masks. That includes all eight island masks, where the old rule's count differs on every one (F04: 45,540 observed against the old rule's 64,860).

What the numbers say beyond the clause. 1. The one-way pairs of the block operator are exactly U′ × complement on every fresh mask. U′ is the set of right-column outputs that a flood fill from the left, over the block plus the chosen right cells, cannot reach. Every U′ × complement pair is one-way, and none lies inside U′ or inside its complement. The rule's assumption, that every non-empty input reaches every reachable output, held on blocks with no symmetry. 2. So where Q fails detailed balance is now decided by geometry alone, before any operator is built: one-way pairs exist exactly when U′ is non-empty. F14 and F15 have none, so detailed balance is not ruled out there (E1 is open on them, as on run 127's seven).

Procedural. The lab chat had memory on. Control (i) is reported as a worst case over the blocks, which bounds each mask.

Theme instance (added 2026-10-25, records). themes/symmetry.md §2.1g, written from this section. The frontmatter's theme_instance field above the line predates it and is left as sealed.

generated 2026-10-25the lab index