Skip to content

Commit 65b7462

Browse files
Merge branch 'main' into claude/ecstatic-wright-OBEvx
2 parents c97d0c4 + 3ee0f08 commit 65b7462

3 files changed

Lines changed: 112 additions & 0 deletions

File tree

proofs/agda/All.agda

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ open import Ordinal.Brouwer.Arithmetic
119119
open import Ordinal.Brouwer.Phase13
120120
open import Ordinal.Brouwer.OmegaPow
121121
open import Ordinal.Brouwer.OrdinalExp
122+
open import Ordinal.Brouwer.VeblenPhi
122123
open import Ordinal.Brouwer.StrictLeftMonoRefuted
123124
open import Ordinal.Brouwer.AdditivePrincipalGenericRefuted
124125
open import Ordinal.Buchholz.Syntax
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
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+
-- Veblen φ-hierarchy over Brouwer ordinals — RUNG 3 (slice 2) of the
6+
-- target-side climb toward ψ₀(Ω_ω) (BH order-type fidelity, open problem
7+
-- D-2026-06-14). 2026-06-18.
8+
--
9+
-- ## This slice: φ₁ — the enumeration of ε-numbers
10+
--
11+
-- The ε-numbers are the fixed points of ω-exponentiation (`ω^^ ε ≃ ε`).
12+
-- φ₁ enumerates them in increasing order:
13+
--
14+
-- * `next-ε β` — the least ε-number STRICTLY above β: the supremum of
15+
-- the ω^^-tower started at `osuc β`. It is a fixed
16+
-- point by the same shifted-tower argument as ε₀, but
17+
-- its base index `osuc β` now uses the rung-3.1
18+
-- inflationary law `ω^^-infl (osuc β)` (ε₀'s `oz` base
19+
-- only needed `ω^^-pos`).
20+
-- * `φ₁` — `φ₁ 0 = ε₀`, `φ₁ (α+1) = next-ε (φ₁ α)`,
21+
-- `φ₁ (lim f) = sup`.
22+
-- * `φ₁-ε-number`— EVERY value of φ₁ is an ε-number (bi-`≤′`).
23+
--
24+
-- ## Honest scope (rung 3 of a long climb)
25+
--
26+
-- φ₁ is the FIRST transfinite Veblen level (φ₀ = ω^^ itself). The
27+
-- Feferman–Schütte ordinal Γ₀ needs the full binary φ_α hierarchy + its
28+
-- diagonal fixed point; ψ₀(Ω_ω) sits far above even Γ₀ and additionally
29+
-- needs the ordinal-collapsing layer. Order-type fidelity (ψ₀(Ω_ω))
30+
-- therefore REMAINS OPEN (D-2026-06-14); this slice neither reaches Γ₀
31+
-- nor plugs `Fidelity.AtHeight`. bi-`≤′` (not `≡`) throughout, because
32+
-- Brouwer `olim`s of different ℕ-indexings of one supremum are not
33+
-- definitionally equal.
34+
35+
module Ordinal.Brouwer.VeblenPhi where
36+
37+
open import Data.Nat.Base using (ℕ; zero; suc)
38+
open import Data.Product.Base using (_×_; _,_; proj₁; proj₂)
39+
40+
open import Ordinal.Brouwer using (Ord; oz; osuc; olim)
41+
open import Ordinal.Brouwer.Phase13 using (_≤′_; f-in-lim′; ≤′-refl; ≤′-trans)
42+
open import Ordinal.Brouwer.OrdinalExp using (ω^^_; ε₀; ε₀-ε-number; ω^^-infl)
43+
44+
----------------------------------------------------------------------
45+
-- next-ε : the least ε-number strictly above β
46+
----------------------------------------------------------------------
47+
48+
-- The ω^^-tower started at an arbitrary base.
49+
tower-from : Ord Ord
50+
tower-from x zero = x
51+
tower-from x (suc n) = ω^^ (tower-from x n)
52+
53+
-- The supremum of the tower from `osuc β` (so it lies above β).
54+
next-ε : Ord Ord
55+
next-ε β = olim (tower-from (osuc β))
56+
57+
-- `next-ε β` is a fixed point of ω^^ (bi-`≤′`). Mirrors the ε₀ proof:
58+
-- `ω^^ (next-ε β)` is definitionally the supremum of the tower shifted
59+
-- by one, so each direction is a one-step `f-in-lim′` — except the base
60+
-- index of the ≥ direction, which uses `ω^^-infl (osuc β)`.
61+
ω^^-next-ε-≤ : β ω^^ (next-ε β) ≤′ next-ε β
62+
ω^^-next-ε-≤ β n = f-in-lim′ (tower-from (osuc β)) (suc n)
63+
64+
next-ε-≤-ω^^ : β next-ε β ≤′ ω^^ (next-ε β)
65+
next-ε-≤-ω^^ β zero =
66+
≤′-trans {osuc β} {ω^^ (osuc β)} {olim (λ k ω^^ (tower-from (osuc β) k))}
67+
(ω^^-infl (osuc β)) (f-in-lim′ (λ k ω^^ (tower-from (osuc β) k)) 0)
68+
next-ε-≤-ω^^ β (suc m) =
69+
f-in-lim′ (λ k ω^^ (tower-from (osuc β) k)) m
70+
71+
-- `next-ε β` lies strictly above β (witness: tower index 0 = `osuc β`).
72+
β<next-ε : β osuc β ≤′ next-ε β
73+
β<next-ε β = 0 , ≤′-refl {β}
74+
75+
----------------------------------------------------------------------
76+
-- φ₁ : the ε-number enumeration
77+
----------------------------------------------------------------------
78+
79+
φ₁ : Ord Ord
80+
φ₁ oz = ε₀
81+
φ₁ (osuc α) = next-ε (φ₁ α)
82+
φ₁ (olim f) = olim (λ n φ₁ (f n))
83+
84+
-- Headline: every value of φ₁ is an ε-number (fixed point of ω^^), bi-`≤′`.
85+
-- oz reuses `ε₀-ε-number`; osuc is `next-ε`'s fixed-point pair for ANY
86+
-- base (no IH); the limit case lifts the per-branch IH through `olim`
87+
-- via `f-in-lim′` (pointwise `≤′` ⇒ `olim`-bounded).
88+
φ₁-ε-number : α (ω^^ (φ₁ α) ≤′ φ₁ α) × (φ₁ α ≤′ ω^^ (φ₁ α))
89+
φ₁-ε-number oz = ε₀-ε-number
90+
φ₁-ε-number (osuc α) = ω^^-next-ε-≤ (φ₁ α) , next-ε-≤-ω^^ (φ₁ α)
91+
φ₁-ε-number (olim f) =
92+
(λ n ≤′-trans {ω^^ (φ₁ (f n))} {φ₁ (f n)} {olim (λ k φ₁ (f k))}
93+
(proj₁ (φ₁-ε-number (f n))) (f-in-lim′ (λ k φ₁ (f k)) n))
94+
, (λ n ≤′-trans {φ₁ (f n)} {ω^^ (φ₁ (f n))} {olim (λ k ω^^ (φ₁ (f k)))}
95+
(proj₂ (φ₁-ε-number (f n))) (f-in-lim′ (λ k ω^^ (φ₁ (f k))) n))

proofs/agda/Smoke.agda

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1203,6 +1203,22 @@ open import Ordinal.Brouwer.OrdinalExp using
12031203
; ω^^-infl
12041204
)
12051205

1206+
-- Veblen φ-hierarchy slice 2 (2026-06-18, own block per CLAUDE.md
1207+
-- Working rules): φ₁, the enumeration of ε-numbers (fixed points of
1208+
-- ω^^), built on the rung-3.1 inflationary law. `next-ε β` = least
1209+
-- ε-number above β; `φ₁` enumerates them (0↦ε₀, suc↦next-ε, limit↦sup);
1210+
-- `φ₁-ε-number` proves every value is an ε-number (bi-≤′). Rung 3 of the
1211+
-- climb toward Γ₀ / ψ₀(Ω_ω) (order-type fidelity OPEN, D-2026-06-14).
1212+
open import Ordinal.Brouwer.VeblenPhi using
1213+
( tower-from
1214+
; next-ε
1215+
; ω^^-next-ε-≤
1216+
; next-ε-≤-ω^^
1217+
; β<next-ε
1218+
; φ₁
1219+
; φ₁-ε-number
1220+
)
1221+
12061222
-- Recommended rank function for unbudgeted `wf-<ᵇʳᶠ_` per Echidna's
12071223
-- design search; transport theorem deferred until Phase 1.3 lemmas land.
12081224
open import Ordinal.Buchholz.RankBrouwer using

0 commit comments

Comments
 (0)