Let L and R be given.
Apply HC to the current goal.
Assume HC.
Apply HC to the current goal.
Set L' to be the term
λα p ⇒ ordinal α ∧ PSNo α p ∈ L of type
set → (set → prop) → prop.
Set R' to be the term
λα p ⇒ ordinal α ∧ PSNo α p ∈ R of type
set → (set → prop) → prop.
Set tau to be the term
PNo_bd L' R'.
We prove the intermediate
claim LLR:
PNoLt_pwise L' R'.
Let γ be given.
Let p be given.
Assume H1: L' γ p.
Apply H1 to the current goal.
Assume _ H1.
Let δ be given.
Let q be given.
Assume H2: R' δ q.
Apply H2 to the current goal.
Assume _ H2.
We will
prove PNoLt γ p δ q.
An
exact proof term for the current goal is
HLR (PSNo γ p) H1 (PSNo δ q) H2.
We prove the intermediate
claim La:
ordinal α.
Let x be given.
An exact proof term for the current goal is HL x Hx.
We prove the intermediate
claim Lb:
ordinal β.
Let y be given.
An exact proof term for the current goal is HR y Hy.
We prove the intermediate
claim Lab:
ordinal (α ∪ β).
Assume H1.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is Lb.
Assume H1.
rewrite the current goal using
binunion_com (from left to right).
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is La.
We prove the intermediate
claim LLab:
PNo_lenbdd (α ∪ β) L'.
Let γ be given.
Let p be given.
Assume H1.
Apply H1 to the current goal.
We will
prove PSNo γ p ∈ L.
An exact proof term for the current goal is H2.
rewrite the current goal using
SNoLev_PSNo γ H1 p (from left to right).
We prove the intermediate
claim LRab:
PNo_lenbdd (α ∪ β) R'.
Let γ be given.
Let p be given.
Assume H1.
Apply H1 to the current goal.
We will
prove PSNo γ p ∈ R.
An exact proof term for the current goal is H2.
rewrite the current goal using
SNoLev_PSNo γ H1 p (from left to right).
Apply PNo_bd_pred L' R' LLR (α ∪ β) Lab LLab LRab to the current goal.
Assume H1.
Apply H1 to the current goal.
Apply H2 to the current goal.
We prove the intermediate
claim LNoC:
SNo (SNoCut L R).
We use tau to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H1.
An exact proof term for the current goal is H1.
We prove the intermediate
claim LLleveqtau:
SNoLev (SNoCut L R) = tau.
We prove the intermediate
claim LLbdtau:
tau ∈ ordsucc (α ∪ β).
An
exact proof term for the current goal is
PNo_bd_In L' R' LLR (α ∪ β) Lab LLab LRab.
rewrite the current goal using LLleveqtau (from left to right).
An exact proof term for the current goal is LLbdtau.
We prove the intermediate
claim LLecw:
PNoEq_ tau (λγ ⇒ γ ∈ SNoCut L R) w.
An
exact proof term for the current goal is
PNoEq_PSNo tau H1 w.
An exact proof term for the current goal is LNoC.
We prove the intermediate
claim LL:
∀x ∈ L, x < SNoCut L R.
Let x be given.
We will
prove x < PSNo tau w.
We prove the intermediate
claim L1:
SNo x.
An exact proof term for the current goal is HL x Hx.
We prove the intermediate
claim L2:
x = PSNo (SNoLev x) (λγ ⇒ γ ∈ x).
An exact proof term for the current goal is L1.
We prove the intermediate
claim L3:
L' (SNoLev x) (λγ ⇒ γ ∈ x).
Apply andI to the current goal.
An exact proof term for the current goal is LLx.
rewrite the current goal using L2 (from right to left).
An exact proof term for the current goal is Hx.
We will
prove x < PSNo tau w.
rewrite the current goal using L2 (from left to right).
An
exact proof term for the current goal is
H4 (SNoLev x) LLx (λγ ⇒ γ ∈ x) L3.
We prove the intermediate
claim LR:
∀y ∈ R, SNoCut L R < y.
Let y be given.
We will
prove PSNo tau w < y.
We prove the intermediate
claim L1:
SNo y.
An exact proof term for the current goal is HR y Hy.
We prove the intermediate
claim L2:
y = PSNo (SNoLev y) (λγ ⇒ γ ∈ y).
An exact proof term for the current goal is L1.
We prove the intermediate
claim L3:
R' (SNoLev y) (λγ ⇒ γ ∈ y).
Apply andI to the current goal.
An exact proof term for the current goal is LLy.
rewrite the current goal using L2 (from right to left).
An exact proof term for the current goal is Hy.
We will
prove PSNo tau w < y.
rewrite the current goal using L2 (from left to right).
An
exact proof term for the current goal is
H5 (SNoLev y) LLy (λγ ⇒ γ ∈ y) L3.
Apply and5I to the current goal.
An exact proof term for the current goal is LNoC.
An exact proof term for the current goal is LLbd.
An exact proof term for the current goal is LL.
An exact proof term for the current goal is LR.
Let z be given.
An exact proof term for the current goal is Hz.
Apply andI to the current goal.
Let γ be given.
Let q be given.
Assume Hq: L' γ q.
Apply Hq to the current goal.
rewrite the current goal using
SNo_PSNo_eta z Hz (from right to left).
We will
prove PSNo γ q < z.
An
exact proof term for the current goal is
H10 (PSNo γ q) Hq2.
Let γ be given.
Let q be given.
Assume Hq: R' γ q.
Apply Hq to the current goal.
rewrite the current goal using
SNo_PSNo_eta z Hz (from right to left).
We will
prove z < PSNo γ q.
An
exact proof term for the current goal is
H11 (PSNo γ q) Hq2.
We prove the intermediate
claim LLznt:
SNoLev z ∉ tau.
An
exact proof term for the current goal is
H3 (SNoLev z) H12 (λγ ⇒ γ ∈ z) Lzimv.
We prove the intermediate
claim LLzlet:
tau ⊆ SNoLev z.
An exact proof term for the current goal is LLznt H12.
Assume H12.
An exact proof term for the current goal is H12.
rewrite the current goal using LLleveqtau (from left to right).
Apply andI to the current goal.
An exact proof term for the current goal is LLzlet.
Assume H12.
Apply H12 to the current goal.
Apply H12 to the current goal.
Let δ be given.
Assume H13.
Apply H13 to the current goal.
Assume H13.
Apply H13 to the current goal.
Assume H13.
Apply H13 to the current goal.
We prove the intermediate
claim Ld:
ordinal δ.
An
exact proof term for the current goal is
ordinal_Hered tau H1 δ Hd.
Set z0 to be the term
λeps ⇒ eps ∈ z ∧ eps ≠ δ of type
set → prop.
Set z1 to be the term
λeps ⇒ eps ∈ z ∨ eps = δ of type
set → prop.
We prove the intermediate
claim Lnz0d:
¬ z0 δ.
Assume H10.
Apply H10 to the current goal.
Apply H12 to the current goal.
Use reflexivity.
We prove the intermediate claim Lz1d: z1 δ.
We will
prove δ ∈ z ∨ δ = δ.
Apply orIR to the current goal.
Use reflexivity.
Apply H3 δ Hd (λγ ⇒ γ ∈ z) to the current goal.
Apply andI to the current goal.
Let eps be given.
Apply ordsuccE δ eps He to the current goal.
Apply iff_trans (w eps) (eps ∈ z) (z0 eps) to the current goal.
An exact proof term for the current goal is H13 eps He1.
An
exact proof term for the current goal is
PNo_extend0_eq δ (λγ ⇒ γ ∈ z) eps He1.
We will
prove w eps ↔ z0 eps.
rewrite the current goal using He1 (from left to right).
We will
prove w δ ↔ z0 δ.
Apply iffI to the current goal.
Assume H16: w δ.
An exact proof term for the current goal is H14 H16.
Assume H16: z0 δ.
An exact proof term for the current goal is Lnz0d H16.
An exact proof term for the current goal is Hd.
An exact proof term for the current goal is H2.
Let eps be given.
Apply ordsuccE δ eps He to the current goal.
An
exact proof term for the current goal is
PNo_extend1_eq δ (λγ ⇒ γ ∈ z) eps He1.
We will
prove eps ∈ z ↔ z1 eps.
rewrite the current goal using He1 (from left to right).
We will
prove δ ∈ z ↔ z1 δ.
Apply iffI to the current goal.
Assume _.
An exact proof term for the current goal is Lz1d.
Assume _.
An exact proof term for the current goal is H15.
Apply LLzlet to the current goal.
An exact proof term for the current goal is Hd.
An exact proof term for the current goal is Lzimv.
An exact proof term for the current goal is LLecw.
We will
prove PNoEq_ tau w (λγ ⇒ γ ∈ z).
An exact proof term for the current goal is H12.
Apply H12 to the current goal.
Let δ be given.
Assume H13.
Apply H13 to the current goal.
Assume H13.
Apply H13 to the current goal.
Assume H13.
Apply H13 to the current goal.
Assume H15: w δ.
We prove the intermediate
claim Ld:
ordinal δ.
An
exact proof term for the current goal is
ordinal_Hered tau H1 δ Hd.
Set z0 to be the term
λeps ⇒ eps ∈ z ∧ eps ≠ δ of type
set → prop.
Set z1 to be the term
λeps ⇒ eps ∈ z ∨ eps = δ of type
set → prop.
We prove the intermediate
claim Lnz0d:
¬ z0 δ.
Assume H10.
Apply H10 to the current goal.
Apply H12 to the current goal.
Use reflexivity.
We prove the intermediate claim Lz1d: z1 δ.
We will
prove δ ∈ z ∨ δ = δ.
Apply orIR to the current goal.
Use reflexivity.
Apply H3 δ Hd (λγ ⇒ γ ∈ z) to the current goal.
Apply andI to the current goal.
Let eps be given.
Apply ordsuccE δ eps He to the current goal.
An
exact proof term for the current goal is
PNo_extend0_eq δ (λγ ⇒ γ ∈ z) eps He1.
We will
prove eps ∈ z ↔ z0 eps.
rewrite the current goal using He1 (from left to right).
We will
prove δ ∈ z ↔ z0 δ.
Apply iffI to the current goal.
An exact proof term for the current goal is H14 H16.
Assume H16: z0 δ.
An exact proof term for the current goal is Lnz0d H16.
Apply LLzlet to the current goal.
An exact proof term for the current goal is Hd.
An exact proof term for the current goal is Lzimv.
Let eps be given.
Apply ordsuccE δ eps He to the current goal.
Apply iff_trans (w eps) (eps ∈ z) (z1 eps) to the current goal.
An exact proof term for the current goal is H13 eps He1.
An
exact proof term for the current goal is
PNo_extend1_eq δ (λγ ⇒ γ ∈ z) eps He1.
We will
prove w eps ↔ z1 eps.
rewrite the current goal using He1 (from left to right).
We will
prove w δ ↔ z1 δ.
Apply iffI to the current goal.
Assume _.
An exact proof term for the current goal is Lz1d.
Assume _.
An exact proof term for the current goal is H15.
An exact proof term for the current goal is Hd.
An exact proof term for the current goal is H2.
∎