We prove the intermediate
claim L_0:
∀X, L_ X 0 = {0}.
We prove the intermediate
claim R_0:
∀X, R_ X 0 = {1}.
Let X and n be given.
Assume Hn.
Let X and n be given.
Assume Hn.
Let X and n be given.
Assume Hn HnX.
An
exact proof term for the current goal is
If_i_1 (n ∈ X) (L_ X n ∪ {x + eps_ (ordsucc n)|x ∈ L_ X n}) (L_ X n) HnX (λu _ ⇒ L_ X (ordsucc n) = u) (L_ordsucc X n Hn).
We prove the intermediate
claim L_ordsucc_neg:
∀X, ∀n ∈ ω, n ∉ X → L_ X (ordsucc n) = L_ X n.
Let X and n be given.
Assume Hn HnX.
An
exact proof term for the current goal is
If_i_0 (n ∈ X) (L_ X n ∪ {x + eps_ (ordsucc n)|x ∈ L_ X n}) (L_ X n) HnX (λu _ ⇒ L_ X (ordsucc n) = u) (L_ordsucc X n Hn).
We prove the intermediate
claim R_ordsucc_pos:
∀X, ∀n ∈ ω, n ∈ X → R_ X (ordsucc n) = R_ X n.
Let X and n be given.
Assume Hn HnX.
An
exact proof term for the current goal is
If_i_1 (n ∈ X) (R_ X n) (R_ X n ∪ {x + - eps_ (ordsucc n)|x ∈ R_ X n}) HnX (λu _ ⇒ R_ X (ordsucc n) = u) (R_ordsucc X n Hn).
Let X and n be given.
Assume Hn HnX.
An
exact proof term for the current goal is
If_i_0 (n ∈ X) (R_ X n) (R_ X n ∪ {x + - eps_ (ordsucc n)|x ∈ R_ X n}) HnX (λu _ ⇒ R_ X (ordsucc n) = u) (R_ordsucc X n Hn).
We prove the intermediate
claim L_SNo1:
∀X, ∀n, nat_p n → ∀u ∈ L_ X n, SNo u.
Let X be given.
Apply L_0 X (λ_ v ⇒ ∀u ∈ v, SNo u) to the current goal.
Let u be given.
rewrite the current goal using
SingE 0 u Hu (from left to right).
An
exact proof term for the current goal is
SNo_0.
Let n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
Apply L_ordsucc_pos X n (nat_p_omega n Hn) H1 (λ_ v ⇒ ∀u ∈ v, SNo u) to the current goal.
Let u be given.
An exact proof term for the current goal is IHn u.
Let w be given.
rewrite the current goal using Huw (from left to right).
Apply L_ordsucc_neg X n (nat_p_omega n Hn) H1 (λ_ v ⇒ ∀u ∈ v, SNo u) to the current goal.
An exact proof term for the current goal is IHn.
We prove the intermediate
claim R_SNo1:
∀X, ∀n, nat_p n → ∀u ∈ R_ X n, SNo u.
Let X be given.
Apply R_0 X (λ_ v ⇒ ∀u ∈ v, SNo u) to the current goal.
Let u be given.
rewrite the current goal using
SingE 1 u Hu (from left to right).
An
exact proof term for the current goal is
SNo_1.
Let n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
Apply R_ordsucc_pos X n (nat_p_omega n Hn) H1 (λ_ v ⇒ ∀u ∈ v, SNo u) to the current goal.
An exact proof term for the current goal is IHn.
Apply R_ordsucc_neg X n (nat_p_omega n Hn) H1 (λ_ v ⇒ ∀u ∈ v, SNo u) to the current goal.
Let u be given.
An exact proof term for the current goal is IHn u.
Let w be given.
rewrite the current goal using Huw (from left to right).
We prove the intermediate
claim L_fin:
∀X, ∀n, nat_p n → finite (L_ X n).
Let X be given.
Apply L_0 X (λ_ v ⇒ finite v) to the current goal.
Let n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
An exact proof term for the current goal is IHn.
An exact proof term for the current goal is IHn.
An exact proof term for the current goal is IHn.
We prove the intermediate
claim R_fin:
∀X, ∀n, nat_p n → finite (R_ X n).
Let X be given.
Apply R_0 X (λ_ v ⇒ finite v) to the current goal.
Let n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
An exact proof term for the current goal is IHn.
An exact proof term for the current goal is IHn.
An exact proof term for the current goal is IHn.
We prove the intermediate
claim L_ordsucc_Subq:
∀X, ∀n, nat_p n → L_ X n ⊆ L_ X (ordsucc n).
Let X and n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
Apply L_ordsucc_pos X n (nat_p_omega n Hn) H1 (λ_ v ⇒ L_ X n ⊆ v) to the current goal.
Apply L_ordsucc_neg X n (nat_p_omega n Hn) H1 (λ_ v ⇒ L_ X n ⊆ v) to the current goal.
We will
prove L_ X n ⊆ L_ X n.
We prove the intermediate
claim R_ordsucc_Subq:
∀X, ∀n, nat_p n → R_ X n ⊆ R_ X (ordsucc n).
Let X and n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
Apply R_ordsucc_pos X n (nat_p_omega n Hn) H1 (λ_ v ⇒ R_ X n ⊆ v) to the current goal.
We will
prove R_ X n ⊆ R_ X n.
Apply R_ordsucc_neg X n (nat_p_omega n Hn) H1 (λ_ v ⇒ R_ X n ⊆ v) to the current goal.
We prove the intermediate
claim L_Subq:
∀X, ∀n, nat_p n → ∀m ∈ n, L_ X m ⊆ L_ X n.
Let X be given.
Let m be given.
An
exact proof term for the current goal is
EmptyE m Hm.
Let n be given.
Assume Hn.
Let m be given.
Apply ordsuccE n m Hm to the current goal.
We will
prove L_ X m ⊆ L_ X (ordsucc n).
An exact proof term for the current goal is IHn m H1.
An exact proof term for the current goal is L_ordsucc_Subq X n Hn.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is L_ordsucc_Subq X n Hn.
We prove the intermediate
claim R_Subq:
∀X, ∀n, nat_p n → ∀m ∈ n, R_ X m ⊆ R_ X n.
Let X be given.
Let m be given.
An
exact proof term for the current goal is
EmptyE m Hm.
Let n be given.
Assume Hn.
Let m be given.
Apply ordsuccE n m Hm to the current goal.
We will
prove R_ X m ⊆ R_ X (ordsucc n).
An exact proof term for the current goal is IHn m H1.
An exact proof term for the current goal is R_ordsucc_Subq X n Hn.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is R_ordsucc_Subq X n Hn.
We prove the intermediate
claim L_0_In:
∀X, ∀n, nat_p n → 0 ∈ L_ X n.
Let X be given.
We prove the intermediate
claim L_0_In_0:
0 ∈ L_ X 0.
An
exact proof term for the current goal is
L_0 X (λ_ v ⇒ 0 ∈ v) (SingI 0).
An exact proof term for the current goal is L_0_In_0.
Let n be given.
Assume Hn.
We prove the intermediate
claim R_1_In:
∀X, ∀n, nat_p n → 1 ∈ R_ X n.
Let X be given.
We prove the intermediate
claim R_1_In_0:
1 ∈ R_ X 0.
An
exact proof term for the current goal is
R_0 X (λ_ v ⇒ 1 ∈ v) (SingI 1).
An exact proof term for the current goal is R_1_In_0.
Let n be given.
Assume Hn.
We prove the intermediate
claim L_ne:
∀X, ∀n, nat_p n → L_ X n ≠ 0.
Let X and n be given.
Assume Hn.
Apply EmptyE 0 to the current goal.
rewrite the current goal using H1 (from right to left) at position 2.
An exact proof term for the current goal is L_0_In X n Hn.
We prove the intermediate
claim R_ne:
∀X, ∀n, nat_p n → R_ X n ≠ 0.
Let X and n be given.
Assume Hn.
Apply EmptyE 1 to the current goal.
rewrite the current goal using H1 (from right to left) at position 2.
An exact proof term for the current goal is R_1_In X n Hn.
Let X be given.
Let w and z be given.
Apply Hw to the current goal.
Assume H.
Apply H to the current goal.
Assume _ _.
Apply Hz to the current goal.
Assume H.
Apply H to the current goal.
Assume _ _.
rewrite the current goal using
SingE 0 w Hw1 (from left to right).
rewrite the current goal using
SingE 1 z Hz1 (from left to right).
rewrite the current goal using
eps_0_1 (from left to right).
Use symmetry.
Let n be given.
Assume Hn.
We prove the intermediate
claim LSn:
ordsucc n ∈ ω.
We prove the intermediate
claim Len:
SNo (eps_ n).
Let w and z be given.
Apply xm (n ∈ X) to the current goal.
Apply finite_max_exists (L_ X n) (L_SNo1 X n Hn) (L_fin X n Hn) (L_ne X n Hn) to the current goal.
Let w' be given.
Apply Hw' to the current goal.
Assume H.
Apply H to the current goal.
Apply Hw to the current goal.
Assume H.
Apply H to the current goal.
Apply Hw3 to the current goal.
An
exact proof term for the current goal is
ReplI (L_ X n) (λw ⇒ w + eps_ (ordsucc n)) w H2.
Let w'' be given.
We prove the intermediate
claim Lw'':
SNo w''.
An exact proof term for the current goal is L_SNo1 X n Hn w'' Hw''.
rewrite the current goal using Hww'' (from left to right).
Apply Hw'3 to the current goal.
We will
prove w'' ∈ L_ X n.
An exact proof term for the current goal is Hw''.
An exact proof term for the current goal is Lw''.
Apply Hw3 to the current goal.
An
exact proof term for the current goal is
ReplI (L_ X n) (λw ⇒ w + eps_ (ordsucc n)) w' Hw'1.
We will
prove z = w' + eps_ n.
An exact proof term for the current goal is IHn w' z Hw' Hz.
Use f_equal.
Use symmetry.
Use f_equal.
Use symmetry.
An exact proof term for the current goal is Lww'.
Apply finite_min_exists (R_ X n) (R_SNo1 X n Hn) (R_fin X n Hn) (R_ne X n Hn) to the current goal.
Let z' be given.
Apply Hz' to the current goal.
Assume H.
Apply H to the current goal.
Apply Hz to the current goal.
Assume H.
Apply H to the current goal.
Apply Hz3 to the current goal.
An
exact proof term for the current goal is
ReplI (R_ X n) (λz ⇒ z + - eps_ (ordsucc n)) z H2.
rewrite the current goal using
add_SNo_0R z Hz2 (from right to left) at position 2.
rewrite the current goal using
minus_SNo_0 (from right to left).
Let z'' be given.
We prove the intermediate
claim Lz'':
SNo z''.
An exact proof term for the current goal is R_SNo1 X n Hn z'' Hz''.
Apply Hz3 to the current goal.
An
exact proof term for the current goal is
ReplI (R_ X n) (λz ⇒ z + - eps_ (ordsucc n)) z' Hz'1.
rewrite the current goal using Hzz'' (from left to right).
Apply Hz'3 to the current goal.
We will
prove z'' ∈ R_ X n.
An exact proof term for the current goal is Hz''.
An exact proof term for the current goal is Lz''.
Apply Hw to the current goal.
Assume H.
Apply H to the current goal.
An exact proof term for the current goal is Lzz'.
Use f_equal.
An exact proof term for the current goal is IHn w z' Hw Hz'.
We prove the intermediate
claim L_SNo:
∀X, ∀n, nat_p n → L_ X n ⊆ SNoS_ ω.
Let X be given.
Apply L_0 X (λ_ v ⇒ v ⊆ SNoS_ ω) to the current goal.
Let u be given.
Assume Hu.
rewrite the current goal using
SingE 0 u Hu (from left to right).
Let n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
An exact proof term for the current goal is IHn.
Let u be given.
Assume Hu.
Let w be given.
rewrite the current goal using Huw (from left to right).
An exact proof term for the current goal is IHn w Hw.
An exact proof term for the current goal is IHn.
We prove the intermediate
claim R_SNo:
∀X, ∀n, nat_p n → R_ X n ⊆ SNoS_ ω.
Let X be given.
Apply R_0 X (λ_ v ⇒ v ⊆ SNoS_ ω) to the current goal.
Let u be given.
Assume Hu.
rewrite the current goal using
SingE 1 u Hu (from left to right).
Let n be given.
Assume Hn.
Apply xm (n ∈ X) to the current goal.
An exact proof term for the current goal is IHn.
An exact proof term for the current goal is IHn.
Let u be given.
Assume Hu.
Let w be given.
rewrite the current goal using Huw (from left to right).
An exact proof term for the current goal is IHn w Hw.
Set L to be the term
λX ⇒ ⋃n ∈ ωL_ X n of type
set → set.
Set R to be the term
λX ⇒ ⋃n ∈ ωR_ X n of type
set → set.
We prove the intermediate
claim LSo:
∀X, L X ⊆ SNoS_ ω.
Let X and u be given.
Let n be given.
An
exact proof term for the current goal is
L_SNo X n (omega_nat_p n Hn) u Hu.
We prove the intermediate
claim RSo:
∀X, R X ⊆ SNoS_ ω.
Let X and u be given.
Let n be given.
An
exact proof term for the current goal is
R_SNo X n (omega_nat_p n Hn) u Hu.
We prove the intermediate
claim LSNo:
∀X, ∀w ∈ L X, SNo w.
Let X and w be given.
Assume Hw.
Let n be given.
An
exact proof term for the current goal is
L_SNo1 X n (omega_nat_p n Hn) w Hw'.
We prove the intermediate
claim RSNo:
∀X, ∀z ∈ R X, SNo z.
Let X and z be given.
Assume Hz.
Let n be given.
An
exact proof term for the current goal is
R_SNo1 X n (omega_nat_p n Hn) z Hz'.
We prove the intermediate
claim LLR:
∀X, SNoCutP (L X) (R X).
Let X be given.
Apply and3I to the current goal.
An exact proof term for the current goal is LSNo X.
An exact proof term for the current goal is RSNo X.
Let w be given.
Assume Hw.
Let z be given.
Assume Hz.
We prove the intermediate
claim Lw:
SNo w.
An exact proof term for the current goal is LSNo X w Hw.
We prove the intermediate
claim Lz:
SNo z.
An exact proof term for the current goal is RSNo X z Hz.
We prove the intermediate
claim Lwzn:
∀n, nat_p n → w ∈ L_ X n → z ∈ R_ X n → w < z.
Let n be given.
Assume Hn.
Apply finite_max_exists (L_ X n) (L_SNo1 X n Hn) (L_fin X n Hn) (L_ne X n Hn) to the current goal.
Let w' be given.
Apply Hw' to the current goal.
Assume H.
Apply H to the current goal.
Apply finite_min_exists (R_ X n) (R_SNo1 X n Hn) (R_fin X n Hn) (R_ne X n Hn) to the current goal.
Let z' be given.
Apply Hz' to the current goal.
Assume H.
Apply H to the current goal.
Apply SNoLeLt_tra w w' z Lw Hw'2 Lz (Hw'3 w H1 Lw) to the current goal.
Apply SNoLtLe_tra w' z' z Hw'2 Hz'2 Lz to the current goal.
rewrite the current goal using L_R_dist X n Hn w' z' Hw' Hz' (from left to right).
We will
prove w' < w' + eps_ n.
An exact proof term for the current goal is Hz'3 z H2 Lz.
Let n be given.
Let m be given.
We will
prove w ∈ L_ X n.
An exact proof term for the current goal is Hw'.
We will
prove z ∈ R_ X n.
An
exact proof term for the current goal is
R_Subq X n (omega_nat_p n Hn) m H1 z Hz'.
We will
prove w ∈ L_ X n.
An exact proof term for the current goal is Hw'.
We will
prove z ∈ R_ X n.
rewrite the current goal using H1 (from right to left).
An exact proof term for the current goal is Hz'.
We will
prove w ∈ L_ X m.
An
exact proof term for the current goal is
L_Subq X m (omega_nat_p m Hm) n H1 w Hw'.
We will
prove z ∈ R_ X m.
An exact proof term for the current goal is Hz'.
We prove the intermediate
claim L0_In:
∀X, 0 ∈ L X.
Let X be given.
We will
prove 0 ∈ ⋃n ∈ ωL_ X n.
An
exact proof term for the current goal is
nat_0.
We will
prove 0 ∈ L_ X 0.
An
exact proof term for the current goal is
L_0_In X 0 nat_0.
We prove the intermediate
claim R1_In:
∀X, 1 ∈ R X.
Let X be given.
We will
prove 1 ∈ ⋃n ∈ ωR_ X n.
An
exact proof term for the current goal is
nat_0.
We will
prove 1 ∈ R_ X 0.
An
exact proof term for the current goal is
R_1_In X 0 nat_0.
We prove the intermediate
claim Lne:
∀X, L X ≠ 0.
Let X be given.
Apply EmptyE 0 to the current goal.
rewrite the current goal using H1 (from right to left) at position 2.
An exact proof term for the current goal is L0_In X.
We prove the intermediate
claim Rne:
∀X, R X ≠ 0.
Let X be given.
Apply EmptyE 1 to the current goal.
rewrite the current goal using H1 (from right to left) at position 2.
An exact proof term for the current goal is R1_In X.
Let X be given.
Assume HX1 HX2.
Let w be given.
Assume Hw.
We prove the intermediate
claim Lw:
SNo w.
An exact proof term for the current goal is LSNo X w Hw.
Let n be given.
Let m be given.
Assume H.
Apply H to the current goal.
We prove the intermediate
claim Lwm:
w ∈ L_ X m.
An
exact proof term for the current goal is
L_Subq X m (omega_nat_p m (HX1 m Hm)) n Hnm w Hw'.
An
exact proof term for the current goal is
ReplI (L_ X m) (λw ⇒ w + eps_ (ordsucc m)) w Lwm.
An
exact proof term for the current goal is
L_ordsucc_pos X m (HX1 m Hm) Hm (λ_ v ⇒ w + eps_ (ordsucc m) ∈ v) LweSm1.
We use
(w + eps_ (ordsucc m)) to
witness the existential quantifier.
Apply andI to the current goal.
Let X be given.
Assume HX1 HX2.
Let z be given.
Assume Hz.
We prove the intermediate
claim Lz:
SNo z.
An exact proof term for the current goal is RSNo X z Hz.
Let n be given.
Let m be given.
Assume H.
Apply H to the current goal.
We prove the intermediate
claim Lzm:
z ∈ R_ X m.
An
exact proof term for the current goal is
R_Subq X m (omega_nat_p m Hm1) n Hnm z Hz'.
An
exact proof term for the current goal is
ReplI (R_ X m) (λz ⇒ z + - eps_ (ordsucc m)) z Lzm.
An
exact proof term for the current goal is
R_ordsucc_neg X m Hm1 Hm2 (λ_ v ⇒ z + - eps_ (ordsucc m) ∈ v) LzmeSm1.
We use
(z + - eps_ (ordsucc m)) to
witness the existential quantifier.
Apply andI to the current goal.
rewrite the current goal using
add_SNo_0R z Lz (from right to left) at position 2.
rewrite the current goal using
minus_SNo_0 (from right to left).
Let X be given.
Assume HXo HXinf HXcoinf.
An
exact proof term for the current goal is
real_SNoCut_SNoS_omega (L X) (LSo X) (R X) (RSo X) (LLR X) (Lne X) (Rne X) (L_nomax X HXo HXinf) (R_nomin X HXo HXcoinf).
We prove the intermediate
claim L_R_pos:
∀X, 0 < SNoCut (L X) (R X).
Let X be given.
Assume _.
Assume _.
Apply HLR3 to the current goal.
An exact proof term for the current goal is L0_In X.
We prove the intermediate
claim L_R_lt1:
∀X, SNoCut (L X) (R X) < 1.
Let X be given.
Assume _.
Assume _.
Apply HLR4 to the current goal.
An exact proof term for the current goal is R1_In X.
We prove the intermediate
claim L_R_inj:
∀X Y ⊆ ω, SNoCut (L X) (R X) = SNoCut (L Y) (R Y) → ∀n, nat_p n → L_ X n = L_ Y n ∧ R_ X n = R_ Y n ∧ (∀i ∈ n, i ∈ X ↔ i ∈ Y).
Let X be given.
Assume HX.
Let Y be given.
Assume HY.
We will
prove ∀n, nat_p n → L_ X n = L_ Y n ∧ R_ X n = R_ Y n ∧ (∀i ∈ n, i ∈ X ↔ i ∈ Y).
Assume HLRX2.
Assume HLRX5.
Assume HLRY2.
Assume HLRY5.
Apply and3I to the current goal.
We will
prove L_ X 0 = L_ Y 0.
Use transitivity with and
{0}.
An exact proof term for the current goal is L_0 X.
Use symmetry.
An exact proof term for the current goal is L_0 Y.
We will
prove R_ X 0 = R_ Y 0.
Use transitivity with and
{1}.
An exact proof term for the current goal is R_0 X.
Use symmetry.
An exact proof term for the current goal is R_0 Y.
Let i be given.
An
exact proof term for the current goal is
EmptyE i Hi.
Let n be given.
Assume Hn.
Assume IHn.
Apply IHn to the current goal.
Assume H.
Apply H to the current goal.
We prove the intermediate
claim Ln:
n ∈ ω.
An
exact proof term for the current goal is
nat_p_omega n Hn.
We prove the intermediate
claim Len:
SNo (eps_ n).
An
exact proof term for the current goal is
SNo_eps_ n Ln.
We prove the intermediate
claim LSn:
ordsucc n ∈ ω.
Apply xm (n ∈ X) to the current goal.
Apply xm (n ∈ Y) to the current goal.
Apply and3I to the current goal.
An exact proof term for the current goal is L_ordsucc_pos X n Ln H1.
rewrite the current goal using IHLn (from left to right).
Use reflexivity.
Use symmetry.
An exact proof term for the current goal is L_ordsucc_pos Y n Ln H2.
Use transitivity with R_ X n, and R_ Y n.
An exact proof term for the current goal is R_ordsucc_pos X n Ln H1.
We will
prove R_ X n = R_ Y n.
An exact proof term for the current goal is IHRn.
Use symmetry.
An exact proof term for the current goal is R_ordsucc_pos Y n Ln H2.
Let i be given.
Apply ordsuccE n i Hi to the current goal.
An exact proof term for the current goal is IHnXY i Hi'.
rewrite the current goal using Hi' (from left to right).
We will
prove n ∈ X ↔ n ∈ Y.
Apply iffI to the current goal.
Assume _.
An exact proof term for the current goal is H2.
Assume _.
An exact proof term for the current goal is H1.
Apply finite_max_exists (L_ X n) (L_SNo1 X n Hn) (L_fin X n Hn) (L_ne X n Hn) to the current goal.
Let w be given.
Apply Hw to the current goal.
Assume H.
Apply H to the current goal.
Apply finite_min_exists (R_ X n) (R_SNo1 X n Hn) (R_fin X n Hn) (R_ne X n Hn) to the current goal.
Let z be given.
Apply Hz to the current goal.
Assume H.
Apply H to the current goal.
Apply HLRX3 to the current goal.
An
exact proof term for the current goal is
ReplI (L_ X n) (λx ⇒ x + eps_ (ordsucc n)) w Hw1.
An
exact proof term for the current goal is
L_ordsucc_pos X n Ln H1 (λ_ u ⇒ w + eps_ (ordsucc n) ∈ u) LwLSn.
rewrite the current goal using HXY (from left to right).
Apply HLRY4 to the current goal.
rewrite the current goal using L_R_dist X n Hn w z Hw Hz (from left to right).
Use symmetry.
rewrite the current goal using Lwz (from left to right).
We prove the intermediate
claim Lz1:
z ∈ R_ Y n.
rewrite the current goal using IHRn (from right to left).
An exact proof term for the current goal is Hz1.
An
exact proof term for the current goal is
ReplI (R_ Y n) (λx ⇒ x + - eps_ (ordsucc n)) z Lz1.
An
exact proof term for the current goal is
R_ordsucc_neg Y n Ln H2 (λ_ u ⇒ z + - eps_ (ordsucc n) ∈ u) LzRSn.
Apply xm (n ∈ Y) to the current goal.
Apply finite_max_exists (L_ X n) (L_SNo1 X n Hn) (L_fin X n Hn) (L_ne X n Hn) to the current goal.
Let w be given.
Apply Hw to the current goal.
Assume H.
Apply H to the current goal.
Apply finite_min_exists (R_ X n) (R_SNo1 X n Hn) (R_fin X n Hn) (R_ne X n Hn) to the current goal.
Let z be given.
Apply Hz to the current goal.
Assume H.
Apply H to the current goal.
rewrite the current goal using HXY (from left to right).
Apply HLRY3 to the current goal.
We prove the intermediate
claim Lw1:
w ∈ L_ Y n.
rewrite the current goal using IHLn (from right to left).
An exact proof term for the current goal is Hw1.
An
exact proof term for the current goal is
ReplI (L_ Y n) (λx ⇒ x + eps_ (ordsucc n)) w Lw1.
An
exact proof term for the current goal is
L_ordsucc_pos Y n Ln H2 (λ_ u ⇒ w + eps_ (ordsucc n) ∈ u) LwLSn.
Apply HLRX4 to the current goal.
rewrite the current goal using L_R_dist X n Hn w z Hw Hz (from left to right).
Use symmetry.
rewrite the current goal using Lwz (from left to right).
An
exact proof term for the current goal is
ReplI (R_ X n) (λx ⇒ x + - eps_ (ordsucc n)) z Hz1.
An
exact proof term for the current goal is
R_ordsucc_neg X n Ln H1 (λ_ u ⇒ z + - eps_ (ordsucc n) ∈ u) LzRSn.
Apply and3I to the current goal.
Use transitivity with L_ X n, and L_ Y n.
An exact proof term for the current goal is L_ordsucc_neg X n Ln H1.
We will
prove L_ X n = L_ Y n.
An exact proof term for the current goal is IHLn.
Use symmetry.
An exact proof term for the current goal is L_ordsucc_neg Y n Ln H2.
An exact proof term for the current goal is R_ordsucc_neg X n Ln H1.
rewrite the current goal using IHRn (from left to right).
Use reflexivity.
Use symmetry.
An exact proof term for the current goal is R_ordsucc_neg Y n Ln H2.
Let i be given.
Apply ordsuccE n i Hi to the current goal.
An exact proof term for the current goal is IHnXY i Hi'.
rewrite the current goal using Hi' (from left to right).
We will
prove n ∈ X ↔ n ∈ Y.
Apply iffI to the current goal.
Assume H3.
An exact proof term for the current goal is H1 H3.
Assume H4.
An exact proof term for the current goal is H2 H4.
We prove the intermediate
claim Ls:
∀X ∈ 𝒫 ω, s X ∈ 𝒫 ω.
Let X be given.
Assume HX.
Apply PowerI to the current goal.
Let u be given.
rewrite the current goal using
SingE 0 u Hu (from left to right).
Let u be given.
Assume Hu.
Let n be given.
rewrite the current goal using Hun (from left to right).
An
exact proof term for the current goal is
PowerE ω X HX n Hn.
We prove the intermediate
claim Lsinj:
∀X Y, s X = s Y → X = Y.
Let X and Y be given.
Let u be given.
We prove the intermediate
claim LSu:
ordsucc u ∈ s Y.
rewrite the current goal using HXY (from right to left).
An
exact proof term for the current goal is
ReplI X ordsucc u Hu.
An
exact proof term for the current goal is
SingE 0 (ordsucc u) H1.
Let n be given.
rewrite the current goal using
ordsucc_inj u n HSun (from left to right).
An exact proof term for the current goal is Hn.
Let u be given.
We prove the intermediate
claim LSu:
ordsucc u ∈ s X.
rewrite the current goal using HXY (from left to right).
An
exact proof term for the current goal is
ReplI Y ordsucc u Hu.
An
exact proof term for the current goal is
SingE 0 (ordsucc u) H1.
Let n be given.
rewrite the current goal using
ordsucc_inj u n HSun (from left to right).
An exact proof term for the current goal is Hn.
We prove the intermediate
claim Ls0:
∀X, 0 ∈ s X.
We prove the intermediate
claim Lsfin:
∀X, finite X → finite (s X).
Let X be given.
Assume HX.
An exact proof term for the current goal is HX.
Set h to be the term
λX ⇒ X ∪ ⋃i ∈ X{n '|n ∈ i, n ∉ X} of type
set → set.
We prove the intermediate
claim Lh0:
h 0 = 0.
Let X be given.
Let α be given.
Apply Ha1 to the current goal.
Assume Ha1a Ha1b.
We will
prove SNo_ α (h X).
Apply andI to the current goal.
Let u be given.
An exact proof term for the current goal is Ha2 u H1.
We will
prove u ∈ {n '|n ∈ α}.
Let i be given.
Let n be given.
We will
prove u ∈ {n '|n ∈ α}.
rewrite the current goal using H4 (from left to right).
We prove the intermediate
claim Lna:
n ∈ α.
An exact proof term for the current goal is Ha1a i (Ha2 i Hi) n Hn.
An
exact proof term for the current goal is
ReplI α (λn ⇒ n ') n Lna.
Let n be given.
We prove the intermediate
claim Lno:
ordinal n.
An
exact proof term for the current goal is
ordinal_Hered α Ha1 n Hn.
Apply xm (n ∈ X) to the current goal.
An
exact proof term for the current goal is
Ha2 (n ') H3.
Let i be given.
Let m be given.
Apply H5 to the current goal.
We prove the intermediate
claim Lmo:
ordinal m.
An exact proof term for the current goal is Ha1a i (Ha2 i Hi) m Hm.
rewrite the current goal using
tagged_eqE_eq n m Lno Lmo H6 (from right to left).
An exact proof term for the current goal is H1.
An exact proof term for the current goal is H1.
Apply xm (∃i ∈ X, n ∈ i) to the current goal.
Apply H3 to the current goal.
Let i be given.
Assume H.
Apply H to the current goal.
We prove the intermediate
claim Ln':
n ' ∈ {n '|n ∈ i, n ∉ X}.
An
exact proof term for the current goal is
ReplSepI i (λn ⇒ n ∉ X) (λn ⇒ n ') n Hni H1.
An
exact proof term for the current goal is
famunionI X (λi ⇒ {n '|n ∈ i, n ∉ X}) i (n ') Hi Ln'.
Apply Ha3 n Hn to the current goal.
Let i be given.
We prove the intermediate
claim Lio:
ordinal i.
An
exact proof term for the current goal is
ordinal_Hered α Ha1 i (Ha2 i Hi).
An exact proof term for the current goal is H4.
Apply H1 to the current goal.
rewrite the current goal using H4 (from right to left).
An exact proof term for the current goal is Hi.
Apply H3 to the current goal.
We use i to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hi.
An exact proof term for the current goal is H4.
An exact proof term for the current goal is H1 H3.
Let i be given.
Let m be given.
rewrite the current goal using H6 (from right to left).
An exact proof term for the current goal is Lno.
We prove the intermediate
claim LhS:
∀X ∈ 𝒫 ω, SNo (h X).
Let X be given.
We prove the intermediate
claim LhS':
∃α, ordinal α ∧ X ⊆ α.
We use
ω to
witness the existential quantifier.
Apply andI to the current goal.
Apply PowerE to the current goal.
An exact proof term for the current goal is HX.
Let α be given.
Assume H.
Apply H to the current goal.
Assume H.
Apply H to the current goal.
Apply SNo_SNo α Ha1 (h X) to the current goal.
We will
prove SNo_ α (h X).
An exact proof term for the current goal is LhSa X HX α Ha1 Ha2 Ha3.
Let X be given.
Apply xm (X = 0) to the current goal.
rewrite the current goal using H1 (from left to right).
rewrite the current goal using Lh0 (from left to right).
We prove the intermediate
claim LXS:
∀x ∈ X, SNo x.
Let x be given.
Assume Hx.
An
exact proof term for the current goal is
PowerE ω X HX x Hx.
Let n be given.
Apply Hn to the current goal.
Assume H.
Apply H to the current goal.
We prove the intermediate
claim Ln:
n ∈ ω.
An
exact proof term for the current goal is
PowerE ω X HX n Hn1.
We prove the intermediate
claim Lno:
ordinal n.
An exact proof term for the current goal is Ln.
We prove the intermediate
claim LSn:
ordsucc n ∈ ω.
An exact proof term for the current goal is Ln.
An exact proof term for the current goal is LSn.
We prove the intermediate
claim LSnhX:
SNo_ (ordsucc n) (h X).
Apply LhSa X HX (ordsucc n) LSno to the current goal.
Let i be given.
We prove the intermediate
claim Lio:
ordinal i.
We prove the intermediate
claim LiS:
SNo i.
An
exact proof term for the current goal is
ordinal_SNo i Lio.
An exact proof term for the current goal is H2.
Apply SNoLeLt_tra i n i LiS Hn2 LiS (Hn3 i Hi LiS) to the current goal.
Let m be given.
Assume Hm.
Apply ordsuccE n m Hm to the current goal.
An
exact proof term for the current goal is
In_no2cycle m n H3 (H2 n Hn1).
rewrite the current goal using H3 (from right to left) at position 2.
An exact proof term for the current goal is H2 n Hn1.
We prove the intermediate
claim Lh0pos:
∀X ∈ 𝒫 ω, 0 ∈ X → 0 < h X.
Let X be given.
Assume HX HX0.
We prove the intermediate
claim L0hX:
0 ∈ h X.
An exact proof term for the current goal is HX0.
Apply SNoLtI2 0 (h X) to the current goal.
rewrite the current goal using
SNoLev_0 (from left to right).
Apply SNoLev_ (h X) (LhS X HX) to the current goal.
Assume _.
An exact proof term for the current goal is H2.
Let β be given.
rewrite the current goal using Hb2 (from right to left).
rewrite the current goal using
SNoLev_0 (from left to right).
Let i be given.
An
exact proof term for the current goal is
EmptyE i Hi.
rewrite the current goal using
SNoLev_0 (from left to right).
An exact proof term for the current goal is L0hX.
We prove the intermediate
claim Lhinj1:
∀X Y ∈ 𝒫 ω, h X = h Y → X ⊆ Y.
Let X be given.
Assume HX.
Let Y be given.
Assume HY HXY.
Let x be given.
We prove the intermediate
claim Lxo:
ordinal x.
We prove the intermediate
claim LxhY:
x ∈ h Y.
rewrite the current goal using HXY (from right to left).
An exact proof term for the current goal is Hx.
An exact proof term for the current goal is H1.
Let i be given.
Let m be given.
rewrite the current goal using H4 (from right to left).
An exact proof term for the current goal is Lxo.
We prove the intermediate
claim Lhinj:
∀X Y ∈ 𝒫 ω, h X = h Y → X = Y.
Let X be given.
Assume HX.
Let Y be given.
Assume HY HXY.
An exact proof term for the current goal is Lhinj1 X HX Y HY HXY.
An exact proof term for the current goal is Lhinj1 Y HY X HX (λq ⇒ HXY (λx y ⇒ q y x)).
We use g to witness the existential quantifier.
Apply andI to the current goal.
Let X be given.
Apply xm (finite X) to the current goal.
We prove the intermediate
claim LhsX:
h (s X) + 1 ∈ real.
Apply Lh to the current goal.
Apply Ls to the current goal.
An exact proof term for the current goal is HX.
Apply Lsfin to the current goal.
An exact proof term for the current goal is H1.
An
exact proof term for the current goal is
nat_1.
We prove the intermediate
claim LmhsX:
- h (s (ω ∖ X)) ∈ real.
Apply Lh to the current goal.
We will
prove s (ω ∖ X) ∈ 𝒫 ω.
Apply Ls to the current goal.
Apply PowerI to the current goal.
Apply Lsfin to the current goal.
An exact proof term for the current goal is H2.
We prove the intermediate
claim LLRX:
SNoCut (L X) (R X) ∈ real.
An
exact proof term for the current goal is
L_R_real X (PowerE ω X HX) H1 H2.
Let X be given.
Let Y be given.
We prove the intermediate
claim LX:
X ⊆ ω.
An
exact proof term for the current goal is
PowerE ω X HX.
We prove the intermediate
claim LY:
Y ⊆ ω.
An
exact proof term for the current goal is
PowerE ω Y HY.
We prove the intermediate
claim LoX:
ω ∖ X ∈ 𝒫 ω.
Apply PowerI to the current goal.
We prove the intermediate
claim LoY:
ω ∖ Y ∈ 𝒫 ω.
Apply PowerI to the current goal.
Apply xm (finite X) to the current goal.
Apply xm (finite Y) to the current goal.
We will
prove h (s X) + 1 = h (s Y) + 1 → X = Y.
Apply Lsinj to the current goal.
An
exact proof term for the current goal is
Lhinj (s X) (Ls X HX) (s Y) (Ls Y HY) (add_SNo_cancel_R (h (s X)) 1 (h (s Y)) HhsX3 SNo_1 HhsY3 H3).
We prove the intermediate
claim LhsXmhsY:
h (s X) + 1 = - h (s (ω ∖ Y)).
rewrite the current goal using H4 (from left to right).
We will
prove 0 < h (s X).
Apply Lh0pos to the current goal.
Apply Ls to the current goal.
An exact proof term for the current goal is HX.
Apply SingI to the current goal.
We will
prove h (s X) < 0.
We prove the intermediate
claim LhsXhsX1:
h (s X) < h (s X) + 1.
We prove the intermediate
claim LhsX10:
h (s X) + 1 < 0.
rewrite the current goal using LhsXmhsY (from left to right).
We will
prove - h (s (ω ∖ Y)) < 0.
We prove the intermediate
claim LhsYpos:
- 0 < h (s (ω ∖ Y)).
rewrite the current goal using
minus_SNo_0 (from left to right).
Apply Lh0pos to the current goal.
We will
prove s (ω ∖ Y) ∈ 𝒫 ω.
Apply Ls to the current goal.
An exact proof term for the current goal is LoY.
We will
prove 0 ∈ s (ω ∖ Y).
Apply SingI to the current goal.
We prove the intermediate
claim LhsXSLRY:
h (s X) + 1 = SNoCut (L Y) (R Y).
rewrite the current goal using H4 (from left to right).
We will
prove 1 < h (s X) + 1.
We prove the intermediate
claim LhsXpos:
0 < h (s X).
Apply Lh0pos to the current goal.
Apply Ls to the current goal.
An exact proof term for the current goal is HX.
Apply SingI to the current goal.
rewrite the current goal using
add_SNo_0L 1 SNo_1 (from right to left) at position 1.
We will
prove 0 + 1 < h (s X) + 1.
We will
prove h (s X) + 1 < 1.
rewrite the current goal using LhsXSLRY (from left to right).
An exact proof term for the current goal is L_R_lt1 Y.
Apply xm (finite Y) to the current goal.
We prove the intermediate
claim LmhsXhsY:
- h (s (ω ∖ X)) = h (s Y) + 1.
rewrite the current goal using H4 (from left to right).
We will
prove 0 < h (s Y) + 1.
We prove the intermediate
claim LhsYpos:
0 < h (s Y).
We will
prove 0 < h (s Y).
Apply Lh0pos to the current goal.
Apply Ls to the current goal.
An exact proof term for the current goal is HY.
Apply SingI to the current goal.
We will
prove h (s Y) + 1 < 0.
rewrite the current goal using LmhsXhsY (from right to left).
We will
prove - h (s (ω ∖ X)) < 0.
We prove the intermediate
claim LhsXpos:
- 0 < h (s (ω ∖ X)).
rewrite the current goal using
minus_SNo_0 (from left to right).
Apply Lh0pos to the current goal.
We will
prove s (ω ∖ X) ∈ 𝒫 ω.
Apply Ls to the current goal.
An exact proof term for the current goal is LoX.
We will
prove 0 ∈ s (ω ∖ X).
Apply SingI to the current goal.
We prove the intermediate
claim LoXoY:
ω ∖ X = ω ∖ Y.
Apply Lsinj to the current goal.
We will
prove s (ω ∖ X) = s (ω ∖ Y).
Apply Lhinj (s (ω ∖ X)) (Ls (ω ∖ X) LoX) (s (ω ∖ Y)) (Ls (ω ∖ Y) LoY) to the current goal.
We will
prove h (s (ω ∖ X)) = h (s (ω ∖ Y)).
Use transitivity with
- - h (s (ω ∖ X)), and
- - h (s (ω ∖ Y)).
Use f_equal.
An exact proof term for the current goal is H5.
Let u be given.
Apply dneg to the current goal.
rewrite the current goal using LoXoY (from left to right).
An exact proof term for the current goal is LX u HuX.
An exact proof term for the current goal is HuY.
An exact proof term for the current goal is HuX.
Let u be given.
Apply dneg to the current goal.
rewrite the current goal using LoXoY (from right to left).
An exact proof term for the current goal is LY u HuY.
An exact proof term for the current goal is HuX.
An exact proof term for the current goal is HuY.
We will
prove 0 < - h (s (ω ∖ X)).
rewrite the current goal using H5 (from left to right).
An exact proof term for the current goal is L_R_pos Y.
We will
prove - h (s (ω ∖ X)) < 0.
We prove the intermediate
claim LhsXpos:
- 0 < h (s (ω ∖ X)).
rewrite the current goal using
minus_SNo_0 (from left to right).
Apply Lh0pos to the current goal.
We will
prove s (ω ∖ X) ∈ 𝒫 ω.
Apply Ls to the current goal.
An exact proof term for the current goal is LoX.
We will
prove 0 ∈ s (ω ∖ X).
Apply SingI to the current goal.
Apply xm (finite Y) to the current goal.
We prove the intermediate
claim LLRXhsY:
SNoCut (L X) (R X) = h (s Y) + 1.
rewrite the current goal using H4 (from left to right).
We will
prove 1 < h (s Y) + 1.
We prove the intermediate
claim LhsYpos:
0 < h (s Y).
Apply Lh0pos to the current goal.
Apply Ls to the current goal.
An exact proof term for the current goal is HY.
Apply SingI to the current goal.
rewrite the current goal using
add_SNo_0L 1 SNo_1 (from right to left) at position 1.
We will
prove 0 + 1 < h (s Y) + 1.
We will
prove h (s Y) + 1 < 1.
rewrite the current goal using LLRXhsY (from right to left).
An exact proof term for the current goal is L_R_lt1 X.
We will
prove 0 < - h (s (ω ∖ Y)).
rewrite the current goal using H5 (from right to left).
An exact proof term for the current goal is L_R_pos X.
We will
prove - h (s (ω ∖ Y)) < 0.
We prove the intermediate
claim LhsYpos:
- 0 < h (s (ω ∖ Y)).
rewrite the current goal using
minus_SNo_0 (from left to right).
Apply Lh0pos to the current goal.
We will
prove s (ω ∖ Y) ∈ 𝒫 ω.
Apply Ls to the current goal.
An exact proof term for the current goal is LoY.
We will
prove 0 ∈ s (ω ∖ Y).
Apply SingI to the current goal.
Let n be given.
Assume _.
Apply H6 n (ordsuccI2 n) to the current goal.
Assume _.
An exact proof term for the current goal is H7 HnX.
Let n be given.
Assume _.
Apply H6 n (ordsuccI2 n) to the current goal.
Assume _.
An exact proof term for the current goal is H7 HnY.
∎