Skip to content

Commit ffa3152

Browse files
claudehyperpolymath
authored andcommitted
proof(ordinal): unbudgeted sound-carrier extended order wf-<ᵇ⁺² (K-limited shared-binder)
Roadmap open-item #2 ("full constructor set beyond the admitted core — the K-limited shared-binder cases <ᵇ-ψα, <ᵇ-+2") in its achievable form: the sound-carrier analogue of OrderExtended._<ᵇ⁺_. `_<ᵇ⁺²_` = the sound core `_<ᵇ²_` + the two one-step shared-binder constructors (<ᵇ⁺²-ψα, <ᵇ⁺²-+2) with `_<ᵇ²_` inner premises (vs the native `_<ᵇ_` that OrderExtended uses). Every `_<ᵇ⁺²_` derivation is a `_<ᵇʳᶠ²_` derivation (the one-step shared-binder case is the <ᵇʳᶠ²-core-headed instance of the recursive congruence), so: * <ᵇ⁺²⇒<ᵇʳᶠ² : x <ᵇ⁺² y → x <ᵇʳᶠ² y (3-case embedding) * rank2-mono-<ᵇ⁺² : via the embedding + rank2-mono-<ᵇʳᶠ² * wf-<ᵇ⁺² : Subrelation.wellFounded <ᵇ⁺²⇒<ᵇʳᶠ² wf-<ᵇʳᶠ² — NO budget Why this is the achievable form: native `_<ᵇ⁺_` WF is OPEN (only the budgeted OrderExtendedBudget.wf-<ᵇ⁺ᵇ), walled because native `_<ᵇ_` is ordinally unsound (the <ᵇ-+Ω counterexample). Restating the shared-binder extension over the sound carrier removes the obstruction; the budget was an artefact of native unsoundness, not of the shared-binder rules. Honest scope: does NOT claim native `_<ᵇ⁺_` WF (still walled; the budgeted form remains the native state of art). Build: All.agda + Smoke exit 0 under --safe --without-K, zero postulates, structural recursion (no TERMINATING). https://claude.ai/code/session_017t53M7W7ubmXpwymveLcCE
1 parent deaff4f commit ffa3152

3 files changed

Lines changed: 110 additions & 0 deletions

File tree

proofs/agda/All.agda

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,7 @@ open import Ordinal.Buchholz.RankMonoUnionWF
167167
open import Ordinal.Buchholz.RankMonoUnionWfCNF
168168
open import Ordinal.Buchholz.RecursiveSurfaceOrder
169169
open import Ordinal.Buchholz.RecursiveSurfaceSound
170+
open import Ordinal.Buchholz.OrderExtendedSound
170171
open import Ordinal.Buchholz.RecursiveSurfaceBudget
171172
open import Ordinal.Buchholz.SurfaceOrder
172173
open import Ordinal.Buchholz.VeblenObligations
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
{-# OPTIONS --safe --without-K #-}
2+
-- SPDX-License-Identifier: MPL-2.0
3+
-- SPDX-FileCopyrightText: 2025-2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>
4+
5+
-- Sound-carrier extended order — the K-limited shared-binder cases,
6+
-- unbudgeted (2026-06-14).
7+
--
8+
-- ## What this lands
9+
--
10+
-- `_<ᵇ⁺²_` — the doubled-ladder sound-carrier analogue of
11+
-- `Ordinal.Buchholz.OrderExtended._<ᵇ⁺_`: the sound core `_<ᵇ²_` plus
12+
-- the two K-limited shared-binder constructors (`<ᵇ⁺²-ψα`,
13+
-- `<ᵇ⁺²-+2`), each a ONE-step extension whose inner premise is `_<ᵇ²_`
14+
-- (not the native `_<ᵇ_` that `OrderExtended` uses). Its
15+
-- well-foundedness `wf-<ᵇ⁺²` is UNBUDGETED.
16+
--
17+
-- ## Why this closes roadmap item #2 in its achievable form
18+
--
19+
-- The native `_<ᵇ⁺_` (`OrderExtended`) carries the same two
20+
-- shared-binder rules but over native `_<ᵇ_`; its well-foundedness is
21+
-- OPEN (only the budgeted `OrderExtendedBudget.wf-<ᵇ⁺ᵇ` exists),
22+
-- walled for the same reason as everything native: `_<ᵇ_` is
23+
-- ordinally unsound (the `<ᵇ-+Ω` counterexample), so no rank embeds
24+
-- it. Restating the shared-binder extension over the SOUND carrier
25+
-- `_<ᵇ²_` removes the obstruction: every `_<ᵇ⁺²_` derivation is a
26+
-- `_<ᵇʳᶠ²_` derivation (the one-step shared-binder case is the
27+
-- `<ᵇʳᶠ²-core`-headed instance of the recursive congruence), so
28+
-- `wf-<ᵇ⁺²` follows by `Subrelation` from the unbudgeted
29+
-- `RecursiveSurfaceSound.wf-<ᵇʳᶠ²` — NO ℕ budget.
30+
--
31+
-- ## Honest scope
32+
--
33+
-- `_<ᵇ⁺²_` is to `_<ᵇ⁺_` what `_<ᵇ²_` is to native `_<ᵇ_` — the
34+
-- ordinally-sound restriction. It does NOT claim well-foundedness of
35+
-- the native `_<ᵇ⁺_` (still walled; `OrderExtendedBudget`'s budgeted
36+
-- form remains the native state of the art). The contribution is that
37+
-- the K-limited shared-binder extension is well-founded WITHOUT a
38+
-- budget once its core + inner premises are the sound carrier.
39+
--
40+
-- ## Headlines (pin in `Ordinal/Buchholz/Smoke.agda`)
41+
--
42+
-- * `_<ᵇ⁺²_`
43+
-- * `<ᵇ⁺²⇒<ᵇʳᶠ²`
44+
-- * `wf-<ᵇ⁺²`
45+
46+
module Ordinal.Buchholz.OrderExtendedSound where
47+
48+
open import Induction.WellFounded using (WellFounded; module Subrelation)
49+
50+
open import Ordinal.Brouwer.Phase13 using (_<′_)
51+
open import Ordinal.Buchholz.Syntax using (BT; bpsi; bplus)
52+
open import Ordinal.Buchholz.RankDoubledLadder using (rank2)
53+
open import Ordinal.Buchholz.RankDoubledLadderUmbrella using (_<ᵇ²_)
54+
open import Ordinal.Buchholz.RecursiveSurfaceSound using
55+
( _<ᵇʳᶠ²_
56+
; <ᵇʳᶠ²-core
57+
; <ᵇʳᶠ²-ψα
58+
; <ᵇʳᶠ²-+2
59+
; rank2-mono-<ᵇʳᶠ²
60+
; wf-<ᵇʳᶠ²
61+
)
62+
63+
----------------------------------------------------------------------
64+
-- The sound-carrier extended order `_<ᵇ⁺²_`
65+
----------------------------------------------------------------------
66+
67+
-- Mirrors `OrderExtended._<ᵇ⁺_` with native `_<ᵇ_` replaced by the
68+
-- sound carrier `_<ᵇ²_` in the base AND the shared-binder inner
69+
-- premises. Same-binder shape (single ν / single head x), as in
70+
-- `_<ᵇʳᶠ²_` — no explicit equality witness needed under `--without-K`.
71+
infix 4 _<ᵇ⁺²_
72+
73+
data _<ᵇ⁺²_ : BT BT Set where
74+
<ᵇ⁺²-base : {x y} x <ᵇ² y x <ᵇ⁺² y
75+
<ᵇ⁺²-ψα : {ν α β} α <ᵇ² β bpsi ν α <ᵇ⁺² bpsi ν β
76+
<ᵇ⁺²-+2 : {x y z} y <ᵇ² z bplus x y <ᵇ⁺² bplus x z
77+
78+
----------------------------------------------------------------------
79+
-- Embedding into the recursive surface `_<ᵇʳᶠ²_`
80+
----------------------------------------------------------------------
81+
82+
-- The one-step shared-binder extension is the `<ᵇʳᶠ²-core`-headed
83+
-- instance of the recursive congruence: a `_<ᵇ²_` inner premise is a
84+
-- single-step `_<ᵇʳᶠ²_` derivation via `<ᵇʳᶠ²-core`.
85+
<ᵇ⁺²⇒<ᵇʳᶠ² : {x y} x <ᵇ⁺² y x <ᵇʳᶠ² y
86+
<ᵇ⁺²⇒<ᵇʳᶠ² (<ᵇ⁺²-base p) = <ᵇʳᶠ²-core p
87+
<ᵇ⁺²⇒<ᵇʳᶠ² (<ᵇ⁺²-ψα p) = <ᵇʳᶠ²-ψα (<ᵇʳᶠ²-core p)
88+
<ᵇ⁺²⇒<ᵇʳᶠ² (<ᵇ⁺²-+2 p) = <ᵇʳᶠ²-+2 (<ᵇʳᶠ²-core p)
89+
90+
----------------------------------------------------------------------
91+
-- rank2 monotonicity + unbudgeted well-foundedness
92+
----------------------------------------------------------------------
93+
94+
-- rank2-mono via the embedding into the recursive surface.
95+
rank2-mono-<ᵇ⁺² : {x y} x <ᵇ⁺² y rank2 x <′ rank2 y
96+
rank2-mono-<ᵇ⁺² p = rank2-mono-<ᵇʳᶠ² (<ᵇ⁺²⇒<ᵇʳᶠ² p)
97+
98+
-- Well-foundedness: `_<ᵇ⁺²_` is a sub-relation of the already-WF
99+
-- recursive surface `_<ᵇʳᶠ²_`. NO ℕ budget.
100+
wf-<ᵇ⁺² : WellFounded _<ᵇ⁺²_
101+
wf-<ᵇ⁺² = Subrelation.wellFounded <ᵇ⁺²⇒<ᵇʳᶠ² wf-<ᵇʳᶠ²

proofs/agda/Ordinal/Buchholz/Smoke.agda

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -530,6 +530,14 @@ open import Ordinal.Buchholz.RecursiveSurfaceSound using
530530
; wf-<ᵇʳᶠ²
531531
)
532532

533+
-- Sound-carrier extended order — the K-limited shared-binder cases,
534+
-- unbudgeted (own block per CLAUDE.md Working rules).
535+
open import Ordinal.Buchholz.OrderExtendedSound using
536+
( _<ᵇ⁺²_
537+
; <ᵇ⁺²⇒<ᵇʳᶠ²
538+
; wf-<ᵇ⁺²
539+
)
540+
533541
-- Slice 3 prerequisites (own block per CLAUDE.md Working rules):
534542
-- the left-spine NonBzero predicate, the strict-jump bridge from
535543
-- `μ <Ω ν` to `ω-rank-pow-succ μ ≤′ ω-rank-pow ν`, and the head-Ω

0 commit comments

Comments
 (0)