Forward bound (brick 3b): T P is level-canonical, for every degree d. #
The crux geometric half of the Reconstruction Lemma: the delete-min survivors T P of a
critical portrait are always level-canonical, ∀ j < d, #{u ∈ T P : level u ≤ j} ≤ j.
This is the global non-crossing/ballot "Catalan heart" of the general census proof, here
proved for ALL d (sorry-free, native_decide-free; axioms ⊆ {propext, Classical.choice,
Quot.sound}). Follows the paper proof docs/b2_forward_reconstruction_2026-06-16.md
(Lemma A laminar, Lemma B monotone columns, the Kernel, the laminar-forest recursion);
probe probes/check_b2_forward.py confirms d ≤ 6.
The proof has two parts.
PART I (
AbstractLaminar) — a self-contained combinatorial result about a finite family of half-open integer intervals(lo e, hi e]with columnscol e, pairwise laminar (Lemma A), interval-injective, with the Lemma-B column monotonicities (bRight/bLeft/bSeam). The master boundN(a,b) ≤ b - apackages the Kernel (g(e) ≤ h(e) - 1), the laminar-forest recursion, and the no-tiling crux (a column scanc* < q₁ ≤ ⋯ ≤ qₖ < c*).PART II (
CriticalPortraits) — the geometric edge model. Edges ARE the survivors: each survivorx ∈ T Pis the top of a unique edge whose other endpoint is its immediate predecessorpredIn xin its host critical set.hi x = level x,col x = fiber x,lo x = level (predIn x). Lemmas A/B + interval-injectivity all reduce to ONE master non-alternation lemmano_alt(no two survivors' endpoints alternatepx < py < x < y), which dispatches cross-host via the portrait'sUnlinkedclause and same-host via predecessor immediacy. Assembling theFamilyand applying the master bound at window(0, j]givesT_levelCanonical.
PART I — Abstract laminar interval family: Kernel + forest recursion. #
A finite family E : Finset ι of half-open integer intervals (lo e, hi e] with columns
col e, pairwise laminar (Lemma A), intervals identifying edges (inj), and the Lemma-B
column properties (bRight/bLeft/bSeam). The master bound
N(a,b) := #{e ∈ E : a ≤ lo e ∧ hi e ≤ b} ≤ b - a packages the Kernel + the
laminar-forest recursion + the no-tiling crux.
Edges contained in the window (a, b].
Instances For
The count N(a,b).
Equations
- AbstractLaminar.N fam a b = (AbstractLaminar.contained fam a b).card
Instances For
Empty window: no contained edges.
"strict": interval not exactly the window.
Instances For
Equations
The strictly-contained indices of fam on the window [a, b].
Equations
- AbstractLaminar.Sstrict fam a b = Finset.filter (AbstractLaminar.IsStrict fam a b) (AbstractLaminar.contained fam a b)
Instances For
Strict edges containing f.
Equations
- AbstractLaminar.containersS fam a b f = {g ∈ AbstractLaminar.Sstrict fam a b | fam.lo g ≤ fam.lo f ∧ fam.hi f ≤ fam.hi g}
Instances For
The strict root of f: widest strict containing edge (total; junk = f off Sstrict).
Equations
- AbstractLaminar.rootS fam a b f = if hf : f ∈ AbstractLaminar.Sstrict fam a b then ⋯.choose else f
Instances For
The roots in window (a,b]: maximal strict edges.
Equations
- AbstractLaminar.Roots fam a b = {r ∈ AbstractLaminar.Sstrict fam a b | AbstractLaminar.rootS fam a b r = r}
Instances For
Uniqueness: two roots that both contain g's interval coincide.
Edges with interval exactly the window.
Equations
- AbstractLaminar.topEdges fam a b = {e ∈ AbstractLaminar.contained fam a b | fam.lo e = a ∧ fam.hi e = b}
Instances For
At most one top edge (intervals identify edges).
The Finset.Ioc intervals of distinct roots are disjoint.
The master counting bound N(a,b) ≤ b - a.
PART II — The geometric edge model (edges = survivors) and the forward bound. #
Phase -1: arithmetic engine reused everywhere. #
Phase 0a: host-set recovery (the edge's home critical set). #
Phase 0b: predecessor = the other endpoint (immediate predecessor in the host). #
The immediate predecessor of survivor x inside its host set: the .val-greatest
element of the host strictly below x.
Equations
- CriticalPortraits.predIn P x hx = ⋯.choose
Instances For
predIn x is the immediate predecessor: no host element strictly between it and x.
Phase 1: the crossing engine. #
Cross-host crossing: an alternating val-quadruple px < py < x < y with px,x in host x
and py,y in host y (distinct hosts) contradicts the portrait's Unlinked clause.
Phase 2: total edge data (loV, hiV, colV). #
The low interval-endpoint value of x within its host critical set.
Equations
- CriticalPortraits.loV P x = if hx : x ∈ CriticalPortraits.T P then (CriticalPortraits.predIn P x hx).val / m else 0
Instances For
Phase 3: the master non-alternation + same-host glue. #
THE MASTER NON-ALTERNATION LEMMA. No two survivors' endpoints alternate as
px < py < x < y (covers cross-host via Unlinked and same-host via immediacy).
Phase 4: the LEMMA A / LEMMA B / inj axioms (in loV/hiV/colV). #
LEMMA A: laminar (no proper overlap of level-intervals).
LEMMA B (right-aligned): share top, nested right ⇒ inner col smaller.
LEMMA B (left-aligned): share bottom, nested left ⇒ inner col larger.
INJECTIVITY: distinct survivors have distinct level-intervals.
The laminar interval family of a portrait's survivors (edges = survivors).
Equations
- One or more equations did not get rendered due to their size.