Surreal Numbers as Ordinals Paired with Predicates

From Part 1

Object. The name Eps_i is a term of type (setprop)set.
Axiom. (Eps_i_ax) We take the following as an axiom:
∀P : setprop, ∀x : set, P xP (Eps_i P)
Definition. We define True to be ∀p : prop, pp of type prop.
Definition. We define False to be ∀p : prop, p of type prop.
Definition. We define not to be λA : propAFalse of type propprop.
Notation. We use ¬ as a prefix operator with priority 700 corresponding to applying term not.
Definition. We define and to be λA B : prop∀p : prop, (ABp)p of type proppropprop.
Notation. We use as an infix operator with priority 780 and which associates to the left corresponding to applying term and.
Definition. We define or to be λA B : prop∀p : prop, (Ap)(Bp)p of type proppropprop.
Notation. We use as an infix operator with priority 785 and which associates to the left corresponding to applying term or.
Definition. We define iff to be λA B : propand (AB) (BA) of type proppropprop.
Notation. We use as an infix operator with priority 805 and no associativity corresponding to applying term iff.
Beginning of Section Eq
Variable A : SType
Definition. We define eq to be λx y : A∀Q : AAprop, Q x yQ y x of type AAprop.
Definition. We define neq to be λx y : A¬ eq x y of type AAprop.
End of Section Eq
Notation. We use = as an infix operator with priority 502 and no associativity corresponding to applying term eq.
Notation. We use as an infix operator with priority 502 and no associativity corresponding to applying term neq.
Beginning of Section FE
Variable A B : SType
Axiom. (func_ext) We take the following as an axiom:
∀f g : AB, (∀x : A, f x = g x)f = g
End of Section FE
Beginning of Section Ex
Variable A : SType
Definition. We define ex to be λQ : Aprop∀P : prop, (∀x : A, Q xP)P of type (Aprop)prop.
End of Section Ex
Notation. We use x...y [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using ex.
Axiom. (prop_ext) We take the following as an axiom:
∀p q : prop, iff p qp = q
Object. The name In is a term of type setsetprop.
Notation. We use as an infix operator with priority 500 and no associativity corresponding to applying term In. Furthermore, we may write xA, B to mean x : set, xAB.
Definition. We define Subq to be λA B ⇒ ∀x ∈ A, xB of type setsetprop.
Notation. We use as an infix operator with priority 500 and no associativity corresponding to applying term Subq. Furthermore, we may write xA, B to mean x : set, xAB.
Axiom. (set_ext) We take the following as an axiom:
∀X Y : set, XYYXX = Y
Axiom. (In_ind) We take the following as an axiom:
∀P : setprop, (∀X : set, (∀x ∈ X, P x)P X)∀X : set, P X
Notation. We use x...y [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using ex and handling ∈ or ⊆ ascriptions using and.
Object. The name Empty is a term of type set.
Axiom. (EmptyAx) We take the following as an axiom:
¬ ∃x : set, xEmpty
Object. The name is a term of type setset.
Axiom. (UnionEq) We take the following as an axiom:
∀X x, x X∃Y, xYYX
Object. The name 𝒫 is a term of type setset.
Axiom. (PowerEq) We take the following as an axiom:
∀X Y : set, Y𝒫 XYX
Object. The name Repl is a term of type set(setset)set.
Notation. {B| xA} is notation for Repl Ax . B).
Axiom. (ReplEq) We take the following as an axiom:
∀A : set, ∀F : setset, ∀y : set, y{F x|x ∈ A}∃x ∈ A, y = F x
Definition. We define TransSet to be λU : set∀x ∈ U, xU of type setprop.
Definition. We define Union_closed to be λU : set∀X : set, XU XU of type setprop.
Definition. We define Power_closed to be λU : set∀X : set, XU𝒫 XU of type setprop.
Definition. We define Repl_closed to be λU : set∀X : set, XU∀F : setset, (∀x : set, xXF xU){F x|x ∈ X}U of type setprop.
Definition. We define ZF_closed to be λU : setUnion_closed UPower_closed URepl_closed U of type setprop.
Object. The name UnivOf is a term of type setset.
Axiom. (UnivOf_In) We take the following as an axiom:
∀N : set, NUnivOf N
Axiom. (UnivOf_TransSet) We take the following as an axiom:
∀N : set, TransSet (UnivOf N)
Axiom. (UnivOf_ZF_closed) We take the following as an axiom:
∀N : set, ZF_closed (UnivOf N)
Axiom. (UnivOf_Min) We take the following as an axiom:
∀N U : set, NUTransSet UZF_closed UUnivOf NU
Axiom. (FalseE) We take the following as an axiom:
False∀p : prop, p
Axiom. (TrueI) We take the following as an axiom:
True
Axiom. (andI) We take the following as an axiom:
∀A B : prop, ABAB
Axiom. (andEL) We take the following as an axiom:
∀A B : prop, ABA
Axiom. (andER) We take the following as an axiom:
∀A B : prop, ABB
Axiom. (orIL) We take the following as an axiom:
∀A B : prop, AAB
Axiom. (orIR) We take the following as an axiom:
∀A B : prop, BAB
Beginning of Section PropN
Variable P1 P2 P3 : prop
Axiom. (and3I) We take the following as an axiom:
P1P2P3P1P2P3
Axiom. (and3E) We take the following as an axiom:
P1P2P3(∀p : prop, (P1P2P3p)p)
Axiom. (or3I1) We take the following as an axiom:
P1P1P2P3
Axiom. (or3I2) We take the following as an axiom:
P2P1P2P3
Axiom. (or3I3) We take the following as an axiom:
P3P1P2P3
Axiom. (or3E) We take the following as an axiom:
P1P2P3(∀p : prop, (P1p)(P2p)(P3p)p)
Variable P4 : prop
Axiom. (and4I) We take the following as an axiom:
P1P2P3P4P1P2P3P4
Variable P5 : prop
Axiom. (and5I) We take the following as an axiom:
P1P2P3P4P5P1P2P3P4P5
End of Section PropN
Axiom. (not_or_and_demorgan) We take the following as an axiom:
∀A B : prop, ¬ (AB)¬ A¬ B
Axiom. (not_ex_all_demorgan_i) We take the following as an axiom:
∀P : setprop, (¬ ∃x, P x)∀x, ¬ P x
Axiom. (iffI) We take the following as an axiom:
∀A B : prop, (AB)(BA)(AB)
Axiom. (iffEL) We take the following as an axiom:
∀A B : prop, (AB)AB
Axiom. (iffER) We take the following as an axiom:
∀A B : prop, (AB)BA
Axiom. (iff_refl) We take the following as an axiom:
∀A : prop, AA
Axiom. (iff_sym) We take the following as an axiom:
∀A B : prop, (AB)(BA)
Axiom. (iff_trans) We take the following as an axiom:
∀A B C : prop, (AB)(BC)(AC)
Axiom. (eq_i_tra) We take the following as an axiom:
∀x y z, x = yy = zx = z
Axiom. (f_eq_i) We take the following as an axiom:
∀f : setset, ∀x y, x = yf x = f y
Axiom. (neq_i_sym) We take the following as an axiom:
∀x y, xyyx
Definition. We define nIn to be λx X ⇒ ¬ In x X of type setsetprop.
Notation. We use as an infix operator with priority 502 and no associativity corresponding to applying term nIn.
Axiom. (Eps_i_ex) We take the following as an axiom:
∀P : setprop, (∃x, P x)P (Eps_i P)
Axiom. (pred_ext) We take the following as an axiom:
∀P Q : setprop, (∀x, P xQ x)P = Q
Axiom. (prop_ext_2) We take the following as an axiom:
∀p q : prop, (pq)(qp)p = q
Axiom. (Subq_ref) We take the following as an axiom:
∀X : set, XX
Axiom. (Subq_tra) We take the following as an axiom:
∀X Y Z : set, XYYZXZ
Axiom. (Subq_contra) We take the following as an axiom:
∀X Y z : set, XYzYzX
Axiom. (EmptyE) We take the following as an axiom:
∀x : set, xEmpty
Axiom. (Subq_Empty) We take the following as an axiom:
∀X : set, EmptyX
Axiom. (Empty_Subq_eq) We take the following as an axiom:
∀X : set, XEmptyX = Empty
Axiom. (Empty_eq) We take the following as an axiom:
∀X : set, (∀x, xX)X = Empty
Axiom. (UnionI) We take the following as an axiom:
∀X x Y : set, xYYXx X
Axiom. (UnionE) We take the following as an axiom:
∀X x : set, x X∃Y : set, xYYX
Axiom. (UnionE_impred) We take the following as an axiom:
∀X x : set, x X∀p : prop, (∀Y : set, xYYXp)p
Axiom. (PowerI) We take the following as an axiom:
∀X Y : set, YXY𝒫 X
Axiom. (PowerE) We take the following as an axiom:
∀X Y : set, Y𝒫 XYX
Axiom. (Empty_In_Power) We take the following as an axiom:
∀X : set, Empty𝒫 X
Axiom. (Self_In_Power) We take the following as an axiom:
∀X : set, X𝒫 X
Axiom. (xm) We take the following as an axiom:
∀P : prop, P¬ P
Axiom. (dneg) We take the following as an axiom:
∀P : prop, ¬ ¬ PP
Axiom. (not_all_ex_demorgan_i) We take the following as an axiom:
∀P : setprop, ¬ (∀x, P x)∃x, ¬ P x
Axiom. (eq_or_nand) We take the following as an axiom:
or = (λx y : prop¬ (¬ x¬ y))
Object. The name exactly1of2 is a term of type proppropprop.
Axiom. (exactly1of2_I1) We take the following as an axiom:
∀A B : prop, A¬ Bexactly1of2 A B
Axiom. (exactly1of2_I2) We take the following as an axiom:
∀A B : prop, ¬ ABexactly1of2 A B
Axiom. (exactly1of2_E) We take the following as an axiom:
∀A B : prop, exactly1of2 A B∀p : prop, (A¬ Bp)(¬ ABp)p
Axiom. (exactly1of2_or) We take the following as an axiom:
∀A B : prop, exactly1of2 A BAB
Axiom. (ReplI) We take the following as an axiom:
∀A : set, ∀F : setset, ∀x : set, xAF x{F x|x ∈ A}
Axiom. (ReplE) We take the following as an axiom:
∀A : set, ∀F : setset, ∀y : set, y{F x|x ∈ A}∃x ∈ A, y = F x
Axiom. (ReplE_impred) We take the following as an axiom:
∀A : set, ∀F : setset, ∀y : set, y{F x|x ∈ A}∀p : prop, (∀x : set, xAy = F xp)p
Axiom. (ReplE') We take the following as an axiom:
∀X, ∀f : setset, ∀p : setprop, (∀x ∈ X, p (f x))∀y ∈ {f x|x ∈ X}, p y
Axiom. (Repl_Empty) We take the following as an axiom:
∀F : setset, {F x|x ∈ Empty} = Empty
Axiom. (ReplEq_ext_sub) We take the following as an axiom:
∀X, ∀F G : setset, (∀x ∈ X, F x = G x){F x|x ∈ X}{G x|x ∈ X}
Axiom. (ReplEq_ext) We take the following as an axiom:
∀X, ∀F G : setset, (∀x ∈ X, F x = G x){F x|x ∈ X} = {G x|x ∈ X}
Axiom. (Repl_inv_eq) We take the following as an axiom:
∀P : setprop, ∀f g : setset, (∀x, P xg (f x) = x)∀X, (∀x ∈ X, P x){g y|y ∈ {f x|x ∈ X}} = X
Axiom. (Repl_invol_eq) We take the following as an axiom:
∀P : setprop, ∀f : setset, (∀x, P xf (f x) = x)∀X, (∀x ∈ X, P x){f y|y ∈ {f x|x ∈ X}} = X
Object. The name If_i is a term of type propsetsetset.
Notation. if cond then T else E is notation corresponding to If_i type cond T E where type is the inferred type of T.
Axiom. (If_i_correct) We take the following as an axiom:
∀p : prop, ∀x y : set, p(if p then x else y) = x¬ p(if p then x else y) = y
Axiom. (If_i_0) We take the following as an axiom:
∀p : prop, ∀x y : set, ¬ p(if p then x else y) = y
Axiom. (If_i_1) We take the following as an axiom:
∀p : prop, ∀x y : set, p(if p then x else y) = x
Axiom. (If_i_or) We take the following as an axiom:
∀p : prop, ∀x y : set, (if p then x else y) = x(if p then x else y) = y
Object. The name UPair is a term of type setsetset.
Notation. {x,y} is notation for UPair x y.
Axiom. (UPairE) We take the following as an axiom:
∀x y z : set, x{y,z}x = yx = z
Axiom. (UPairI1) We take the following as an axiom:
∀y z : set, y{y,z}
Axiom. (UPairI2) We take the following as an axiom:
∀y z : set, z{y,z}
Object. The name Sing is a term of type setset.
Notation. {x} is notation for Sing x.
Axiom. (SingI) We take the following as an axiom:
∀x : set, x{x}
Axiom. (SingE) We take the following as an axiom:
∀x y : set, y{x}y = x
Object. The name binunion is a term of type setsetset.
Notation. We use as an infix operator with priority 345 and which associates to the left corresponding to applying term binunion.
Axiom. (binunionI1) We take the following as an axiom:
∀X Y z : set, zXzXY
Axiom. (binunionI2) We take the following as an axiom:
∀X Y z : set, zYzXY
Axiom. (binunionE) We take the following as an axiom:
∀X Y z : set, zXYzXzY
Axiom. (binunionE') We take the following as an axiom:
∀X Y z, ∀p : prop, (zXp)(zYp)(zXYp)
Axiom. (binunion_asso) We take the following as an axiom:
∀X Y Z : set, X(YZ) = (XY)Z
Axiom. (binunion_com_Subq) We take the following as an axiom:
∀X Y : set, XYYX
Axiom. (binunion_com) We take the following as an axiom:
∀X Y : set, XY = YX
Axiom. (binunion_idl) We take the following as an axiom:
∀X : set, EmptyX = X
Axiom. (binunion_idr) We take the following as an axiom:
∀X : set, XEmpty = X
Axiom. (binunion_Subq_1) We take the following as an axiom:
∀X Y : set, XXY
Axiom. (binunion_Subq_2) We take the following as an axiom:
∀X Y : set, YXY
Axiom. (binunion_Subq_min) We take the following as an axiom:
∀X Y Z : set, XZYZXYZ
Axiom. (Subq_binunion_eq) We take the following as an axiom:
∀X Y, (XY) = (XY = Y)
Definition. We define SetAdjoin to be λX y ⇒ X{y} of type setsetset.
Notation. We now use the set enumeration notation {...,...,...} in general. If 0 elements are given, then Empty is used to form the corresponding term. If 1 element is given, then Sing is used to form the corresponding term. If 2 elements are given, then UPair is used to form the corresponding term. If more than elements are given, then SetAdjoin is used to reduce to the case with one fewer elements.
Object. The name famunion is a term of type set(setset)set.
Notation. We use x [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using famunion.
Axiom. (famunionI) We take the following as an axiom:
∀X : set, ∀F : (setset), ∀x y : set, xXyF xyx ∈ XF x
Axiom. (famunionE) We take the following as an axiom:
∀X : set, ∀F : (setset), ∀y : set, y(x ∈ XF x)∃x ∈ X, yF x
Axiom. (famunionE_impred) We take the following as an axiom:
∀X : set, ∀F : (setset), ∀y : set, y(x ∈ XF x)∀p : prop, (∀x, xXyF xp)p
Axiom. (famunion_Empty) We take the following as an axiom:
∀F : setset, (x ∈ EmptyF x) = Empty
Beginning of Section SepSec
Variable X : set
Variable P : setprop
Let z : setEps_i (λz ⇒ zXP z)
Let F : setsetλx ⇒ if P x then x else z
Object. The name Sep is a term of type set.
End of Section SepSec
Notation. {xA | B} is notation for Sep Ax . B).
Axiom. (SepI) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, xXP xx{x ∈ X|P x}
Axiom. (SepE) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x{x ∈ X|P x}xXP x
Axiom. (SepE1) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x{x ∈ X|P x}xX
Axiom. (SepE2) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x{x ∈ X|P x}P x
Axiom. (Sep_Subq) We take the following as an axiom:
∀X : set, ∀P : setprop, {x ∈ X|P x}X
Axiom. (Sep_In_Power) We take the following as an axiom:
∀X : set, ∀P : setprop, {x ∈ X|P x}𝒫 X
Object. The name ReplSep is a term of type set(setprop)(setset)set.
Notation. {B| xA, C} is notation for ReplSep Ax . C) (λ x . B).
Axiom. (ReplSepI) We take the following as an axiom:
∀X : set, ∀P : setprop, ∀F : setset, ∀x : set, xXP xF x{F x|x ∈ X, P x}
Axiom. (ReplSepE) We take the following as an axiom:
∀X : set, ∀P : setprop, ∀F : setset, ∀y : set, y{F x|x ∈ X, P x}∃x : set, xXP xy = F x
Axiom. (ReplSepE_impred) We take the following as an axiom:
∀X : set, ∀P : setprop, ∀F : setset, ∀y : set, y{F x|x ∈ X, P x}∀p : prop, (∀x ∈ X, P xy = F xp)p
Object. The name binintersect is a term of type setsetset.
Notation. We use as an infix operator with priority 340 and which associates to the left corresponding to applying term binintersect.
Axiom. (binintersectI) We take the following as an axiom:
∀X Y z, zXzYzXY
Axiom. (binintersectE) We take the following as an axiom:
∀X Y z, zXYzXzY
Axiom. (binintersectE1) We take the following as an axiom:
∀X Y z, zXYzX
Axiom. (binintersectE2) We take the following as an axiom:
∀X Y z, zXYzY
Axiom. (binintersect_Subq_1) We take the following as an axiom:
∀X Y : set, XYX
Axiom. (binintersect_Subq_2) We take the following as an axiom:
∀X Y : set, XYY
Axiom. (binintersect_Subq_eq_1) We take the following as an axiom:
∀X Y, XYXY = X
Axiom. (binintersect_Subq_max) We take the following as an axiom:
∀X Y Z : set, ZXZYZXY
Axiom. (binintersect_com_Subq) We take the following as an axiom:
∀X Y : set, XYYX
Axiom. (binintersect_com) We take the following as an axiom:
∀X Y : set, XY = YX
Object. The name setminus is a term of type setsetset.
Notation. We use as an infix operator with priority 350 and no associativity corresponding to applying term setminus.
Axiom. (setminusI) We take the following as an axiom:
∀X Y z, (zX)(zY)zXY
Axiom. (setminusE) We take the following as an axiom:
∀X Y z, (zXY)zXzY
Axiom. (setminusE1) We take the following as an axiom:
∀X Y z, (zXY)zX
Axiom. (setminus_Subq) We take the following as an axiom:
∀X Y : set, XYX
Axiom. (setminus_Subq_contra) We take the following as an axiom:
∀X Y Z : set, ZYXYXZ
Axiom. (setminus_In_Power) We take the following as an axiom:
∀A U, AU𝒫 A
Axiom. (In_irref) We take the following as an axiom:
∀x, xx
Axiom. (In_no2cycle) We take the following as an axiom:
∀x y, xyyxFalse
Object. The name ordsucc is a term of type setset.
Axiom. (ordsuccI1) We take the following as an axiom:
∀x : set, xordsucc x
Axiom. (ordsuccI2) We take the following as an axiom:
∀x : set, xordsucc x
Axiom. (ordsuccE) We take the following as an axiom:
∀x y : set, yordsucc xyxy = x
Notation. Natural numbers 0,1,2,... are notation for the terms formed using Empty as 0 and forming successors with ordsucc.
Axiom. (neq_0_ordsucc) We take the following as an axiom:
∀a : set, 0ordsucc a
Axiom. (neq_ordsucc_0) We take the following as an axiom:
∀a : set, ordsucc a0
Axiom. (ordsucc_inj) We take the following as an axiom:
∀a b : set, ordsucc a = ordsucc ba = b
Axiom. (ordsucc_inj_contra) We take the following as an axiom:
∀a b : set, abordsucc aordsucc b
Axiom. (In_0_1) We take the following as an axiom:
01
Axiom. (In_0_2) We take the following as an axiom:
02
Axiom. (In_1_2) We take the following as an axiom:
12
Definition. We define nat_p to be λn : set∀p : setprop, p 0(∀x : set, p xp (ordsucc x))p n of type setprop.
Axiom. (nat_0) We take the following as an axiom:
nat_p 0
Axiom. (nat_ordsucc) We take the following as an axiom:
∀n : set, nat_p nnat_p (ordsucc n)
Axiom. (nat_1) We take the following as an axiom:
nat_p 1
Axiom. (nat_2) We take the following as an axiom:
nat_p 2
Axiom. (nat_0_in_ordsucc) We take the following as an axiom:
∀n, nat_p n0ordsucc n
Axiom. (nat_ordsucc_in_ordsucc) We take the following as an axiom:
∀n, nat_p n∀m ∈ n, ordsucc mordsucc n
Axiom. (nat_ind) We take the following as an axiom:
∀p : setprop, p 0(∀n, nat_p np np (ordsucc n))∀n, nat_p np n
Axiom. (nat_inv_impred) We take the following as an axiom:
∀p : setprop, p 0(∀n, nat_p np (ordsucc n))∀n, nat_p np n
Axiom. (nat_inv) We take the following as an axiom:
∀n, nat_p nn = 0∃x, nat_p xn = ordsucc x
Axiom. (nat_complete_ind) We take the following as an axiom:
∀p : setprop, (∀n, nat_p n(∀m ∈ n, p m)p n)∀n, nat_p np n
Axiom. (nat_p_trans) We take the following as an axiom:
∀n, nat_p n∀m ∈ n, nat_p m
Axiom. (nat_trans) We take the following as an axiom:
∀n, nat_p n∀m ∈ n, mn
Axiom. (nat_ordsucc_trans) We take the following as an axiom:
∀n, nat_p n∀m ∈ ordsucc n, mn
Axiom. (Union_ordsucc_eq) We take the following as an axiom:
∀n, nat_p n (ordsucc n) = n
Axiom. (cases_1) We take the following as an axiom:
∀i ∈ 1, ∀p : setprop, p 0p i
Axiom. (cases_2) We take the following as an axiom:
∀i ∈ 2, ∀p : setprop, p 0p 1p i
Axiom. (cases_3) We take the following as an axiom:
∀i ∈ 3, ∀p : setprop, p 0p 1p 2p i
Axiom. (neq_0_1) We take the following as an axiom:
01
Axiom. (neq_1_0) We take the following as an axiom:
10
Axiom. (neq_0_2) We take the following as an axiom:
02
Axiom. (neq_2_0) We take the following as an axiom:
20
Axiom. (neq_1_2) We take the following as an axiom:
12
Axiom. (ZF_closed_E) We take the following as an axiom:
∀U, ZF_closed U∀p : prop, (Union_closed UPower_closed URepl_closed Up)p
Axiom. (ZF_Union_closed) We take the following as an axiom:
∀U, ZF_closed U∀X ∈ U, XU
Axiom. (ZF_Power_closed) We take the following as an axiom:
∀U, ZF_closed U∀X ∈ U, 𝒫 XU
Axiom. (ZF_Repl_closed) We take the following as an axiom:
∀U, ZF_closed U∀X ∈ U, ∀F : setset, (∀x ∈ X, F xU){F x|x ∈ X}U
Axiom. (ZF_UPair_closed) We take the following as an axiom:
∀U, ZF_closed U∀x y ∈ U, {x,y}U
Axiom. (ZF_Sing_closed) We take the following as an axiom:
∀U, ZF_closed U∀x ∈ U, {x}U
Axiom. (ZF_binunion_closed) We take the following as an axiom:
∀U, ZF_closed U∀X Y ∈ U, (XY)U
Axiom. (ZF_ordsucc_closed) We take the following as an axiom:
∀U, ZF_closed U∀x ∈ U, ordsucc xU
Axiom. (nat_p_UnivOf_Empty) We take the following as an axiom:
∀n : set, nat_p nnUnivOf Empty
Object. The name ω is a term of type set.
Axiom. (omega_nat_p) We take the following as an axiom:
∀n ∈ ω, nat_p n
Axiom. (nat_p_omega) We take the following as an axiom:
∀n : set, nat_p nnω
Axiom. (omega_ordsucc) We take the following as an axiom:
∀n ∈ ω, ordsucc nω
Definition. We define ordinal to be λalpha : setTransSet alpha∀beta ∈ alpha, TransSet beta of type setprop.
Axiom. (ordinal_TransSet) We take the following as an axiom:
∀alpha : set, ordinal alphaTransSet alpha
Axiom. (ordinal_Empty) We take the following as an axiom:
ordinal Empty
Axiom. (ordinal_Hered) We take the following as an axiom:
∀alpha : set, ordinal alpha∀beta ∈ alpha, ordinal beta
Axiom. (TransSet_ordsucc) We take the following as an axiom:
∀X : set, TransSet XTransSet (ordsucc X)
Axiom. (ordinal_ordsucc) We take the following as an axiom:
∀alpha : set, ordinal alphaordinal (ordsucc alpha)
Axiom. (nat_p_ordinal) We take the following as an axiom:
∀n : set, nat_p nordinal n
Axiom. (ordinal_1) We take the following as an axiom:
ordinal 1
Axiom. (ordinal_2) We take the following as an axiom:
ordinal 2
Axiom. (omega_TransSet) We take the following as an axiom:
TransSet ω
Axiom. (omega_ordinal) We take the following as an axiom:
ordinal ω
Axiom. (ordsucc_omega_ordinal) We take the following as an axiom:
ordinal (ordsucc ω)
Axiom. (TransSet_ordsucc_In_Subq) We take the following as an axiom:
∀X : set, TransSet X∀x ∈ X, ordsucc xX
Axiom. (ordinal_ordsucc_In_Subq) We take the following as an axiom:
∀alpha, ordinal alpha∀beta ∈ alpha, ordsucc betaalpha
Axiom. (ordinal_trichotomy_or) We take the following as an axiom:
∀alpha beta : set, ordinal alphaordinal betaalphabetaalpha = betabetaalpha
Axiom. (ordinal_trichotomy_or_impred) We take the following as an axiom:
∀alpha beta : set, ordinal alphaordinal beta∀p : prop, (alphabetap)(alpha = betap)(betaalphap)p
Axiom. (ordinal_In_Or_Subq) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalphabetabetaalpha
Axiom. (ordinal_linear) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalphabetabetaalpha
Axiom. (ordinal_ordsucc_In_eq) We take the following as an axiom:
∀alpha beta, ordinal alphabetaalphaordsucc betaalphaalpha = ordsucc beta
Axiom. (ordinal_lim_or_succ) We take the following as an axiom:
∀alpha, ordinal alpha(∀beta ∈ alpha, ordsucc betaalpha)(∃beta ∈ alpha, alpha = ordsucc beta)
Axiom. (ordinal_ordsucc_In) We take the following as an axiom:
∀alpha, ordinal alpha∀beta ∈ alpha, ordsucc betaordsucc alpha
Axiom. (ordinal_famunion) We take the following as an axiom:
∀X, ∀F : setset, (∀x ∈ X, ordinal (F x))ordinal (x ∈ XF x)
Axiom. (ordinal_binintersect) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaordinal (alphabeta)
Axiom. (ordinal_binunion) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaordinal (alphabeta)
Axiom. (ordinal_ind) We take the following as an axiom:
∀p : setprop, (∀alpha, ordinal alpha(∀beta ∈ alpha, p beta)p alpha)∀alpha, ordinal alphap alpha
Axiom. (least_ordinal_ex) We take the following as an axiom:
∀p : setprop, (∃alpha, ordinal alphap alpha)∃alpha, ordinal alphap alpha∀beta ∈ alpha, ¬ p beta
Definition. We define inj to be λX Y f ⇒ (∀u ∈ X, f uY)(∀u v ∈ X, f u = f vu = v) of type setset(setset)prop.
Definition. We define bij to be λX Y f ⇒ (∀u ∈ X, f uY)(∀u v ∈ X, f u = f vu = v)(∀w ∈ Y, ∃u ∈ X, f u = w) of type setset(setset)prop.
Axiom. (bijI) We take the following as an axiom:
∀X Y, ∀f : setset, (∀u ∈ X, f uY)(∀u v ∈ X, f u = f vu = v)(∀w ∈ Y, ∃u ∈ X, f u = w)bij X Y f
Axiom. (bijE) We take the following as an axiom:
∀X Y, ∀f : setset, bij X Y f∀p : prop, ((∀u ∈ X, f uY)(∀u v ∈ X, f u = f vu = v)(∀w ∈ Y, ∃u ∈ X, f u = w)p)p
Object. The name inv is a term of type set(setset)setset.
Axiom. (surj_rinv) We take the following as an axiom:
∀X Y, ∀f : setset, (∀w ∈ Y, ∃u ∈ X, f u = w)∀y ∈ Y, inv X f yXf (inv X f y) = y
Axiom. (inj_linv) We take the following as an axiom:
∀X, ∀f : setset, (∀u v ∈ X, f u = f vu = v)∀x ∈ X, inv X f (f x) = x
Axiom. (bij_inv) We take the following as an axiom:
∀X Y, ∀f : setset, bij X Y fbij Y X (inv X f)
Axiom. (bij_id) We take the following as an axiom:
∀X, bij X X (λx ⇒ x)
Axiom. (bij_comp) We take the following as an axiom:
∀X Y Z : set, ∀f g : setset, bij X Y fbij Y Z gbij X Z (λx ⇒ g (f x))
Definition. We define equip to be λX Y : set∃f : setset, bij X Y f of type setsetprop.
Axiom. (equip_ref) We take the following as an axiom:
∀X, equip X X
Axiom. (equip_sym) We take the following as an axiom:
∀X Y, equip X Yequip Y X
Axiom. (equip_tra) We take the following as an axiom:
∀X Y Z, equip X Yequip Y Zequip X Z
Axiom. (equip_0_Empty) We take the following as an axiom:
∀X, equip X 0X = 0
Beginning of Section SchroederBernstein
Axiom. (KnasterTarski_set) We take the following as an axiom:
∀A, ∀F : setset, (∀U ∈ 𝒫 A, F U𝒫 A)(∀U V ∈ 𝒫 A, UVF UF V)∃Y ∈ 𝒫 A, F Y = Y
Axiom. (image_In_Power) We take the following as an axiom:
∀A B, ∀f : setset, (∀x ∈ A, f xB)∀U ∈ 𝒫 A, {f x|x ∈ U}𝒫 B
Axiom. (image_monotone) We take the following as an axiom:
∀f : setset, ∀U V, UV{f x|x ∈ U}{f x|x ∈ V}
Axiom. (setminus_antimonotone) We take the following as an axiom:
∀A U V, UVAVAU
Axiom. (SchroederBernstein) We take the following as an axiom:
∀A B, ∀f g : setset, inj A B finj B A gequip A B
End of Section SchroederBernstein
Beginning of Section PigeonHole
Axiom. (PigeonHole_nat) We take the following as an axiom:
∀n, nat_p n∀f : setset, (∀i ∈ ordsucc n, f in)¬ (∀i j ∈ ordsucc n, f i = f ji = j)
Axiom. (PigeonHole_nat_bij) We take the following as an axiom:
∀n, nat_p n∀f : setset, (∀i ∈ n, f in)(∀i j ∈ n, f i = f ji = j)bij n n f
End of Section PigeonHole
Definition. We define finite to be λX ⇒ ∃n ∈ ω, equip X n of type setprop.
Axiom. (finite_ind) We take the following as an axiom:
∀p : setprop, p Empty(∀X y, finite XyXp Xp (X{y}))∀X, finite Xp X
Axiom. (finite_Empty) We take the following as an axiom:
finite 0
Axiom. (adjoin_finite) We take the following as an axiom:
∀X y, finite Xfinite (X{y})
Axiom. (binunion_finite) We take the following as an axiom:
∀X, finite X∀Y, finite Yfinite (XY)
Axiom. (famunion_nat_finite) We take the following as an axiom:
∀X : setset, ∀n, nat_p n(∀i ∈ n, finite (X i))finite (i ∈ nX i)
Axiom. (Subq_finite) We take the following as an axiom:
∀X, finite X∀Y, YXfinite Y
Axiom. (TransSet_In_ordsucc_Subq) We take the following as an axiom:
∀x y, TransSet yxordsucc yxy
Axiom. (exandE_i) We take the following as an axiom:
∀P Q : setprop, (∃x, P xQ x)∀r : prop, (∀x, P xQ xr)r
Axiom. (exandE_ii) We take the following as an axiom:
∀P Q : (setset)prop, (∃x : setset, P xQ x)∀p : prop, (∀x : setset, P xQ xp)p
Axiom. (exandE_iii) We take the following as an axiom:
∀P Q : (setsetset)prop, (∃x : setsetset, P xQ x)∀p : prop, (∀x : setsetset, P xQ xp)p
Axiom. (exandE_iiii) We take the following as an axiom:
∀P Q : (setsetsetset)prop, (∃x : setsetsetset, P xQ x)∀p : prop, (∀x : setsetsetset, P xQ xp)p
Beginning of Section Descr_ii
Variable P : (setset)prop
Object. The name Descr_ii is a term of type setset.
Hypothesis Pex : ∃f : setset, P f
Hypothesis Puniq : ∀f g : setset, P fP gf = g
Axiom. (Descr_ii_prop) We take the following as an axiom:
End of Section Descr_ii
Beginning of Section Descr_iii
Variable P : (setsetset)prop
Object. The name Descr_iii is a term of type setsetset.
Hypothesis Pex : ∃f : setsetset, P f
Hypothesis Puniq : ∀f g : setsetset, P fP gf = g
Axiom. (Descr_iii_prop) We take the following as an axiom:
End of Section Descr_iii
Beginning of Section Descr_Vo1
Variable P : Vo 1prop
Object. The name Descr_Vo1 is a term of type Vo 1.
Hypothesis Pex : ∃f : Vo 1, P f
Hypothesis Puniq : ∀f g : Vo 1, P fP gf = g
Axiom. (Descr_Vo1_prop) We take the following as an axiom:
End of Section Descr_Vo1
Beginning of Section If_ii
Variable p : prop
Variable f g : setset
Object. The name If_ii is a term of type setset.
Axiom. (If_ii_1) We take the following as an axiom:
pIf_ii = f
Axiom. (If_ii_0) We take the following as an axiom:
¬ pIf_ii = g
End of Section If_ii
Beginning of Section If_iii
Variable p : prop
Variable f g : setsetset
Object. The name If_iii is a term of type setsetset.
Axiom. (If_iii_1) We take the following as an axiom:
pIf_iii = f
Axiom. (If_iii_0) We take the following as an axiom:
¬ pIf_iii = g
End of Section If_iii
Beginning of Section EpsilonRec_i
Variable F : set(setset)set
Object. The name In_rec_i is a term of type setset.
Hypothesis Fr : ∀X : set, ∀g h : setset, (∀x ∈ X, g x = h x)F X g = F X h
Axiom. (In_rec_i_eq) We take the following as an axiom:
∀X : set, In_rec_i X = F X In_rec_i
End of Section EpsilonRec_i
Beginning of Section EpsilonRec_ii
Variable F : set(set(setset))(setset)
Object. The name In_rec_ii is a term of type set(setset).
Hypothesis Fr : ∀X : set, ∀g h : set(setset), (∀x ∈ X, g x = h x)F X g = F X h
Axiom. (In_rec_ii_eq) We take the following as an axiom:
∀X : set, In_rec_ii X = F X In_rec_ii
End of Section EpsilonRec_ii
Beginning of Section EpsilonRec_iii
Variable F : set(set(setsetset))(setsetset)
Object. The name In_rec_iii is a term of type set(setsetset).
Hypothesis Fr : ∀X : set, ∀g h : set(setsetset), (∀x ∈ X, g x = h x)F X g = F X h
Axiom. (In_rec_iii_eq) We take the following as an axiom:
∀X : set, In_rec_iii X = F X In_rec_iii
End of Section EpsilonRec_iii
Beginning of Section NatRec
Variable z : set
Variable f : setsetset
Let F : set(setset)setλn g ⇒ if nn then f ( n) (g ( n)) else z
Definition. We define nat_primrec to be In_rec_i F of type setset.
Axiom. (nat_primrec_r) We take the following as an axiom:
∀X : set, ∀g h : setset, (∀x ∈ X, g x = h x)F X g = F X h
Axiom. (nat_primrec_0) We take the following as an axiom:
Axiom. (nat_primrec_S) We take the following as an axiom:
∀n : set, nat_p nnat_primrec (ordsucc n) = f n (nat_primrec n)
End of Section NatRec
Beginning of Section NatArith
Definition. We define add_nat to be λn m : setnat_primrec n (λ_ r ⇒ ordsucc r) m of type setsetset.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_nat.
Axiom. (add_nat_0R) We take the following as an axiom:
∀n : set, n + 0 = n
Axiom. (add_nat_SR) We take the following as an axiom:
∀n m : set, nat_p mn + ordsucc m = ordsucc (n + m)
Axiom. (add_nat_p) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mnat_p (n + m)
Axiom. (add_nat_1_1_2) We take the following as an axiom:
1 + 1 = 2
Definition. We define mul_nat to be λn m : setnat_primrec 0 (λ_ r ⇒ n + r) m of type setsetset.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_nat.
Axiom. (mul_nat_0R) We take the following as an axiom:
∀n : set, n * 0 = 0
Axiom. (mul_nat_SR) We take the following as an axiom:
∀n m : set, nat_p mn * ordsucc m = n + n * m
Axiom. (mul_nat_p) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mnat_p (n * m)
End of Section NatArith
Definition. We define Inj1 to be In_rec_i (λX f ⇒ {0}{f x|x ∈ X}) of type setset.
Axiom. (Inj1_eq) We take the following as an axiom:
∀X : set, Inj1 X = {0}{Inj1 x|x ∈ X}
Axiom. (Inj1I1) We take the following as an axiom:
∀X : set, 0Inj1 X
Axiom. (Inj1I2) We take the following as an axiom:
∀X x : set, xXInj1 xInj1 X
Axiom. (Inj1E) We take the following as an axiom:
∀X y : set, yInj1 Xy = 0∃x ∈ X, y = Inj1 x
Axiom. (Inj1NE1) We take the following as an axiom:
∀x : set, Inj1 x0
Axiom. (Inj1NE2) We take the following as an axiom:
∀x : set, Inj1 x{0}
Definition. We define Inj0 to be λX ⇒ {Inj1 x|x ∈ X} of type setset.
Axiom. (Inj0I) We take the following as an axiom:
∀X x : set, xXInj1 xInj0 X
Axiom. (Inj0E) We take the following as an axiom:
∀X y : set, yInj0 X∃x : set, xXy = Inj1 x
Definition. We define Unj to be In_rec_i (λX f ⇒ {f x|x ∈ X{0}}) of type setset.
Axiom. (Unj_eq) We take the following as an axiom:
∀X : set, Unj X = {Unj x|x ∈ X{0}}
Axiom. (Unj_Inj1_eq) We take the following as an axiom:
∀X : set, Unj (Inj1 X) = X
Axiom. (Inj1_inj) We take the following as an axiom:
∀X Y : set, Inj1 X = Inj1 YX = Y
Axiom. (Unj_Inj0_eq) We take the following as an axiom:
∀X : set, Unj (Inj0 X) = X
Axiom. (Inj0_inj) We take the following as an axiom:
∀X Y : set, Inj0 X = Inj0 YX = Y
Axiom. (Inj0_0) We take the following as an axiom:
Inj0 0 = 0
Axiom. (Inj0_Inj1_neq) We take the following as an axiom:
∀X Y : set, Inj0 XInj1 Y
Definition. We define setsum to be λX Y ⇒ {Inj0 x|x ∈ X}{Inj1 y|y ∈ Y} of type setsetset.
Notation. We use + as an infix operator with priority 450 and which associates to the left corresponding to applying term setsum.
Axiom. (Inj0_setsum) We take the following as an axiom:
∀X Y x : set, xXInj0 xX + Y
Axiom. (Inj1_setsum) We take the following as an axiom:
∀X Y y : set, yYInj1 yX + Y
Axiom. (setsum_Inj_inv) We take the following as an axiom:
∀X Y z : set, zX + Y(∃x ∈ X, z = Inj0 x)(∃y ∈ Y, z = Inj1 y)
Axiom. (Inj0_setsum_0L) We take the following as an axiom:
∀X : set, 0 + X = Inj0 X
Axiom. (Subq_1_Sing0) We take the following as an axiom:
1{0}
Axiom. (Inj1_setsum_1L) We take the following as an axiom:
∀X : set, 1 + X = Inj1 X
Axiom. (nat_setsum1_ordsucc) We take the following as an axiom:
∀n : set, nat_p n1 + n = ordsucc n
Axiom. (setsum_0_0) We take the following as an axiom:
0 + 0 = 0
Axiom. (setsum_1_0_1) We take the following as an axiom:
1 + 0 = 1
Axiom. (setsum_1_1_2) We take the following as an axiom:
1 + 1 = 2
Beginning of Section pair_setsum
Let pair ≝ setsum
Definition. We define proj0 to be λZ ⇒ {Unj z|z ∈ Z, ∃x : set, Inj0 x = z} of type setset.
Definition. We define proj1 to be λZ ⇒ {Unj z|z ∈ Z, ∃y : set, Inj1 y = z} of type setset.
Axiom. (Inj0_pair_0_eq) We take the following as an axiom:
Inj0 = pair 0
Axiom. (Inj1_pair_1_eq) We take the following as an axiom:
Inj1 = pair 1
Axiom. (pairI0) We take the following as an axiom:
∀X Y x, xXpair 0 xpair X Y
Axiom. (pairI1) We take the following as an axiom:
∀X Y y, yYpair 1 ypair X Y
Axiom. (pairE) We take the following as an axiom:
∀X Y z, zpair X Y(∃x ∈ X, z = pair 0 x)(∃y ∈ Y, z = pair 1 y)
Axiom. (pairE0) We take the following as an axiom:
∀X Y x, pair 0 xpair X YxX
Axiom. (pairE1) We take the following as an axiom:
∀X Y y, pair 1 ypair X YyY
Axiom. (proj0I) We take the following as an axiom:
∀w u : set, pair 0 uwuproj0 w
Axiom. (proj0E) We take the following as an axiom:
∀w u : set, uproj0 wpair 0 uw
Axiom. (proj1I) We take the following as an axiom:
∀w u : set, pair 1 uwuproj1 w
Axiom. (proj1E) We take the following as an axiom:
∀w u : set, uproj1 wpair 1 uw
Axiom. (proj0_pair_eq) We take the following as an axiom:
∀X Y : set, proj0 (pair X Y) = X
Axiom. (proj1_pair_eq) We take the following as an axiom:
∀X Y : set, proj1 (pair X Y) = Y
Definition. We define Sigma to be λX Y ⇒ x ∈ X{pair x y|y ∈ Y x} of type set(setset)set.
Notation. We use x...y [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using Sigma.
Axiom. (pair_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀x ∈ X, ∀y ∈ Y x, pair x y∑x ∈ X, Y x
Axiom. (Sigma_eta_proj0_proj1) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z ∈ (∑x ∈ X, Y x), pair (proj0 z) (proj1 z) = zproj0 zXproj1 zY (proj0 z)
Axiom. (proj_Sigma_eta) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z ∈ (∑x ∈ X, Y x), pair (proj0 z) (proj1 z) = z
Axiom. (proj0_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z(∑x ∈ X, Y x)proj0 zX
Axiom. (proj1_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z(∑x ∈ X, Y x)proj1 zY (proj0 z)
Axiom. (pair_Sigma_E1) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀x y : set, pair x y(∑x ∈ X, Y x)yY x
Axiom. (Sigma_E) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z(∑x ∈ X, Y x)∃x ∈ X, ∃y ∈ Y x, z = pair x y
Definition. We define setprod to be λX Y : set∑x ∈ X, Y of type setsetset.
Notation. We use as an infix operator with priority 440 and which associates to the left corresponding to applying term setprod.
Let lam : set(setset)setSigma
Definition. We define ap to be λf x ⇒ {proj1 z|z ∈ f, ∃y : set, z = pair x y} of type setsetset.
Notation. When x is a set, a term x y is notation for ap x y.
Notation. λ xAB is notation for the set Sigma Ax : set ⇒ B).
Axiom. (lamI) We take the following as an axiom:
∀X : set, ∀F : setset, ∀x ∈ X, ∀y ∈ F x, pair x yλx ∈ XF x
Axiom. (lamE) We take the following as an axiom:
∀X : set, ∀F : setset, ∀z : set, z(λx ∈ XF x)∃x ∈ X, ∃y ∈ F x, z = pair x y
Axiom. (apI) We take the following as an axiom:
∀f x y, pair x yfyf x
Axiom. (apE) We take the following as an axiom:
∀f x y, yf xpair x yf
Axiom. (beta) We take the following as an axiom:
∀X : set, ∀F : setset, ∀x : set, xX(λx ∈ XF x) x = F x
Axiom. (proj0_ap_0) We take the following as an axiom:
∀u, proj0 u = u 0
Axiom. (proj1_ap_1) We take the following as an axiom:
∀u, proj1 u = u 1
Axiom. (pair_ap_0) We take the following as an axiom:
∀x y : set, (pair x y) 0 = x
Axiom. (pair_ap_1) We take the following as an axiom:
∀x y : set, (pair x y) 1 = y
Axiom. (ap0_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z(∑x ∈ X, Y x)(z 0)X
Axiom. (ap1_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z(∑x ∈ X, Y x)(z 1)(Y (z 0))
Definition. We define pair_p to be λu : setpair (u 0) (u 1) = u of type setprop.
Axiom. (pair_p_I) We take the following as an axiom:
∀x y, pair_p (pair x y)
Axiom. (Subq_2_UPair01) We take the following as an axiom:
2{0,1}
Axiom. (tuple_pair) We take the following as an axiom:
∀x y : set, pair x y = (x,y)
Definition. We define Pi to be λX Y ⇒ {f ∈ 𝒫 (∑x ∈ X, (Y x))|∀x ∈ X, f xY x} of type set(setset)set.
Notation. We use x...y [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using Pi.
Axiom. (PiI) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀f : set, (∀u ∈ f, pair_p uu 0X)(∀x ∈ X, f xY x)f∏x ∈ X, Y x
Axiom. (lam_Pi) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀F : setset, (∀x ∈ X, F xY x)(λx ∈ XF x)(∏x ∈ X, Y x)
Axiom. (ap_Pi) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀f : set, ∀x : set, f(∏x ∈ X, Y x)xXf xY x
Definition. We define setexp to be λX Y : set∏y ∈ Y, X of type setsetset.
Notation. We use :^: as an infix operator with priority 430 and which associates to the left corresponding to applying term setexp.
Axiom. (pair_tuple_fun) We take the following as an axiom:
pair = (λx y ⇒ (x,y))
Axiom. (lamI2) We take the following as an axiom:
∀X, ∀F : setset, ∀x ∈ X, ∀y ∈ F x, (x,y)λx ∈ XF x
Beginning of Section Tuples
Variable x0 x1 : set
Axiom. (tuple_2_0_eq) We take the following as an axiom:
(x0,x1) 0 = x0
Axiom. (tuple_2_1_eq) We take the following as an axiom:
(x0,x1) 1 = x1
End of Section Tuples
Axiom. (ReplEq_setprod_ext) We take the following as an axiom:
∀X Y, ∀F G : setsetset, (∀x ∈ X, ∀y ∈ Y, F x y = G x y){F (w 0) (w 1)|w ∈ XY} = {G (w 0) (w 1)|w ∈ XY}
Axiom. (tuple_2_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀x ∈ X, ∀y ∈ Y x, (x,y)∑x ∈ X, Y x
Axiom. (tuple_2_setprod) We take the following as an axiom:
∀X : set, ∀Y : set, ∀x ∈ X, ∀y ∈ Y, (x,y)XY
End of Section pair_setsum
Notation. We use x...y [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using Sigma.
Notation. We use as an infix operator with priority 440 and which associates to the left corresponding to applying term setprod.
Notation. We use x...y [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using Pi.
Notation. We use :^: as an infix operator with priority 430 and which associates to the left corresponding to applying term setexp.

New In Part 2

Definition. We define DescrR_i_io_1 to be λR ⇒ Eps_i (λx ⇒ (∃y : setprop, R x y)(∀y z : setprop, R x yR x zy = z)) of type (set(setprop)prop)set.
Definition. We define DescrR_i_io_2 to be λR ⇒ Descr_Vo1 (λy ⇒ R (DescrR_i_io_1 R) y) of type (set(setprop)prop)setprop.
Theorem. (DescrR_i_io_12) The following is provable:
∀R : set(setprop)prop, (∃x, (∃y : setprop, R x y)(∀y z : setprop, R x yR x zy = z))R (DescrR_i_io_1 R) (DescrR_i_io_2 R)
Proof:
Let R be given.
Assume H1: ∃x, (∃y : setprop, R x y)(∀y z : setprop, R x yR x zy = z).
We prove the intermediate claim L1: (∃y : setprop, R (DescrR_i_io_1 R) y)(∀y z : setprop, R (DescrR_i_io_1 R) yR (DescrR_i_io_1 R) zy = z).
An exact proof term for the current goal is (Eps_i_ex (λx ⇒ (∃y : setprop, R x y)(∀y z : setprop, R x yR x zy = z)) H1).
Apply L1 to the current goal.
Assume H2 H3.
An exact proof term for the current goal is Descr_Vo1_prop (λy ⇒ R (DescrR_i_io_1 R) y) H2 H3.
Definition. We define PNoEq_ to be λalpha p q ⇒ ∀beta ∈ alpha, p betaq beta of type set(setprop)(setprop)prop.
Theorem. (PNoEq_ref_) The following is provable:
∀alpha, ∀p : setprop, PNoEq_ alpha p p
Proof:
Let alpha, p and beta be given.
Assume H2.
Apply iff_refl to the current goal.
Theorem. (PNoEq_sym_) The following is provable:
∀alpha, ∀p q : setprop, PNoEq_ alpha p qPNoEq_ alpha q p
Proof:
Let alpha, p and q be given.
Assume H1.
Let beta be given.
Assume H2.
Apply iff_sym to the current goal.
An exact proof term for the current goal is H1 beta H2.
Theorem. (PNoEq_tra_) The following is provable:
∀alpha, ∀p q r : setprop, PNoEq_ alpha p qPNoEq_ alpha q rPNoEq_ alpha p r
Proof:
Let alpha, p, q and r be given.
Assume H1 H2.
Let beta be given.
Assume H3.
Apply iff_trans (p beta) (q beta) to the current goal.
An exact proof term for the current goal is H1 beta H3.
An exact proof term for the current goal is H2 beta H3.
Theorem. (PNoEq_antimon_) The following is provable:
∀p q : setprop, ∀alpha, ordinal alpha∀beta ∈ alpha, PNoEq_ alpha p qPNoEq_ beta p q
Proof:
Let p, q and alpha be given.
Assume Ha.
Let beta be given.
Assume Hb H1.
Let gamma be given.
Assume H2: gammabeta.
We will prove p gammaq gamma.
Apply H1 to the current goal.
We will prove gammaalpha.
Apply Ha to the current goal.
Assume Ha1 _.
An exact proof term for the current goal is Ha1 beta Hb gamma H2.
Definition. We define PNoLt_ to be λalpha p q ⇒ ∃beta ∈ alpha, PNoEq_ beta p q¬ p betaq beta of type set(setprop)(setprop)prop.
Theorem. (PNoLt_E_) The following is provable:
∀alpha, ∀p q : setprop, PNoLt_ alpha p q∀R : prop, (∀beta, betaalphaPNoEq_ beta p q¬ p betaq betaR)R
Proof:
Let alpha, p and q be given.
Assume H1.
Let R be given.
Assume H2.
Apply H1 to the current goal.
Let beta be given.
Assume H3.
Apply H3 to the current goal.
Assume H4: betaalpha.
Assume H5.
Apply H5 to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H6 H7 H8.
An exact proof term for the current goal is H2 beta H4 H6 H7 H8.
Theorem. (PNoLt_irref_) The following is provable:
∀alpha, ∀p : setprop, ¬ PNoLt_ alpha p p
Proof:
Let alpha and p be given.
Assume H1.
Apply H1 to the current goal.
Let beta be given.
Assume H2.
Apply H2 to the current goal.
Assume _ H3.
Apply H3 to the current goal.
Assume H3.
Apply H3 to the current goal.
Assume _ H4 H5.
An exact proof term for the current goal is H4 H5.
Theorem. (PNoLt_mon_) The following is provable:
∀p q : setprop, ∀alpha, ordinal alpha∀beta ∈ alpha, PNoLt_ beta p qPNoLt_ alpha p q
Proof:
Let p, q and alpha be given.
Assume Ha.
Let beta be given.
Assume Hb H1.
Apply H1 to the current goal.
Let gamma be given.
Assume H2.
Apply H2 to the current goal.
Assume H2: gammabeta.
Assume H3.
We will prove ∃beta ∈ alpha, PNoEq_ beta p q¬ p betaq beta.
We use gamma to witness the existential quantifier.
Apply andI to the current goal.
We will prove gammaalpha.
Apply Ha to the current goal.
Assume Ha1 _.
An exact proof term for the current goal is Ha1 beta Hb gamma H2.
An exact proof term for the current goal is H3.
Theorem. (PNoLt_trichotomy_or_) The following is provable:
∀p q : setprop, ∀alpha, ordinal alphaPNoLt_ alpha p qPNoEq_ alpha p qPNoLt_ alpha q p
Proof:
Let p and q be given.
Apply ordinal_ind to the current goal.
Let alpha be given.
Assume Ha.
Assume IH: ∀beta ∈ alpha, PNoLt_ beta p qPNoEq_ beta p qPNoLt_ beta q p.
Apply xm (PNoEq_ alpha p q) to the current goal.
Assume H1: PNoEq_ alpha p q.
Apply orIL to the current goal.
Apply orIR to the current goal.
An exact proof term for the current goal is H1.
Assume H1: ¬ PNoEq_ alpha p q.
We prove the intermediate claim L1: ∃beta, ¬ (betaalpha(p betaq beta)).
An exact proof term for the current goal is not_all_ex_demorgan_i (λbeta ⇒ betaalpha(p betaq beta)) H1.
Apply L1 to the current goal.
Let beta be given.
Assume H2: ¬ (betaalpha(p betaq beta)).
We prove the intermediate claim L2: betaalpha¬ (p betaq beta).
Apply xm (betaalpha) to the current goal.
Assume H3: betaalpha.
Apply xm (p betaq beta) to the current goal.
Assume H4: p betaq beta.
We will prove False.
Apply H2 to the current goal.
Assume _.
An exact proof term for the current goal is H4.
Assume H4: ¬ (p betaq beta).
Apply andI to the current goal.
An exact proof term for the current goal is H3.
An exact proof term for the current goal is H4.
Assume H3: betaalpha.
We will prove False.
Apply H2 to the current goal.
Assume H4.
We will prove False.
An exact proof term for the current goal is H3 H4.
Apply L2 to the current goal.
Assume H3: betaalpha.
Assume H4: ¬ (p betaq beta).
Apply IH beta H3 to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: PNoLt_ beta p q.
Apply orIL to the current goal.
Apply orIL to the current goal.
An exact proof term for the current goal is PNoLt_mon_ p q alpha Ha beta H3 H5.
Assume H5: PNoEq_ beta p q.
Apply xm (p beta) to the current goal.
Assume H6: p beta.
Apply xm (q beta) to the current goal.
Assume H7: q beta.
We will prove False.
Apply H4 to the current goal.
Apply iffI to the current goal.
Assume _.
An exact proof term for the current goal is H7.
Assume _.
An exact proof term for the current goal is H6.
Assume H7: ¬ q beta.
Apply orIR to the current goal.
We will prove ∃beta ∈ alpha, PNoEq_ beta q p¬ q betap beta.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H3.
Apply and3I to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is H5.
An exact proof term for the current goal is H7.
An exact proof term for the current goal is H6.
Assume H6: ¬ p beta.
Apply xm (q beta) to the current goal.
Assume H7: q beta.
Apply orIL to the current goal.
Apply orIL to the current goal.
We will prove ∃beta ∈ alpha, PNoEq_ beta p q¬ p betaq beta.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H3.
Apply and3I to the current goal.
An exact proof term for the current goal is H5.
An exact proof term for the current goal is H6.
An exact proof term for the current goal is H7.
Assume H7: ¬ q beta.
We will prove False.
Apply H4 to the current goal.
Apply iffI to the current goal.
Assume H8.
We will prove False.
An exact proof term for the current goal is H6 H8.
Assume H8.
We will prove False.
An exact proof term for the current goal is H7 H8.
Assume H5: PNoLt_ beta q p.
Apply orIR to the current goal.
An exact proof term for the current goal is PNoLt_mon_ q p alpha Ha beta H3 H5.
Theorem. (PNoLt_tra_) The following is provable:
∀alpha, ordinal alpha∀p q r : setprop, PNoLt_ alpha p qPNoLt_ alpha q rPNoLt_ alpha p r
Proof:
Let alpha be given.
Assume Ha.
Let p, q and r be given.
Assume Hpq Hqr.
We will prove ∃beta ∈ alpha, PNoEq_ beta p r¬ p betar beta.
Apply PNoLt_E_ alpha p q Hpq to the current goal.
Let beta be given.
Assume Hbeta1: betaalpha.
Assume Hbeta2: PNoEq_ beta p q.
Assume Hbeta3: ¬ p beta.
Assume Hbeta4: q beta.
Apply PNoLt_E_ alpha q r Hqr to the current goal.
Let gamma be given.
Assume Hgamma1: gammaalpha.
Assume Hgamma2: PNoEq_ gamma q r.
Assume Hgamma3: ¬ q gamma.
Assume Hgamma4: r gamma.
We prove the intermediate claim Lbeta: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hbeta1.
We prove the intermediate claim Lgamma: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered alpha Ha gamma Hgamma1.
Apply ordinal_trichotomy_or beta gamma Lbeta Lgamma to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: betagamma.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hbeta1.
Apply and3I to the current goal.
We will prove PNoEq_ beta p r.
Apply PNoEq_tra_ beta p q r Hbeta2 to the current goal.
We will prove PNoEq_ beta q r.
An exact proof term for the current goal is PNoEq_antimon_ q r gamma Lgamma beta H1 Hgamma2.
We will prove ¬ p beta.
An exact proof term for the current goal is Hbeta3.
We will prove r beta.
Apply Hgamma2 beta H1 to the current goal.
Assume H2 _.
An exact proof term for the current goal is H2 Hbeta4.
Assume H1: beta = gamma.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hbeta1.
Apply and3I to the current goal.
We will prove PNoEq_ beta p r.
Apply PNoEq_tra_ beta p q r Hbeta2 to the current goal.
We will prove PNoEq_ beta q r.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is Hgamma2.
We will prove ¬ p beta.
An exact proof term for the current goal is Hbeta3.
We will prove r beta.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is Hgamma4.
Assume H1: gammabeta.
We use gamma to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hgamma1.
Apply and3I to the current goal.
We will prove PNoEq_ gamma p r.
Apply PNoEq_tra_ gamma p q r to the current goal.
We will prove PNoEq_ gamma p q.
An exact proof term for the current goal is PNoEq_antimon_ p q beta Lbeta gamma H1 Hbeta2.
An exact proof term for the current goal is Hgamma2.
We will prove ¬ p gamma.
Assume H2: p gamma.
Apply Hbeta2 gamma H1 to the current goal.
Assume H3 _.
Apply Hgamma3 to the current goal.
We will prove q gamma.
An exact proof term for the current goal is H3 H2.
We will prove r gamma.
An exact proof term for the current goal is Hgamma4.
Definition. We define PNoLt to be λalpha p beta q ⇒ PNoLt_ (alphabeta) p qalphabetaPNoEq_ alpha p qq alphabetaalphaPNoEq_ beta p q¬ p beta of type set(setprop)set(setprop)prop.
Theorem. (PNoLtI1) The following is provable:
∀alpha beta, ∀p q : setprop, PNoLt_ (alphabeta) p qPNoLt alpha p beta q
Proof:
Let alpha, beta, p and q be given.
Assume H1.
We will prove PNoLt_ (alphabeta) p qalphabetaPNoEq_ alpha p qq alphabetaalphaPNoEq_ beta p q¬ p beta.
Apply or3I1 to the current goal.
An exact proof term for the current goal is H1.
Theorem. (PNoLtI2) The following is provable:
∀alpha beta, ∀p q : setprop, alphabetaPNoEq_ alpha p qq alphaPNoLt alpha p beta q
Proof:
Let alpha, beta, p and q be given.
Assume H1 H2 H3.
We will prove PNoLt_ (alphabeta) p qalphabetaPNoEq_ alpha p qq alphabetaalphaPNoEq_ beta p q¬ p beta.
Apply or3I2 to the current goal.
Apply and3I to the current goal.
An exact proof term for the current goal is H1.
An exact proof term for the current goal is H2.
An exact proof term for the current goal is H3.
Theorem. (PNoLtI3) The following is provable:
∀alpha beta, ∀p q : setprop, betaalphaPNoEq_ beta p q¬ p betaPNoLt alpha p beta q
Proof:
Let alpha, beta, p and q be given.
Assume H1 H2 H3.
We will prove PNoLt_ (alphabeta) p qalphabetaPNoEq_ alpha p qq alphabetaalphaPNoEq_ beta p q¬ p beta.
Apply or3I3 to the current goal.
Apply and3I to the current goal.
An exact proof term for the current goal is H1.
An exact proof term for the current goal is H2.
An exact proof term for the current goal is H3.
Theorem. (PNoLtE) The following is provable:
∀alpha beta, ∀p q : setprop, PNoLt alpha p beta q∀R : prop, (PNoLt_ (alphabeta) p qR)(alphabetaPNoEq_ alpha p qq alphaR)(betaalphaPNoEq_ beta p q¬ p betaR)R
Proof:
Let alpha, beta, p and q be given.
Assume H1.
Let R be given.
Assume HC1 HC2 HC3.
Apply H1 to the current goal.
Assume H1.
Apply H1 to the current goal.
An exact proof term for the current goal is HC1.
Assume H1.
Apply H1 to the current goal.
Assume H1.
Apply H1 to the current goal.
An exact proof term for the current goal is HC2.
Assume H1.
Apply H1 to the current goal.
Assume H1.
Apply H1 to the current goal.
An exact proof term for the current goal is HC3.
Theorem. (PNoLt_irref) The following is provable:
∀alpha, ∀p : setprop, ¬ PNoLt alpha p alpha p
Proof:
Let alpha and p be given.
Assume H1.
Apply PNoLtE alpha alpha p p H1 to the current goal.
Assume H1: PNoLt_ (alphaalpha) p p.
An exact proof term for the current goal is PNoLt_irref_ (alphaalpha) p H1.
Assume H1: alphaalpha.
We will prove False.
An exact proof term for the current goal is In_irref alpha H1.
Assume H1: alphaalpha.
We will prove False.
An exact proof term for the current goal is In_irref alpha H1.
Theorem. (PNoLt_trichotomy_or) The following is provable:
∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNoLt alpha p beta qalpha = betaPNoEq_ alpha p qPNoLt beta q alpha p
Proof:
Let alpha, beta, p and q be given.
Assume Ha Hb.
Apply Ha to the current goal.
Assume Ha1 _.
Apply Hb to the current goal.
Assume Hb1 _.
We prove the intermediate claim Lab: ordinal (alphabeta).
An exact proof term for the current goal is ordinal_binintersect alpha beta Ha Hb.
Apply PNoLt_trichotomy_or_ p q (alphabeta) Lab to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: PNoLt_ (alphabeta) p q.
Apply or3I1 to the current goal.
Apply PNoLtI1 to the current goal.
An exact proof term for the current goal is H1.
Assume H1: PNoEq_ (alphabeta) p q.
Apply ordinal_trichotomy_or alpha beta Ha Hb to the current goal.
Assume H2.
Apply H2 to the current goal.
Assume H2: alphabeta.
We prove the intermediate claim L1: alphabeta = alpha.
An exact proof term for the current goal is binintersect_Subq_eq_1 alpha beta (Hb1 alpha H2).
We prove the intermediate claim L2: PNoEq_ alpha p q.
rewrite the current goal using L1 (from right to left).
An exact proof term for the current goal is H1.
Apply xm (q alpha) to the current goal.
Assume H3: q alpha.
Apply or3I1 to the current goal.
Apply PNoLtI2 to the current goal.
An exact proof term for the current goal is H2.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is L2.
An exact proof term for the current goal is H3.
Assume H3: ¬ q alpha.
Apply or3I3 to the current goal.
Apply PNoLtI3 to the current goal.
An exact proof term for the current goal is H2.
We will prove PNoEq_ alpha q p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is L2.
An exact proof term for the current goal is H3.
Assume H2: alpha = beta.
We prove the intermediate claim L1: alphabeta = alpha.
rewrite the current goal using H2 (from right to left).
An exact proof term for the current goal is binintersect_Subq_eq_1 alpha alpha (Subq_ref alpha).
We prove the intermediate claim L2: PNoEq_ alpha p q.
rewrite the current goal using L1 (from right to left).
An exact proof term for the current goal is H1.
Apply or3I2 to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is H2.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is L2.
Assume H2: betaalpha.
We prove the intermediate claim L1: alphabeta = beta.
rewrite the current goal using binintersect_com (from left to right).
An exact proof term for the current goal is binintersect_Subq_eq_1 beta alpha (Ha1 beta H2).
We prove the intermediate claim L2: PNoEq_ beta p q.
rewrite the current goal using L1 (from right to left).
An exact proof term for the current goal is H1.
Apply xm (p beta) to the current goal.
Assume H3: p beta.
Apply or3I3 to the current goal.
Apply PNoLtI2 to the current goal.
An exact proof term for the current goal is H2.
We will prove PNoEq_ beta q p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is L2.
An exact proof term for the current goal is H3.
Assume H3: ¬ p beta.
Apply or3I1 to the current goal.
Apply PNoLtI3 to the current goal.
An exact proof term for the current goal is H2.
We will prove PNoEq_ beta p q.
An exact proof term for the current goal is L2.
An exact proof term for the current goal is H3.
Assume H1: PNoLt_ (alphabeta) q p.
Apply or3I3 to the current goal.
Apply PNoLtI1 to the current goal.
rewrite the current goal using binintersect_com (from left to right).
An exact proof term for the current goal is H1.
Theorem. (PNoLtEq_tra) The following is provable:
∀alpha beta, ordinal alphaordinal beta∀p q r : setprop, PNoLt alpha p beta qPNoEq_ beta q rPNoLt alpha p beta r
Proof:
Let alpha and beta be given.
Assume Ha Hb.
Let p, q and r be given.
Assume Hpq Hqr.
Apply PNoLtE alpha beta p q Hpq to the current goal.
Assume Hpq1: PNoLt_ (alphabeta) p q.
Apply Hpq1 to the current goal.
Let delta be given.
Assume Hpq2.
Apply Hpq2 to the current goal.
Assume Hd: deltaalphabeta.
Apply binintersectE alpha beta delta Hd to the current goal.
Assume Hd1 Hd2.
Assume Hpq3.
Apply Hpq3 to the current goal.
Assume Hpq3.
Apply Hpq3 to the current goal.
Assume Hpq3: PNoEq_ delta p q.
Assume Hpq4: ¬ p delta.
Assume Hpq5: q delta.
We will prove PNoLt alpha p beta r.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphabeta, PNoEq_ delta p r¬ p deltar delta.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hd.
Apply and3I to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p q r to the current goal.
We will prove PNoEq_ delta p q.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ delta q r.
Apply PNoEq_antimon_ q r beta Hb delta Hd2 to the current goal.
We will prove PNoEq_ beta q r.
An exact proof term for the current goal is Hqr.
We will prove ¬ p delta.
An exact proof term for the current goal is Hpq4.
We will prove r delta.
An exact proof term for the current goal is iffEL (q delta) (r delta) (Hqr delta Hd2) Hpq5.
Assume Hpq1: alphabeta.
Assume Hpq2: PNoEq_ alpha p q.
Assume Hpq3: q alpha.
We will prove PNoLt alpha p beta r.
Apply PNoLtI2 to the current goal.
We will prove alphabeta.
An exact proof term for the current goal is Hpq1.
We will prove PNoEq_ alpha p r.
Apply PNoEq_tra_ alpha p q r to the current goal.
An exact proof term for the current goal is Hpq2.
We will prove PNoEq_ alpha q r.
Apply PNoEq_antimon_ q r beta Hb alpha Hpq1 to the current goal.
An exact proof term for the current goal is Hqr.
We will prove r alpha.
An exact proof term for the current goal is iffEL (q alpha) (r alpha) (Hqr alpha Hpq1) Hpq3.
Assume Hpq1: betaalpha.
Assume Hpq2: PNoEq_ beta p q.
Assume Hpq3: ¬ p beta.
We will prove PNoLt alpha p beta r.
Apply PNoLtI3 to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hpq1.
We will prove PNoEq_ beta p r.
Apply PNoEq_tra_ beta p q r to the current goal.
An exact proof term for the current goal is Hpq2.
An exact proof term for the current goal is Hqr.
We will prove ¬ p beta.
An exact proof term for the current goal is Hpq3.
Theorem. (PNoEqLt_tra) The following is provable:
∀alpha beta, ordinal alphaordinal beta∀p q r : setprop, PNoEq_ alpha p qPNoLt alpha q beta rPNoLt alpha p beta r
Proof:
Let alpha and beta be given.
Assume Ha Hb.
Let p, q and r be given.
Assume Hpq Hqr.
Apply PNoLtE alpha beta q r Hqr to the current goal.
Assume Hqr1: PNoLt_ (alphabeta) q r.
Apply Hqr1 to the current goal.
Let delta be given.
Assume Hqr2.
Apply Hqr2 to the current goal.
Assume Hd: deltaalphabeta.
Apply binintersectE alpha beta delta Hd to the current goal.
Assume Hd1 Hd2.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3: PNoEq_ delta q r.
Assume Hqr4: ¬ q delta.
Assume Hqr5: r delta.
We will prove PNoLt alpha p beta r.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphabeta, PNoEq_ delta p r¬ p deltar delta.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hd.
Apply and3I to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p q r to the current goal.
We will prove PNoEq_ delta p q.
Apply PNoEq_antimon_ p q alpha Ha delta Hd1 to the current goal.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is Hpq.
We will prove PNoEq_ delta q r.
An exact proof term for the current goal is Hqr3.
We will prove ¬ p delta.
Assume H1: p delta.
Apply Hqr4 to the current goal.
We will prove q delta.
An exact proof term for the current goal is iffEL (p delta) (q delta) (Hpq delta Hd1) H1.
We will prove r delta.
An exact proof term for the current goal is Hqr5.
Assume Hqr1: alphabeta.
Assume Hqr2: PNoEq_ alpha q r.
Assume Hqr3: r alpha.
We will prove PNoLt alpha p beta r.
Apply PNoLtI2 to the current goal.
We will prove alphabeta.
An exact proof term for the current goal is Hqr1.
We will prove PNoEq_ alpha p r.
Apply PNoEq_tra_ alpha p q r to the current goal.
An exact proof term for the current goal is Hpq.
An exact proof term for the current goal is Hqr2.
We will prove r alpha.
An exact proof term for the current goal is Hqr3.
Assume Hqr1: betaalpha.
Assume Hqr2: PNoEq_ beta q r.
Assume Hqr3: ¬ q beta.
We will prove PNoLt alpha p beta r.
Apply PNoLtI3 to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hqr1.
We will prove PNoEq_ beta p r.
Apply PNoEq_tra_ beta p q r to the current goal.
Apply PNoEq_antimon_ p q alpha Ha beta Hqr1 to the current goal.
An exact proof term for the current goal is Hpq.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p beta.
Assume H1: p beta.
Apply Hqr3 to the current goal.
An exact proof term for the current goal is iffEL (p beta) (q beta) (Hpq beta Hqr1) H1.
Theorem. (PNoLt_tra) The following is provable:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLt alpha p beta qPNoLt beta q gamma rPNoLt alpha p gamma r
Proof:
Let alpha, beta and gamma be given.
Assume Ha Hb Hc.
Apply Ha to the current goal.
Assume Ha1 _.
Apply Hc to the current goal.
Assume Hc1 _.
Let p, q and r be given.
Assume Hpq Hqr.
Apply PNoLtE alpha beta p q Hpq to the current goal.
Assume Hpq1: PNoLt_ (alphabeta) p q.
Apply Hpq1 to the current goal.
Let delta be given.
Assume Hpq2.
Apply Hpq2 to the current goal.
Assume Hd: deltaalphabeta.
Apply binintersectE alpha beta delta Hd to the current goal.
Assume Hd1 Hd2.
Assume Hpq3.
Apply Hpq3 to the current goal.
Assume Hpq3.
Apply Hpq3 to the current goal.
Assume Hpq3: PNoEq_ delta p q.
Assume Hpq4: ¬ p delta.
Assume Hpq5: q delta.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered beta Hb delta Hd2.
Apply PNoLtE beta gamma q r Hqr to the current goal.
Assume Hqr1: PNoLt_ (betagamma) q r.
Apply Hqr1 to the current goal.
Let eps be given.
Assume Hqr2.
Apply Hqr2 to the current goal.
Assume He: epsbetagamma.
Apply binintersectE beta gamma eps He to the current goal.
Assume He1 He2.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3: PNoEq_ eps q r.
Assume Hqr4: ¬ q eps.
Assume Hqr5: r eps.
We prove the intermediate claim Le: ordinal eps.
An exact proof term for the current goal is ordinal_Hered beta Hb eps He1.
We will prove PNoLt alpha p gamma r.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphagamma, PNoEq_ delta p r¬ p deltar delta.
Apply ordinal_trichotomy_or delta eps Ld Le to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: deltaeps.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
We will prove deltaalphagamma.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Hd1.
We will prove deltagamma.
An exact proof term for the current goal is Hc1 eps He2 delta H1.
Apply and3I to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p q r to the current goal.
We will prove PNoEq_ delta p q.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ delta q r.
Apply PNoEq_antimon_ q r eps Le delta H1 to the current goal.
We will prove PNoEq_ eps q r.
An exact proof term for the current goal is Hqr3.
We will prove ¬ p delta.
An exact proof term for the current goal is Hpq4.
We will prove r delta.
An exact proof term for the current goal is iffEL (q delta) (r delta) (Hqr3 delta H1) Hpq5.
Assume H1: delta = eps.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
We will prove deltaalphagamma.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Hd1.
We will prove deltagamma.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is He2.
Apply and3I to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p q r to the current goal.
We will prove PNoEq_ delta p q.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ delta q r.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is Hqr3.
We will prove ¬ p delta.
An exact proof term for the current goal is Hpq4.
We will prove r delta.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is Hqr5.
Assume H1: epsdelta.
We use eps to witness the existential quantifier.
Apply andI to the current goal.
We will prove epsalphagamma.
Apply binintersectI to the current goal.
We will prove epsalpha.
An exact proof term for the current goal is Ha1 delta Hd1 eps H1.
An exact proof term for the current goal is He2.
Apply and3I to the current goal.
We will prove PNoEq_ eps p r.
Apply PNoEq_tra_ eps p q r to the current goal.
We will prove PNoEq_ eps p q.
Apply PNoEq_antimon_ p q delta Ld eps H1 to the current goal.
We will prove PNoEq_ delta p q.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ eps q r.
An exact proof term for the current goal is Hqr3.
We will prove ¬ p eps.
Assume H2: p eps.
Apply Hqr4 to the current goal.
An exact proof term for the current goal is iffEL (p eps) (q eps) (Hpq3 eps H1) H2.
We will prove r eps.
An exact proof term for the current goal is Hqr5.
Assume Hqr1: betagamma.
Assume Hqr2: PNoEq_ beta q r.
Assume Hqr3: r beta.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphagamma, PNoEq_ delta p r¬ p deltar delta.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
We will prove deltaalphagamma.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Hd1.
We will prove deltagamma.
An exact proof term for the current goal is Hc1 beta Hqr1 delta Hd2.
Apply and3I to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p q r to the current goal.
We will prove PNoEq_ delta p q.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ delta q r.
Apply PNoEq_antimon_ q r beta Hb delta Hd2 to the current goal.
We will prove PNoEq_ beta q r.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p delta.
An exact proof term for the current goal is Hpq4.
We will prove r delta.
An exact proof term for the current goal is iffEL (q delta) (r delta) (Hqr2 delta Hd2) Hpq5.
Assume Hqr1: gammabeta.
Assume Hqr2: PNoEq_ gamma q r.
Assume Hqr3: ¬ q gamma.
Apply ordinal_trichotomy_or delta gamma Ld Hc to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: deltagamma.
We will prove PNoLt alpha p gamma r.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphagamma, PNoEq_ delta p r¬ p deltar delta.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
We will prove deltaalphagamma.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Hd1.
We will prove deltagamma.
An exact proof term for the current goal is H1.
Apply and3I to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p q r to the current goal.
We will prove PNoEq_ delta p q.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ delta q r.
Apply PNoEq_antimon_ q r gamma Hc delta H1 to the current goal.
We will prove PNoEq_ gamma q r.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p delta.
An exact proof term for the current goal is Hpq4.
We will prove r delta.
An exact proof term for the current goal is iffEL (q delta) (r delta) (Hqr2 delta H1) Hpq5.
Assume H1: delta = gamma.
Apply PNoLtI3 to the current goal.
We will prove gammaalpha.
rewrite the current goal using H1 (from right to left).
An exact proof term for the current goal is Hd1.
We will prove PNoEq_ gamma p r.
Apply PNoEq_tra_ gamma p q r to the current goal.
We will prove PNoEq_ gamma p q.
rewrite the current goal using H1 (from right to left).
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ gamma q r.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p gamma.
rewrite the current goal using H1 (from right to left).
An exact proof term for the current goal is Hpq4.
Assume H1: gammadelta.
Apply PNoLtI3 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is Ha1 delta Hd1 gamma H1.
We will prove PNoEq_ gamma p r.
Apply PNoEq_tra_ gamma p q r to the current goal.
We will prove PNoEq_ gamma p q.
Apply PNoEq_antimon_ p q delta Ld gamma H1 to the current goal.
An exact proof term for the current goal is Hpq3.
We will prove PNoEq_ gamma q r.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p gamma.
Assume H2: p gamma.
Apply Hqr3 to the current goal.
We will prove q gamma.
An exact proof term for the current goal is iffEL (p gamma) (q gamma) (Hpq3 gamma H1) H2.
Assume Hpq1: alphabeta.
Assume Hpq2: PNoEq_ alpha p q.
Assume Hpq3: q alpha.
Apply PNoLtE beta gamma q r Hqr to the current goal.
Assume Hqr1: PNoLt_ (betagamma) q r.
Apply Hqr1 to the current goal.
Let eps be given.
Assume Hqr2.
Apply Hqr2 to the current goal.
Assume He: epsbetagamma.
Apply binintersectE beta gamma eps He to the current goal.
Assume He1 He2.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3: PNoEq_ eps q r.
Assume Hqr4: ¬ q eps.
Assume Hqr5: r eps.
We prove the intermediate claim Le: ordinal eps.
An exact proof term for the current goal is ordinal_Hered beta Hb eps He1.
Apply ordinal_trichotomy_or alpha eps Ha Le to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: alphaeps.
We will prove PNoLt alpha p gamma r.
Apply PNoLtI2 to the current goal.
We will prove alphagamma.
An exact proof term for the current goal is Hc1 eps He2 alpha H1.
We will prove PNoEq_ alpha p r.
Apply PNoEq_tra_ alpha p q r to the current goal.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is Hpq2.
We will prove PNoEq_ alpha q r.
Apply PNoEq_antimon_ q r eps Le alpha H1 to the current goal.
We will prove PNoEq_ eps q r.
An exact proof term for the current goal is Hqr3.
We will prove r alpha.
An exact proof term for the current goal is iffEL (q alpha) (r alpha) (Hqr3 alpha H1) Hpq3.
Assume H1: alpha = eps.
We will prove PNoLt alpha p gamma r.
Apply PNoLtI2 to the current goal.
We will prove alphagamma.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is He2.
We will prove PNoEq_ alpha p r.
Apply PNoEq_tra_ alpha p q r to the current goal.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is Hpq2.
We will prove PNoEq_ alpha q r.
rewrite the current goal using H1 (from left to right).
We will prove PNoEq_ eps q r.
An exact proof term for the current goal is Hqr3.
We will prove r alpha.
rewrite the current goal using H1 (from left to right).
An exact proof term for the current goal is Hqr5.
Assume H1: epsalpha.
We will prove PNoLt alpha p gamma r.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphagamma, PNoEq_ delta p r¬ p deltar delta.
We use eps to witness the existential quantifier.
Apply andI to the current goal.
We will prove epsalphagamma.
Apply binintersectI to the current goal.
An exact proof term for the current goal is H1.
An exact proof term for the current goal is He2.
Apply and3I to the current goal.
We will prove PNoEq_ eps p r.
Apply PNoEq_tra_ eps p q r to the current goal.
We will prove PNoEq_ eps p q.
Apply PNoEq_antimon_ p q alpha Ha eps H1 to the current goal.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is Hpq2.
We will prove PNoEq_ eps q r.
An exact proof term for the current goal is Hqr3.
We will prove ¬ p eps.
Assume H2: p eps.
Apply Hqr4 to the current goal.
We will prove q eps.
An exact proof term for the current goal is iffEL (p eps) (q eps) (Hpq2 eps H1) H2.
We will prove r eps.
An exact proof term for the current goal is Hqr5.
Assume Hqr1: betagamma.
Assume Hqr2: PNoEq_ beta q r.
Assume Hqr3: r beta.
Apply PNoLtI2 to the current goal.
We will prove alphagamma.
An exact proof term for the current goal is Hc1 beta Hqr1 alpha Hpq1.
We will prove PNoEq_ alpha p r.
Apply PNoEq_tra_ alpha p q r to the current goal.
An exact proof term for the current goal is Hpq2.
Apply PNoEq_antimon_ q r beta Hb alpha Hpq1 to the current goal.
An exact proof term for the current goal is Hqr2.
We will prove r alpha.
An exact proof term for the current goal is iffEL (q alpha) (r alpha) (Hqr2 alpha Hpq1) Hpq3.
Assume Hqr1: gammabeta.
Assume Hqr2: PNoEq_ gamma q r.
Assume Hqr3: ¬ q gamma.
We will prove PNoLt alpha p gamma r.
Apply ordinal_trichotomy_or alpha gamma Ha Hc to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: alphagamma.
Apply PNoLtI2 to the current goal.
We will prove alphagamma.
An exact proof term for the current goal is H1.
We will prove PNoEq_ alpha p r.
Apply PNoEq_tra_ alpha p q r to the current goal.
An exact proof term for the current goal is Hpq2.
Apply PNoEq_antimon_ q r gamma Hc alpha H1 to the current goal.
An exact proof term for the current goal is Hqr2.
We will prove r alpha.
An exact proof term for the current goal is iffEL (q alpha) (r alpha) (Hqr2 alpha H1) Hpq3.
Assume H1: alpha = gamma.
We will prove False.
Apply Hqr3 to the current goal.
rewrite the current goal using H1 (from right to left).
An exact proof term for the current goal is Hpq3.
Assume H1: gammaalpha.
Apply PNoLtI3 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is H1.
We will prove PNoEq_ gamma p r.
Apply PNoEq_tra_ gamma p q r to the current goal.
Apply PNoEq_antimon_ p q alpha Ha gamma H1 to the current goal.
An exact proof term for the current goal is Hpq2.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p gamma.
Assume H2: p gamma.
Apply Hqr3 to the current goal.
We will prove q gamma.
An exact proof term for the current goal is iffEL (p gamma) (q gamma) (Hpq2 gamma H1) H2.
Assume Hpq1: betaalpha.
Assume Hpq2: PNoEq_ beta p q.
Assume Hpq3: ¬ p beta.
Apply PNoLtE beta gamma q r Hqr to the current goal.
Assume Hqr1: PNoLt_ (betagamma) q r.
Apply Hqr1 to the current goal.
Let eps be given.
Assume Hqr2.
Apply Hqr2 to the current goal.
Assume He: epsbetagamma.
Apply binintersectE beta gamma eps He to the current goal.
Assume He1 He2.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3.
Apply Hqr3 to the current goal.
Assume Hqr3: PNoEq_ eps q r.
Assume Hqr4: ¬ q eps.
Assume Hqr5: r eps.
We will prove PNoLt alpha p gamma r.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphagamma, PNoEq_ delta p r¬ p deltar delta.
We use eps to witness the existential quantifier.
Apply andI to the current goal.
We will prove epsalphagamma.
Apply binintersectI to the current goal.
We will prove epsalpha.
An exact proof term for the current goal is Ha1 beta Hpq1 eps He1.
An exact proof term for the current goal is He2.
Apply and3I to the current goal.
We will prove PNoEq_ eps p r.
Apply PNoEq_tra_ eps p q r to the current goal.
We will prove PNoEq_ eps p q.
Apply PNoEq_antimon_ p q beta Hb eps He1 to the current goal.
An exact proof term for the current goal is Hpq2.
An exact proof term for the current goal is Hqr3.
We will prove ¬ p eps.
Assume H1: p eps.
Apply Hqr4 to the current goal.
We will prove q eps.
An exact proof term for the current goal is iffEL (p eps) (q eps) (Hpq2 eps He1) H1.
We will prove r eps.
An exact proof term for the current goal is Hqr5.
Assume Hqr1: betagamma.
Assume Hqr2: PNoEq_ beta q r.
Assume Hqr3: r beta.
Apply PNoLtI1 to the current goal.
We will prove ∃delta ∈ alphagamma, PNoEq_ delta p r¬ p deltar delta.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Hpq1.
An exact proof term for the current goal is Hqr1.
Apply and3I to the current goal.
Apply PNoEq_tra_ beta p q r to the current goal.
An exact proof term for the current goal is Hpq2.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p beta.
An exact proof term for the current goal is Hpq3.
We will prove r beta.
An exact proof term for the current goal is Hqr3.
Assume Hqr1: gammabeta.
Assume Hqr2: PNoEq_ gamma q r.
Assume Hqr3: ¬ q gamma.
Apply PNoLtI3 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is Ha1 beta Hpq1 gamma Hqr1.
We will prove PNoEq_ gamma p r.
Apply PNoEq_tra_ gamma p q r to the current goal.
We will prove PNoEq_ gamma p q.
Apply PNoEq_antimon_ p q beta Hb gamma Hqr1 to the current goal.
An exact proof term for the current goal is Hpq2.
An exact proof term for the current goal is Hqr2.
We will prove ¬ p gamma.
Assume H1: p gamma.
Apply Hqr3 to the current goal.
We will prove q gamma.
An exact proof term for the current goal is iffEL (p gamma) (q gamma) (Hpq2 gamma Hqr1) H1.
Definition. We define PNoLe to be λalpha p beta q ⇒ PNoLt alpha p beta qalpha = betaPNoEq_ alpha p q of type set(setprop)set(setprop)prop.
Theorem. (PNoLeI1) The following is provable:
∀alpha beta, ∀p q : setprop, PNoLt alpha p beta qPNoLe alpha p beta q
Proof:
Let alpha, beta, p and q be given.
Assume H1.
We will prove PNoLt alpha p beta qalpha = betaPNoEq_ alpha p q.
Apply orIL to the current goal.
An exact proof term for the current goal is H1.
Theorem. (PNoLeI2) The following is provable:
∀alpha, ∀p q : setprop, PNoEq_ alpha p qPNoLe alpha p alpha q
Proof:
Let alpha, p and q be given.
Assume H1.
We will prove PNoLt alpha p alpha qalpha = alphaPNoEq_ alpha p q.
Apply orIR to the current goal.
Apply andI to the current goal.
Use reflexivity.
An exact proof term for the current goal is H1.
Theorem. (PNoLe_ref) The following is provable:
∀alpha, ∀p : setprop, PNoLe alpha p alpha p
Proof:
Let alpha and p be given.
Apply PNoLeI2 to the current goal.
Apply PNoEq_ref_ to the current goal.
Theorem. (PNoLe_antisym) The following is provable:
∀alpha beta, ordinal alphaordinal beta∀p q : setprop, PNoLe alpha p beta qPNoLe beta q alpha palpha = betaPNoEq_ alpha p q
Proof:
Let alpha and beta be given.
Assume Ha Hb.
Let p and q be given.
Assume H1: PNoLt alpha p beta qalpha = betaPNoEq_ alpha p q.
Assume H2: PNoLt beta q alpha pbeta = alphaPNoEq_ beta q p.
Apply H1 to the current goal.
Assume H1: PNoLt alpha p beta q.
We will prove False.
Apply H2 to the current goal.
Assume H2: PNoLt beta q alpha p.
Apply PNoLt_irref alpha p to the current goal.
Apply PNoLt_tra alpha beta alpha Ha Hb Ha p q p to the current goal.
An exact proof term for the current goal is H1.
An exact proof term for the current goal is H2.
Assume H2.
Apply H2 to the current goal.
Assume H2a: beta = alpha.
Assume H2b: PNoEq_ beta q p.
Apply PNoLtE alpha beta p q H1 to the current goal.
Assume Hpq1: PNoLt_ (alphabeta) p q.
Apply Hpq1 to the current goal.
Let delta be given.
Assume Hpq2.
Apply Hpq2 to the current goal.
Assume Hd: deltaalphabeta.
Apply binintersectE alpha beta delta Hd to the current goal.
Assume Hd1 Hd2.
Assume Hpq3.
Apply Hpq3 to the current goal.
Assume Hpq3.
Apply Hpq3 to the current goal.
Assume Hpq3: PNoEq_ delta p q.
Assume Hpq4: ¬ p delta.
Assume Hpq5: q delta.
Apply Hpq4 to the current goal.
An exact proof term for the current goal is iffEL (q delta) (p delta) (H2b delta Hd2) Hpq5.
Assume Hpq1: alphabeta.
Assume Hpq2: PNoEq_ alpha p q.
Assume Hpq3: q alpha.
Apply In_irref alpha to the current goal.
rewrite the current goal using H2a (from right to left) at position 2.
An exact proof term for the current goal is Hpq1.
Assume Hpq1: betaalpha.
Assume Hpq2: PNoEq_ beta p q.
Assume Hpq3: ¬ p beta.
Apply In_irref alpha to the current goal.
rewrite the current goal using H2a (from right to left) at position 1.
An exact proof term for the current goal is Hpq1.
Assume H1.
An exact proof term for the current goal is H1.
Theorem. (PNoLtLe_tra) The following is provable:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLt alpha p beta qPNoLe beta q gamma rPNoLt alpha p gamma r
Proof:
Let alpha, beta and gamma be given.
Assume Ha Hb Hc.
Let p, q and r be given.
Assume H1: PNoLt alpha p beta q.
Assume H2: PNoLt beta q gamma rbeta = gammaPNoEq_ beta q r.
Apply H2 to the current goal.
Assume H2: PNoLt beta q gamma r.
An exact proof term for the current goal is PNoLt_tra alpha beta gamma Ha Hb Hc p q r H1 H2.
Assume H2.
Apply H2 to the current goal.
Assume H2a: beta = gamma.
Assume H2b: PNoEq_ beta q r.
We will prove PNoLt alpha p gamma r.
rewrite the current goal using H2a (from right to left).
We will prove PNoLt alpha p beta r.
An exact proof term for the current goal is PNoLtEq_tra alpha beta Ha Hb p q r H1 H2b.
Theorem. (PNoLeLt_tra) The following is provable:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLe alpha p beta qPNoLt beta q gamma rPNoLt alpha p gamma r
Proof:
Let alpha, beta and gamma be given.
Assume Ha Hb Hc.
Let p, q and r be given.
Assume H1: PNoLt alpha p beta qalpha = betaPNoEq_ alpha p q.
Assume H2: PNoLt beta q gamma r.
Apply H1 to the current goal.
Assume H1: PNoLt alpha p beta q.
An exact proof term for the current goal is PNoLt_tra alpha beta gamma Ha Hb Hc p q r H1 H2.
Assume H1.
Apply H1 to the current goal.
Assume H1a: alpha = beta.
Assume H1b: PNoEq_ alpha p q.
We will prove PNoLt alpha p gamma r.
rewrite the current goal using H1a (from left to right).
We will prove PNoLt beta p gamma r.
Apply PNoEqLt_tra beta gamma Hb Hc p q r to the current goal.
We will prove PNoEq_ beta p q.
rewrite the current goal using H1a (from right to left).
An exact proof term for the current goal is H1b.
An exact proof term for the current goal is H2.
Theorem. (PNoEqLe_tra) The following is provable:
∀alpha beta, ordinal alphaordinal beta∀p q r : setprop, PNoEq_ alpha p qPNoLe alpha q beta rPNoLe alpha p beta r
Proof:
Let alpha and beta be given.
Assume Ha Hb.
Let p, q and r be given.
Assume Hpq.
Assume Hqr: PNoLt alpha q beta ralpha = betaPNoEq_ alpha q r.
We will prove PNoLt alpha p beta ralpha = betaPNoEq_ alpha p r.
Apply Hqr to the current goal.
Assume Hqr1.
Apply orIL to the current goal.
An exact proof term for the current goal is PNoEqLt_tra alpha beta Ha Hb p q r Hpq Hqr1.
Assume Hqr.
Apply Hqr to the current goal.
Assume Hqr1: alpha = beta.
Assume Hqr2: PNoEq_ alpha q r.
Apply orIR to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is Hqr1.
An exact proof term for the current goal is PNoEq_tra_ alpha p q r Hpq Hqr2.
Theorem. (PNoLe_tra) The following is provable:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLe alpha p beta qPNoLe beta q gamma rPNoLe alpha p gamma r
Proof:
Let alpha, beta and gamma be given.
Assume Ha Hb Hc.
Let p, q and r be given.
Assume H1: PNoLt alpha p beta qalpha = betaPNoEq_ alpha p q.
Assume H2: PNoLe beta q gamma r.
Apply H1 to the current goal.
Assume H1: PNoLt alpha p beta q.
We will prove PNoLt alpha p gamma ralpha = gammaPNoEq_ alpha p r.
Apply orIL to the current goal.
An exact proof term for the current goal is PNoLtLe_tra alpha beta gamma Ha Hb Hc p q r H1 H2.
Assume H1.
Apply H1 to the current goal.
Assume H1a: alpha = beta.
Assume H1b: PNoEq_ alpha p q.
We will prove PNoLe alpha p gamma r.
rewrite the current goal using H1a (from left to right).
We will prove PNoLe beta p gamma r.
We prove the intermediate claim L1: PNoEq_ beta p q.
rewrite the current goal using H1a (from right to left).
An exact proof term for the current goal is H1b.
An exact proof term for the current goal is PNoEqLe_tra beta gamma Hb Hc p q r L1 H2.
Definition. We define PNo_downc to be λL alpha p ⇒ ∃beta, ordinal beta∃q : setprop, L beta qPNoLe alpha p beta q of type (set(setprop)prop)set(setprop)prop.
Definition. We define PNo_upc to be λR alpha p ⇒ ∃beta, ordinal beta∃q : setprop, R beta qPNoLe beta q alpha p of type (set(setprop)prop)set(setprop)prop.
Theorem. (PNoLe_downc) The following is provable:
∀L : set(setprop)prop, ∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNo_downc L alpha pPNoLe beta q alpha pPNo_downc L beta q
Proof:
Let L, alpha, beta, p and q be given.
Assume Ha Hb.
Assume H1: PNo_downc L alpha p.
Assume H2: PNoLe beta q alpha p.
We will prove PNo_downc L beta q.
Apply H1 to the current goal.
Let gamma be given.
Assume H3.
Apply H3 to the current goal.
Assume Hc: ordinal gamma.
Assume H3.
Apply H3 to the current goal.
Let r be given.
Assume H3.
Apply H3 to the current goal.
Assume H3: L gamma r.
Assume H4: PNoLe alpha p gamma r.
We will prove ∃delta, ordinal delta∃r : setprop, L delta rPNoLe beta q delta r.
We use gamma to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hc.
We use r to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H3.
An exact proof term for the current goal is PNoLe_tra beta alpha gamma Hb Ha Hc q p r H2 H4.
Theorem. (PNo_downc_ref) The following is provable:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, L alpha pPNo_downc L alpha p
Proof:
Let L and alpha be given.
Assume Ha.
Let p be given.
Assume H1: L alpha p.
We will prove ∃beta, ordinal beta∃q : setprop, L beta qPNoLe alpha p beta q.
We use alpha to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Ha.
We use p to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H1.
Apply PNoLe_ref to the current goal.
Theorem. (PNo_upc_ref) The following is provable:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, R alpha pPNo_upc R alpha p
Proof:
Let R and alpha be given.
Assume Ha.
Let p be given.
Assume H1: R alpha p.
We will prove ∃beta, ordinal beta∃q : setprop, R beta qPNoLe beta q alpha p.
We use alpha to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Ha.
We use p to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H1.
Apply PNoLe_ref to the current goal.
Theorem. (PNoLe_upc) The following is provable:
∀R : set(setprop)prop, ∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNo_upc R alpha pPNoLe alpha p beta qPNo_upc R beta q
Proof:
Let R, alpha, beta, p and q be given.
Assume Ha Hb.
Assume H1: PNo_upc R alpha p.
Assume H2: PNoLe alpha p beta q.
We will prove PNo_upc R beta q.
Apply H1 to the current goal.
Let gamma be given.
Assume H3.
Apply H3 to the current goal.
Assume Hc: ordinal gamma.
Assume H3.
Apply H3 to the current goal.
Let r be given.
Assume H3.
Apply H3 to the current goal.
Assume H3: R gamma r.
Assume H4: PNoLe gamma r alpha p.
We will prove ∃delta, ordinal delta∃r : setprop, R delta rPNoLe delta r beta q.
We use gamma to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hc.
We use r to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is H3.
An exact proof term for the current goal is PNoLe_tra gamma alpha beta Hc Ha Hb r p q H4 H2.
Definition. We define PNoLt_pwise to be λL R ⇒ ∀gamma, ordinal gamma∀p : setprop, L gamma p∀delta, ordinal delta∀q : setprop, R delta qPNoLt gamma p delta q of type (set(setprop)prop)(set(setprop)prop)prop.
Theorem. (PNoLt_pwise_downc_upc) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L RPNoLt_pwise (PNo_downc L) (PNo_upc R)
Proof:
Let L and R be given.
Assume HLR.
We will prove PNoLt_pwise (PNo_downc L) (PNo_upc R).
Let gamma be given.
Assume Hc.
Let p be given.
Assume Hp.
Let delta be given.
Assume Hd.
Let q be given.
Assume Hq.
Apply Hp to the current goal.
Let alpha be given.
Assume H1.
Apply H1 to the current goal.
Assume H2: ordinal alpha.
Assume H3.
Apply H3 to the current goal.
Let p2 be given.
Assume H3.
Apply H3 to the current goal.
Assume H4: L alpha p2.
Assume H5: PNoLe gamma p alpha p2.
Apply Hq to the current goal.
Let beta be given.
Assume H6.
Apply H6 to the current goal.
Assume H7: ordinal beta.
Assume H8.
Apply H8 to the current goal.
Let q2 be given.
Assume H9.
Apply H9 to the current goal.
Assume H10: R beta q2.
Assume H11: PNoLe beta q2 delta q.
We prove the intermediate claim L1: PNoLt gamma p delta q.
Apply PNoLeLt_tra gamma alpha delta Hc H2 Hd p p2 q H5 to the current goal.
We will prove PNoLt alpha p2 delta q.
Apply PNoLtLe_tra alpha beta delta H2 H7 Hd p2 q2 q (HLR alpha H2 p2 H4 beta H7 q2 H10) to the current goal.
We will prove PNoLe beta q2 delta q.
An exact proof term for the current goal is H11.
Apply PNoLt_trichotomy_or delta gamma q p Hd Hc to the current goal.
Assume H12.
Apply H12 to the current goal.
Assume H12: PNoLt delta q gamma p.
Apply PNoLt_irref gamma p to the current goal.
We will prove PNoLt gamma p gamma p.
Apply PNoLt_tra gamma delta gamma Hc Hd Hc p q p L1 to the current goal.
An exact proof term for the current goal is H12.
Assume H12: delta = gammaPNoEq_ delta q p.
Apply PNoLt_irref delta q to the current goal.
We will prove PNoLt delta q delta q.
Apply PNoLeLt_tra delta gamma delta Hd Hc Hd q p q to the current goal.
We will prove PNoLe delta q gamma p.
We will prove PNoLt delta q gamma pdelta = gammaPNoEq_ delta q p.
Apply orIR to the current goal.
An exact proof term for the current goal is H12.
We will prove PNoLt gamma p delta q.
An exact proof term for the current goal is L1.
Assume H12: PNoLt gamma p delta q.
An exact proof term for the current goal is H12.
Definition. We define PNo_rel_strict_upperbd to be λL alpha p ⇒ ∀beta ∈ alpha, ∀q : setprop, PNo_downc L beta qPNoLt beta q alpha p of type (set(setprop)prop)set(setprop)prop.
Definition. We define PNo_rel_strict_lowerbd to be λR alpha p ⇒ ∀beta ∈ alpha, ∀q : setprop, PNo_upc R beta qPNoLt alpha p beta q of type (set(setprop)prop)set(setprop)prop.
Definition. We define PNo_rel_strict_imv to be λL R alpha p ⇒ PNo_rel_strict_upperbd L alpha pPNo_rel_strict_lowerbd R alpha p of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
Theorem. (PNoEq_rel_strict_upperbd) The following is provable:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_rel_strict_upperbd L alpha pPNo_rel_strict_upperbd L alpha q
Proof:
Let L and alpha be given.
Assume Ha.
Let p and q be given.
Assume Hpq: PNoEq_ alpha p q.
Assume H1: PNo_rel_strict_upperbd L alpha p.
We will prove PNo_rel_strict_upperbd L alpha q.
Let beta be given.
Assume Hb: betaalpha.
Let r be given.
Assume H2: PNo_downc L beta r.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We will prove PNoLt beta r alpha q.
Apply PNoLtEq_tra beta alpha Lb Ha r p q to the current goal.
We will prove PNoLt beta r alpha p.
An exact proof term for the current goal is H1 beta Hb r H2.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is Hpq.
Theorem. (PNo_rel_strict_upperbd_antimon) The following is provable:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, ∀beta ∈ alpha, PNo_rel_strict_upperbd L alpha pPNo_rel_strict_upperbd L beta p
Proof:
Let L and alpha be given.
Assume Ha.
Let p and beta be given.
Assume Hb.
Apply Ha to the current goal.
Assume Ha1 _.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We prove the intermediate claim Lbt: TransSet beta.
Apply Lb to the current goal.
Assume H2 _.
An exact proof term for the current goal is H2.
Assume H1: ∀gamma ∈ alpha, ∀q : setprop, PNo_downc L gamma qPNoLt gamma q alpha p.
We will prove ∀gamma ∈ beta, ∀q : setprop, PNo_downc L gamma qPNoLt gamma q beta p.
Let gamma be given.
Assume Hc.
Let q be given.
Assume H4.
We will prove PNoLt gamma q beta p.
We prove the intermediate claim Lca: gammaalpha.
An exact proof term for the current goal is Ha1 beta Hb gamma Hc.
We prove the intermediate claim L1: PNoLt gamma q alpha p.
Apply H1 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is Lca.
We will prove PNo_downc L gamma q.
An exact proof term for the current goal is H4.
Apply PNoLtE gamma alpha q p L1 to the current goal.
Assume H5: PNoLt_ (gammaalpha) q p.
We prove the intermediate claim L2: gammaalpha = gamma.
Apply binintersect_Subq_eq_1 to the current goal.
An exact proof term for the current goal is Ha1 gamma Lca.
We prove the intermediate claim L3: gammabeta = gamma.
Apply binintersect_Subq_eq_1 to the current goal.
An exact proof term for the current goal is Lbt gamma Hc.
Apply PNoLtI1 to the current goal.
rewrite the current goal using L3 (from left to right).
rewrite the current goal using L2 (from right to left).
An exact proof term for the current goal is H5.
Assume H5: gammaalpha.
Assume H6: PNoEq_ gamma q p.
Assume H7: p gamma.
Apply PNoLtI2 to the current goal.
We will prove gammabeta.
An exact proof term for the current goal is Hc.
We will prove PNoEq_ gamma q p.
An exact proof term for the current goal is H6.
We will prove p gamma.
An exact proof term for the current goal is H7.
Assume H5: alphagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle alpha gamma H5 Lca.
Theorem. (PNoEq_rel_strict_lowerbd) The following is provable:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_rel_strict_lowerbd R alpha pPNo_rel_strict_lowerbd R alpha q
Proof:
Let R and alpha be given.
Assume Ha.
Let p and q be given.
Assume Hpq: PNoEq_ alpha p q.
Assume H1: PNo_rel_strict_lowerbd R alpha p.
We will prove PNo_rel_strict_lowerbd R alpha q.
Let beta be given.
Assume Hb: betaalpha.
Let r be given.
Assume H2: PNo_upc R beta r.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We will prove PNoLt alpha q beta r.
Apply PNoEqLt_tra alpha beta Ha Lb q p r to the current goal.
We will prove PNoEq_ alpha q p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Hpq.
We will prove PNoLt alpha p beta r.
An exact proof term for the current goal is H1 beta Hb r H2.
Theorem. (PNo_rel_strict_lowerbd_antimon) The following is provable:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, ∀beta ∈ alpha, PNo_rel_strict_lowerbd R alpha pPNo_rel_strict_lowerbd R beta p
Proof:
Let R and alpha be given.
Assume Ha.
Let p and beta be given.
Assume Hb.
Apply Ha to the current goal.
Assume Ha1 _.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We prove the intermediate claim Lbt: TransSet beta.
Apply Lb to the current goal.
Assume H2 _.
An exact proof term for the current goal is H2.
Assume H1: ∀gamma ∈ alpha, ∀q : setprop, PNo_upc R gamma qPNoLt alpha p gamma q.
We will prove ∀gamma ∈ beta, ∀q : setprop, PNo_upc R gamma qPNoLt beta p gamma q.
Let gamma be given.
Assume Hc.
Let q be given.
Assume H4.
We will prove PNoLt beta p gamma q.
We prove the intermediate claim Lca: gammaalpha.
An exact proof term for the current goal is Ha1 beta Hb gamma Hc.
We prove the intermediate claim L1: PNoLt alpha p gamma q.
Apply H1 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is Lca.
We will prove PNo_upc R gamma q.
An exact proof term for the current goal is H4.
Apply PNoLtE alpha gamma p q L1 to the current goal.
Assume H5: PNoLt_ (alphagamma) p q.
We prove the intermediate claim L2: alphagamma = gamma.
rewrite the current goal using binintersect_com (from left to right).
Apply binintersect_Subq_eq_1 to the current goal.
An exact proof term for the current goal is Ha1 gamma Lca.
We prove the intermediate claim L3: betagamma = gamma.
rewrite the current goal using binintersect_com (from left to right).
Apply binintersect_Subq_eq_1 to the current goal.
An exact proof term for the current goal is Lbt gamma Hc.
Apply PNoLtI1 to the current goal.
rewrite the current goal using L3 (from left to right).
rewrite the current goal using L2 (from right to left).
An exact proof term for the current goal is H5.
Assume H5: alphagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle alpha gamma H5 Lca.
Assume H5: gammaalpha.
Assume H6: PNoEq_ gamma p q.
Assume H7: ¬ p gamma.
Apply PNoLtI3 to the current goal.
We will prove gammabeta.
An exact proof term for the current goal is Hc.
We will prove PNoEq_ gamma p q.
An exact proof term for the current goal is H6.
We will prove ¬ p gamma.
An exact proof term for the current goal is H7.
Theorem. (PNoEq_rel_strict_imv) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_rel_strict_imv L R alpha pPNo_rel_strict_imv L R alpha q
Proof:
Let L, R and alpha be given.
Assume Ha.
Let p and q be given.
Assume Hpq H1.
Apply H1 to the current goal.
Assume H2 H3.
We will prove PNo_rel_strict_upperbd L alpha qPNo_rel_strict_lowerbd R alpha q.
Apply andI to the current goal.
An exact proof term for the current goal is PNoEq_rel_strict_upperbd L alpha Ha p q Hpq H2.
An exact proof term for the current goal is PNoEq_rel_strict_lowerbd R alpha Ha p q Hpq H3.
Theorem. (PNo_rel_strict_imv_antimon) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, ∀beta ∈ alpha, PNo_rel_strict_imv L R alpha pPNo_rel_strict_imv L R beta p
Proof:
Let L, R and alpha be given.
Assume Ha.
Let p and beta be given.
Assume Hb H1.
Apply H1 to the current goal.
Assume H2 H3.
Apply andI to the current goal.
An exact proof term for the current goal is PNo_rel_strict_upperbd_antimon L alpha Ha p beta Hb H2.
An exact proof term for the current goal is PNo_rel_strict_lowerbd_antimon R alpha Ha p beta Hb H3.
Definition. We define PNo_rel_strict_uniq_imv to be λL R alpha p ⇒ PNo_rel_strict_imv L R alpha p∀q : setprop, PNo_rel_strict_imv L R alpha qPNoEq_ alpha p q of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
Definition. We define PNo_rel_strict_split_imv to be λL R alpha p ⇒ PNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p deltadeltaalpha)PNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p deltadelta = alpha) of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
Theorem. (PNo_extend0_eq) The following is provable:
∀alpha, ∀p : setprop, PNoEq_ alpha p (λdelta ⇒ p deltadeltaalpha)
Proof:
Let alpha and p be given.
Set p0 to be the term λdelta ⇒ p deltadeltaalpha of type setprop.
Let beta be given.
Assume Hb: betaalpha.
We will prove p betap0 beta.
Apply iffI to the current goal.
Assume H1: p beta.
We will prove p betabetaalpha.
Apply andI to the current goal.
An exact proof term for the current goal is H1.
We will prove betaalpha.
Assume H2: beta = alpha.
Apply In_irref alpha to the current goal.
rewrite the current goal using H2 (from right to left) at position 1.
An exact proof term for the current goal is Hb.
Assume H1: p0 beta.
Apply H1 to the current goal.
Assume H2 _.
An exact proof term for the current goal is H2.
Theorem. (PNo_extend1_eq) The following is provable:
∀alpha, ∀p : setprop, PNoEq_ alpha p (λdelta ⇒ p deltadelta = alpha)
Proof:
Let alpha and p be given.
Set p1 to be the term λdelta ⇒ p deltadelta = alpha of type setprop.
Let beta be given.
Assume Hb: betaalpha.
We will prove p betap1 beta.
Apply iffI to the current goal.
Assume H1: p beta.
We will prove p betabeta = alpha.
Apply orIL to the current goal.
An exact proof term for the current goal is H1.
Assume H1: p1 beta.
Apply H1 to the current goal.
Assume H2: p beta.
An exact proof term for the current goal is H2.
Assume H2: beta = alpha.
We will prove False.
Apply In_irref alpha to the current goal.
rewrite the current goal using H2 (from right to left) at position 1.
An exact proof term for the current goal is Hb.
Theorem. (PNo_rel_imv_ex) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alpha(∃p : setprop, PNo_rel_strict_uniq_imv L R alpha p)(∃tau ∈ alpha, ∃p : setprop, PNo_rel_strict_split_imv L R tau p)
Proof:
Let L and R be given.
Assume HLR.
We prove the intermediate claim LLR: PNoLt_pwise (PNo_downc L) (PNo_upc R).
An exact proof term for the current goal is PNoLt_pwise_downc_upc L R HLR.
Apply ordinal_ind to the current goal.
Let alpha be given.
Assume Ha.
Apply Ha to the current goal.
Assume Ha1 _.
Assume IH: ∀gamma ∈ alpha, (∃p : setprop, PNo_rel_strict_uniq_imv L R gamma p)(∃tau ∈ gamma, ∃p : setprop, PNo_rel_strict_split_imv L R tau p).
Apply dneg to the current goal.
Assume HNC: ¬ ((∃p : setprop, PNo_rel_strict_uniq_imv L R alpha p)(∃tau ∈ alpha, ∃p : setprop, PNo_rel_strict_split_imv L R tau p)).
Apply not_or_and_demorgan (∃p : setprop, PNo_rel_strict_uniq_imv L R alpha p) (∃tau ∈ alpha, ∃p : setprop, PNo_rel_strict_split_imv L R tau p) HNC to the current goal.
Assume HNC1: ¬ (∃p : setprop, PNo_rel_strict_uniq_imv L R alpha p).
Assume HNC2: ¬ (∃tau ∈ alpha, ∃p : setprop, PNo_rel_strict_split_imv L R tau p).
We prove the intermediate claim LIH: ∀gamma ∈ alpha, ∃p : setprop, PNo_rel_strict_uniq_imv L R gamma p.
Let gamma be given.
Assume Hc: gammaalpha.
Apply IH gamma Hc to the current goal.
Assume H1.
An exact proof term for the current goal is H1.
Assume H1: ∃tau ∈ gamma, ∃p : setprop, PNo_rel_strict_split_imv L R tau p.
Apply H1 to the current goal.
Let tau be given.
Assume H2.
Apply H2 to the current goal.
Assume Ht: taugamma.
Assume H2.
Apply H2 to the current goal.
Let p be given.
Assume H3: PNo_rel_strict_split_imv L R tau p.
Apply HNC2 to the current goal.
We use tau to witness the existential quantifier.
Apply andI to the current goal.
We will prove taualpha.
An exact proof term for the current goal is Ha1 gamma Hc tau Ht.
We use p to witness the existential quantifier.
We will prove PNo_rel_strict_split_imv L R tau p.
An exact proof term for the current goal is H3.
Apply ordinal_lim_or_succ alpha Ha to the current goal.
Assume H1: ∀beta ∈ alpha, ordsucc betaalpha.
Set pl to be the term λdelta ⇒ ∀p : setprop, PNo_rel_strict_imv L R (ordsucc delta) pp delta of type setprop.
We prove the intermediate claim Lpl1: ∀gamma, ordinal gammagammaalphaPNo_rel_strict_uniq_imv L R gamma pl.
Apply ordinal_ind to the current goal.
Let gamma be given.
Assume Hc: ordinal gamma.
Assume IH2: ∀delta ∈ gamma, deltaalphaPNo_rel_strict_uniq_imv L R delta pl.
Assume Hc1: gammaalpha.
Apply LIH gamma Hc1 to the current goal.
Let p be given.
Assume Hp.
Apply Hp to the current goal.
Assume Hp1: PNo_rel_strict_imv L R gamma p.
Apply Hp1 to the current goal.
Assume Hp1a Hp1b.
Assume Hp2: ∀q : setprop, PNo_rel_strict_imv L R gamma qPNoEq_ gamma p q.
We prove the intermediate claim Lplpe: PNoEq_ gamma pl p.
Let delta be given.
Assume Hd: deltagamma.
Apply ordinal_ordsucc_In_eq gamma delta Hc Hd to the current goal.
Assume Hsd: ordsucc deltagamma.
We prove the intermediate claim Lsda: ordsucc deltaalpha.
An exact proof term for the current goal is Ha1 gamma Hc1 (ordsucc delta) Hsd.
Apply IH2 (ordsucc delta) Hsd Lsda to the current goal.
Assume Hpl1: PNo_rel_strict_imv L R (ordsucc delta) pl.
Assume Hpl2: ∀q : setprop, PNo_rel_strict_imv L R (ordsucc delta) qPNoEq_ (ordsucc delta) pl q.
We will prove pl deltap delta.
Apply Hpl2 p to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc delta) p.
An exact proof term for the current goal is PNo_rel_strict_imv_antimon L R gamma Hc p (ordsucc delta) Hsd Hp1.
We will prove deltaordsucc delta.
Apply ordsuccI2 to the current goal.
Assume Hsd: gamma = ordsucc delta.
We will prove pl deltap delta.
Apply iffI to the current goal.
Assume H2: pl delta.
We will prove p delta.
Apply H2 p to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc delta) p.
rewrite the current goal using Hsd (from right to left).
An exact proof term for the current goal is Hp1.
Assume H2: p delta.
Let q be given.
rewrite the current goal using Hsd (from right to left).
Assume Hq: PNo_rel_strict_imv L R gamma q.
We will prove q delta.
An exact proof term for the current goal is iffEL (p delta) (q delta) (Hp2 q Hq delta Hd) H2.
We will prove PNo_rel_strict_uniq_imv L R gamma pl.
We will prove PNo_rel_strict_imv L R gamma pl∀q : setprop, PNo_rel_strict_imv L R gamma qPNoEq_ gamma pl q.
Apply andI to the current goal.
We will prove PNo_rel_strict_imv L R gamma pl.
We will prove PNo_rel_strict_upperbd L gamma plPNo_rel_strict_lowerbd R gamma pl.
Apply andI to the current goal.
We will prove PNo_rel_strict_upperbd L gamma pl.
Let beta be given.
Assume Hb: betagamma.
Let q be given.
Assume Hq: PNo_downc L beta q.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered gamma Hc beta Hb.
We will prove PNoLt beta q gamma pl.
Apply PNoLtEq_tra beta gamma Lb Hc q p pl to the current goal.
We will prove PNoLt beta q gamma p.
An exact proof term for the current goal is Hp1a beta Hb q Hq.
We will prove PNoEq_ gamma p pl.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lplpe.
We will prove PNo_rel_strict_lowerbd R gamma pl.
Let beta be given.
Assume Hb: betagamma.
Let q be given.
Assume Hq: PNo_upc R beta q.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered gamma Hc beta Hb.
We will prove PNoLt gamma pl beta q.
Apply PNoEqLt_tra gamma beta Hc Lb pl p q to the current goal.
We will prove PNoEq_ gamma pl p.
An exact proof term for the current goal is Lplpe.
We will prove PNoLt gamma p beta q.
An exact proof term for the current goal is Hp1b beta Hb q Hq.
We will prove ∀q : setprop, PNo_rel_strict_imv L R gamma qPNoEq_ gamma pl q.
Let q be given.
Assume Hq: PNo_rel_strict_imv L R gamma q.
We will prove PNoEq_ gamma pl q.
Apply PNoEq_tra_ gamma pl p q to the current goal.
We will prove PNoEq_ gamma pl p.
An exact proof term for the current goal is Lplpe.
We will prove PNoEq_ gamma p q.
An exact proof term for the current goal is Hp2 q Hq.
We prove the intermediate claim Lpl2: ∀gamma ∈ alpha, PNo_rel_strict_uniq_imv L R gamma pl.
Let gamma be given.
Assume Hc: gammaalpha.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered alpha Ha gamma Hc.
An exact proof term for the current goal is Lpl1 gamma Lc Hc.
Apply HNC1 to the current goal.
We use pl to witness the existential quantifier.
We will prove PNo_rel_strict_uniq_imv L R alpha pl.
We will prove PNo_rel_strict_imv L R alpha pl∀q : setprop, PNo_rel_strict_imv L R alpha qPNoEq_ alpha pl q.
Apply andI to the current goal.
We will prove PNo_rel_strict_imv L R alpha pl.
We will prove PNo_rel_strict_upperbd L alpha plPNo_rel_strict_lowerbd R alpha pl.
Apply andI to the current goal.
We will prove PNo_rel_strict_upperbd L alpha pl.
Let beta be given.
Assume Hb: betaalpha.
Let q be given.
Assume Hq: PNo_downc L beta q.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We prove the intermediate claim Lsb: ordinal (ordsucc beta).
An exact proof term for the current goal is ordinal_ordsucc beta Lb.
We will prove PNoLt beta q alpha pl.
Apply PNoLt_trichotomy_or beta alpha q pl Lb Ha to the current goal.
Assume H2.
Apply H2 to the current goal.
Assume H2: PNoLt beta q alpha pl.
An exact proof term for the current goal is H2.
Assume H2.
Apply H2 to the current goal.
Assume H2: beta = alpha.
We will prove False.
Apply In_irref alpha to the current goal.
rewrite the current goal using H2 (from right to left) at position 1.
An exact proof term for the current goal is Hb.
Assume H2: PNoLt alpha pl beta q.
Apply PNoLtE alpha beta pl q H2 to the current goal.
Assume H3: PNoLt_ (alphabeta) pl q.
Apply H3 to the current goal.
Let gamma be given.
Assume H4.
Apply H4 to the current goal.
Assume Hc: gammaalphabeta.
Apply binintersectE alpha beta gamma Hc to the current goal.
Assume Hc1 Hc2.
Assume H5.
Apply H5 to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: PNoEq_ gamma pl q.
Assume H6: ¬ pl gamma.
Assume H7: q gamma.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered beta Lb gamma Hc2.
We prove the intermediate claim Lsc: ordinal (ordsucc gamma).
An exact proof term for the current goal is ordinal_ordsucc gamma Lc.
We will prove False.
Apply H6 to the current goal.
We will prove pl gamma.
Let p be given.
Assume Hp: PNo_rel_strict_imv L R (ordsucc gamma) p.
We will prove p gamma.
Apply Hp to the current goal.
Assume Hp1 Hp2.
We prove the intermediate claim Lqp: PNoLt gamma q (ordsucc gamma) p.
Apply Hp1 gamma (ordsuccI2 gamma) q to the current goal.
We will prove PNo_downc L gamma q.
Apply PNoLe_downc L beta gamma q q Lb Lc to the current goal.
We will prove PNo_downc L beta q.
An exact proof term for the current goal is Hq.
We will prove PNoLe gamma q beta q.
Apply PNoLeI1 to the current goal.
We will prove PNoLt gamma q beta q.
Apply PNoLtI2 to the current goal.
We will prove gammabeta.
An exact proof term for the current goal is Hc2.
We will prove PNoEq_ gamma q q.
Apply PNoEq_ref_ to the current goal.
We will prove q gamma.
An exact proof term for the current goal is H7.
Apply PNoLtE gamma (ordsucc gamma) q p Lqp to the current goal.
Assume H6: PNoLt_ (gammaordsucc gamma) q p.
Apply H6 to the current goal.
Let delta be given.
Assume H7.
Apply H7 to the current goal.
Assume Hd: deltagammaordsucc gamma.
Apply binintersectE gamma (ordsucc gamma) delta Hd to the current goal.
Assume Hd1 Hd2.
Assume H7.
Apply H7 to the current goal.
Assume H7.
Apply H7 to the current goal.
Assume H7: PNoEq_ delta q p.
Assume H8: ¬ q delta.
Assume H9: p delta.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered gamma Lc delta Hd1.
We prove the intermediate claim Lda: deltaalpha.
An exact proof term for the current goal is Ha1 gamma Hc1 delta Hd1.
We prove the intermediate claim Lsda: ordsucc deltaalpha.
An exact proof term for the current goal is H1 delta Lda.
We prove the intermediate claim Lpld: pl delta.
Apply Lpl2 (ordsucc delta) Lsda to the current goal.
Assume _.
Assume Hpl3: ∀q : setprop, PNo_rel_strict_imv L R (ordsucc delta) qPNoEq_ (ordsucc delta) pl q.
We prove the intermediate claim Lpld1: PNoEq_ (ordsucc delta) pl p.
Apply Hpl3 p to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc delta) p.
Apply PNo_rel_strict_imv_antimon L R (ordsucc gamma) Lsc p to the current goal.
We will prove ordsucc deltaordsucc gamma.
Apply ordinal_ordsucc_In to the current goal.
An exact proof term for the current goal is Lc.
We will prove deltagamma.
An exact proof term for the current goal is Hd1.
An exact proof term for the current goal is Hp.
An exact proof term for the current goal is iffER (pl delta) (p delta) (Lpld1 delta (ordsuccI2 delta)) H9.
We prove the intermediate claim Lnpld: ¬ pl delta.
Assume H10: pl delta.
Apply H8 to the current goal.
An exact proof term for the current goal is iffEL (pl delta) (q delta) (H5 delta Hd1) H10.
We will prove False.
An exact proof term for the current goal is Lnpld Lpld.
Assume H6: gammaordsucc gamma.
Assume H7: PNoEq_ gamma q p.
Assume H8: p gamma.
An exact proof term for the current goal is H8.
Assume H6: ordsucc gammagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle gamma (ordsucc gamma) (ordsuccI2 gamma) H6.
Assume H3: alphabeta.
We will prove False.
An exact proof term for the current goal is In_no2cycle beta alpha Hb H3.
Assume H3: betaalpha.
Assume H4: PNoEq_ beta pl q.
Assume H5: ¬ pl beta.
We will prove False.
Apply H5 to the current goal.
We will prove pl beta.
Let p be given.
Assume Hp: PNo_rel_strict_imv L R (ordsucc beta) p.
We will prove p beta.
Apply Hp to the current goal.
Assume Hp1 Hp2.
We prove the intermediate claim Lqp: PNoLt beta q (ordsucc beta) p.
An exact proof term for the current goal is Hp1 beta (ordsuccI2 beta) q Hq.
Apply PNoLtE beta (ordsucc beta) q p Lqp to the current goal.
Assume H6: PNoLt_ (betaordsucc beta) q p.
Apply H6 to the current goal.
Let delta be given.
Assume H7.
Apply H7 to the current goal.
Assume Hd: deltabetaordsucc beta.
Apply binintersectE beta (ordsucc beta) delta Hd to the current goal.
Assume Hd1 Hd2.
Assume H7.
Apply H7 to the current goal.
Assume H7.
Apply H7 to the current goal.
Assume H7: PNoEq_ delta q p.
Assume H8: ¬ q delta.
Assume H9: p delta.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered beta Lb delta Hd1.
We prove the intermediate claim Lda: deltaalpha.
An exact proof term for the current goal is Ha1 beta Hb delta Hd1.
We prove the intermediate claim Lsda: ordsucc deltaalpha.
An exact proof term for the current goal is H1 delta Lda.
We prove the intermediate claim Lpld: pl delta.
Apply Lpl2 (ordsucc delta) Lsda to the current goal.
Assume _.
Assume Hpl3: ∀q : setprop, PNo_rel_strict_imv L R (ordsucc delta) qPNoEq_ (ordsucc delta) pl q.
We prove the intermediate claim Lpld1: PNoEq_ (ordsucc delta) pl p.
Apply Hpl3 p to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc delta) p.
Apply PNo_rel_strict_imv_antimon L R (ordsucc beta) Lsb p to the current goal.
We will prove ordsucc deltaordsucc beta.
Apply ordinal_ordsucc_In to the current goal.
An exact proof term for the current goal is Lb.
We will prove deltabeta.
An exact proof term for the current goal is Hd1.
An exact proof term for the current goal is Hp.
An exact proof term for the current goal is iffER (pl delta) (p delta) (Lpld1 delta (ordsuccI2 delta)) H9.
We prove the intermediate claim Lnpld: ¬ pl delta.
Assume H10: pl delta.
Apply H8 to the current goal.
An exact proof term for the current goal is iffEL (pl delta) (q delta) (H4 delta Hd1) H10.
We will prove False.
An exact proof term for the current goal is Lnpld Lpld.
Assume H6: betaordsucc beta.
Assume H7: PNoEq_ beta q p.
Assume H8: p beta.
An exact proof term for the current goal is H8.
Assume H6: ordsucc betabeta.
We will prove False.
An exact proof term for the current goal is In_no2cycle beta (ordsucc beta) (ordsuccI2 beta) H6.
We will prove PNo_rel_strict_lowerbd R alpha pl.
Let beta be given.
Assume Hb: betaalpha.
Let q be given.
Assume Hq: PNo_upc R beta q.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We prove the intermediate claim Lsb: ordinal (ordsucc beta).
An exact proof term for the current goal is ordinal_ordsucc beta Lb.
We prove the intermediate claim Lsba: ordsucc betaalpha.
An exact proof term for the current goal is H1 beta Hb.
We will prove PNoLt alpha pl beta q.
Apply PNoLt_trichotomy_or alpha beta pl q Ha Lb to the current goal.
Assume H2.
Apply H2 to the current goal.
Assume H2: PNoLt alpha pl beta q.
An exact proof term for the current goal is H2.
Assume H2.
Apply H2 to the current goal.
Assume H2: alpha = beta.
We will prove False.
Apply In_irref alpha to the current goal.
rewrite the current goal using H2 (from left to right) at position 1.
An exact proof term for the current goal is Hb.
Assume H2: PNoLt beta q alpha pl.
Apply PNoLtE beta alpha q pl H2 to the current goal.
Assume H3: PNoLt_ (betaalpha) q pl.
Apply H3 to the current goal.
Let gamma be given.
Assume H4.
Apply H4 to the current goal.
Assume Hc: gammabetaalpha.
Apply binintersectE beta alpha gamma Hc to the current goal.
Assume Hc2 Hc1.
Assume H5.
Apply H5 to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: PNoEq_ gamma q pl.
Assume H6: ¬ q gamma.
Assume H7: pl gamma.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered beta Lb gamma Hc2.
We prove the intermediate claim Lsc: ordinal (ordsucc gamma).
An exact proof term for the current goal is ordinal_ordsucc gamma Lc.
We prove the intermediate claim Lsca: ordsucc gammaalpha.
An exact proof term for the current goal is H1 gamma Hc1.
We will prove False.
Apply Lpl2 (ordsucc gamma) Lsca to the current goal.
Assume Hpl2: PNo_rel_strict_imv L R (ordsucc gamma) pl.
Assume _.
Apply Hpl2 to the current goal.
Assume _.
Assume Hpl2b: PNo_rel_strict_lowerbd R (ordsucc gamma) pl.
We prove the intermediate claim Lplq: PNoLt (ordsucc gamma) pl gamma q.
Apply Hpl2b gamma (ordsuccI2 gamma) q to the current goal.
We will prove PNo_upc R gamma q.
Apply PNoLe_upc R beta gamma q q Lb Lc to the current goal.
We will prove PNo_upc R beta q.
An exact proof term for the current goal is Hq.
We will prove PNoLe beta q gamma q.
Apply PNoLeI1 beta gamma q q to the current goal.
We will prove PNoLt beta q gamma q.
Apply PNoLtI3 to the current goal.
We will prove gammabeta.
An exact proof term for the current goal is Hc2.
We will prove PNoEq_ gamma q q.
Apply PNoEq_ref_ to the current goal.
We will prove ¬ q gamma.
An exact proof term for the current goal is H6.
We prove the intermediate claim Lqpl: PNoLt gamma q (ordsucc gamma) pl.
Apply PNoLtI2 to the current goal.
We will prove gammaordsucc gamma.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ gamma q pl.
An exact proof term for the current goal is H5.
We will prove pl gamma.
An exact proof term for the current goal is H7.
We will prove False.
Apply PNoLt_irref gamma q to the current goal.
An exact proof term for the current goal is PNoLt_tra gamma (ordsucc gamma) gamma Lc Lsc Lc q pl q Lqpl Lplq.
Assume H3: betaalpha.
Assume H4: PNoEq_ beta q pl.
Assume H5: pl beta.
Apply Lpl2 (ordsucc beta) Lsba to the current goal.
Assume Hpl2: PNo_rel_strict_imv L R (ordsucc beta) pl.
Assume _.
Apply Hpl2 to the current goal.
Assume _.
Assume Hpl2b: PNo_rel_strict_lowerbd R (ordsucc beta) pl.
We prove the intermediate claim Lplq: PNoLt (ordsucc beta) pl beta q.
Apply Hpl2b beta (ordsuccI2 beta) q to the current goal.
We will prove PNo_upc R beta q.
An exact proof term for the current goal is Hq.
We prove the intermediate claim Lqpl: PNoLt beta q (ordsucc beta) pl.
Apply PNoLtI2 to the current goal.
We will prove betaordsucc beta.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ beta q pl.
An exact proof term for the current goal is H4.
We will prove pl beta.
An exact proof term for the current goal is H5.
We will prove False.
Apply PNoLt_irref beta q to the current goal.
An exact proof term for the current goal is PNoLt_tra beta (ordsucc beta) beta Lb Lsb Lb q pl q Lqpl Lplq.
Assume H3: alphabeta.
We will prove False.
An exact proof term for the current goal is In_no2cycle beta alpha Hb H3.
We will prove ∀q : setprop, PNo_rel_strict_imv L R alpha qPNoEq_ alpha pl q.
Let q be given.
Assume Hq: PNo_rel_strict_imv L R alpha q.
Let gamma be given.
Assume Hc: gammaalpha.
We will prove pl gammaq gamma.
We prove the intermediate claim Lsca: ordsucc gammaalpha.
An exact proof term for the current goal is H1 gamma Hc.
Apply Lpl2 (ordsucc gamma) Lsca to the current goal.
Assume _.
Assume Hpl3: ∀q : setprop, PNo_rel_strict_imv L R (ordsucc gamma) qPNoEq_ (ordsucc gamma) pl q.
Apply Hpl3 to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc gamma) q.
An exact proof term for the current goal is PNo_rel_strict_imv_antimon L R alpha Ha q (ordsucc gamma) Lsca Hq.
We will prove gammaordsucc gamma.
Apply ordsuccI2 to the current goal.
Assume H1: ∃beta ∈ alpha, alpha = ordsucc beta.
Apply H1 to the current goal.
Let beta be given.
Assume H1.
Apply H1 to the current goal.
Assume Hb: betaalpha.
Assume Hab: alpha = ordsucc beta.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered alpha Ha beta Hb.
We prove the intermediate claim Lsb: ordinal (ordsucc beta).
rewrite the current goal using Hab (from right to left).
An exact proof term for the current goal is Ha.
We prove the intermediate claim Lbsb1: betaordsucc beta = beta.
Apply binintersect_Subq_eq_1 to the current goal.
Apply ordsuccI1 to the current goal.
We prove the intermediate claim Lbsb2: ordsucc betabeta = beta.
rewrite the current goal using binintersect_com (from left to right).
An exact proof term for the current goal is Lbsb1.
Apply LIH beta Hb to the current goal.
Let p be given.
Assume Hp: PNo_rel_strict_uniq_imv L R beta p.
Apply Hp to the current goal.
Assume Hp0: PNo_rel_strict_imv L R beta p.
Apply Hp0 to the current goal.
Assume Hp1: ∀gamma ∈ beta, ∀q : setprop, PNo_downc L gamma qPNoLt gamma q beta p.
Assume Hp2: ∀gamma ∈ beta, ∀q : setprop, PNo_upc R gamma qPNoLt beta p gamma q.
Assume Hp3: ∀q : setprop, PNo_rel_strict_imv L R beta qPNoEq_ beta p q.
Set p0 to be the term λdelta ⇒ p deltadeltabeta of type setprop.
Set p1 to be the term λdelta ⇒ p deltadelta = beta of type setprop.
We prove the intermediate claim Lp0e: PNoEq_ beta p0 p.
Let gamma be given.
Assume Hc: gammabeta.
We will prove p0 gammap gamma.
Apply iffI to the current goal.
Assume H2: p gammagammabeta.
We will prove p gamma.
Apply H2 to the current goal.
Assume H2 _.
An exact proof term for the current goal is H2.
Assume H2: p gamma.
We will prove p gammagammabeta.
Apply andI to the current goal.
An exact proof term for the current goal is H2.
Assume H3: gamma = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H3 (from right to left) at position 1.
An exact proof term for the current goal is Hc.
We prove the intermediate claim Lp0b: ¬ p0 beta.
Assume H2: p betabetabeta.
Apply H2 to the current goal.
Assume _ H2.
Apply H2 to the current goal.
Use reflexivity.
We prove the intermediate claim Lp0p: PNoLt (ordsucc beta) p0 beta p.
Apply PNoLtI3 to the current goal.
We will prove betaordsucc beta.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ beta p0 p.
An exact proof term for the current goal is Lp0e.
We will prove ¬ p0 beta.
An exact proof term for the current goal is Lp0b.
We prove the intermediate claim Lp1e: PNoEq_ beta p p1.
Let gamma be given.
Assume Hc: gammabeta.
We will prove p gammap1 gamma.
Apply iffI to the current goal.
Assume H2: p gamma.
We will prove p gammagamma = beta.
Apply orIL to the current goal.
An exact proof term for the current goal is H2.
Assume H2: p gammagamma = beta.
We will prove p gamma.
Apply H2 to the current goal.
Assume H3: p gamma.
An exact proof term for the current goal is H3.
Assume H3: gamma = beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H3 (from right to left) at position 1.
An exact proof term for the current goal is Hc.
We prove the intermediate claim Lp1b: p1 beta.
We will prove p betabeta = beta.
Apply orIR to the current goal.
Use reflexivity.
We prove the intermediate claim Lpp1: PNoLt beta p (ordsucc beta) p1.
Apply PNoLtI2 to the current goal.
We will prove betaordsucc beta.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ beta p p1.
An exact proof term for the current goal is Lp1e.
We will prove p1 beta.
An exact proof term for the current goal is Lp1b.
We prove the intermediate claim Lnotboth: ¬ (PNo_rel_strict_imv L R alpha p0PNo_rel_strict_imv L R alpha p1).
rewrite the current goal using Hab (from left to right).
Assume H2.
Apply HNC2 to the current goal.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hb.
We use p to witness the existential quantifier.
We will prove PNo_rel_strict_split_imv L R beta p.
An exact proof term for the current goal is H2.
We prove the intermediate claim Lcases: (∀q : setprop, PNo_downc L beta q¬ PNoEq_ beta p q)(∀q : setprop, PNo_upc R beta q¬ PNoEq_ beta p q).
rewrite the current goal using eq_or_nand (from left to right).
Assume H2.
Apply H2 to the current goal.
Assume H2: ¬ (∀q : setprop, PNo_downc L beta q¬ PNoEq_ beta p q).
Assume H3: ¬ (∀q : setprop, PNo_upc R beta q¬ PNoEq_ beta p q).
Apply H2 to the current goal.
Let q0 be given.
Assume H4: PNo_downc L beta q0.
Assume H5: PNoEq_ beta p q0.
Apply H3 to the current goal.
Let q1 be given.
Assume H6: PNo_upc R beta q1.
Assume H7: PNoEq_ beta p q1.
We prove the intermediate claim L2: PNoLt beta q0 beta q1.
An exact proof term for the current goal is LLR beta Lb q0 H4 beta Lb q1 H6.
Apply PNoLt_irref beta q0 to the current goal.
Apply PNoLtLe_tra beta beta beta Lb Lb Lb q0 q1 q0 L2 to the current goal.
We will prove PNoLe beta q1 beta q0.
We will prove PNoLt beta q1 beta q0beta = betaPNoEq_ beta q1 q0.
Apply orIR to the current goal.
Apply andI to the current goal.
Use reflexivity.
We will prove PNoEq_ beta q1 q0.
Apply PNoEq_tra_ beta q1 p q0 to the current goal.
We will prove PNoEq_ beta q1 p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is H7.
We will prove PNoEq_ beta p q0.
An exact proof term for the current goal is H5.
We will prove False.
Apply Lcases to the current goal.
Assume H2: ∀q : setprop, PNo_downc L beta q¬ PNoEq_ beta p q.
We prove the intermediate claim Lp0imv: PNo_rel_strict_imv L R (ordsucc beta) p0.
Apply andI to the current goal.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Let q be given.
Assume H3: PNo_downc L gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc beta) Lsb gamma Hc.
We will prove PNoLt gamma q (ordsucc beta) p0.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H4: gammabeta.
We prove the intermediate claim L1: PNoLt gamma q beta p.
An exact proof term for the current goal is Hp1 gamma H4 q H3.
Apply PNoLtE gamma beta q p L1 to the current goal.
Assume H5: PNoLt_ (gammabeta) q p.
Apply H5 to the current goal.
Let delta be given.
Assume H6.
Apply H6 to the current goal.
Assume Hd: deltagammabeta.
Assume H6.
Apply H6 to the current goal.
Assume H6.
Apply H6 to the current goal.
Assume H6: PNoEq_ delta q p.
Assume H7: ¬ q delta.
Assume H8: p delta.
Apply binintersectE gamma beta delta Hd to the current goal.
Assume Hd1: deltagamma.
Assume Hd2: deltabeta.
We will prove PNoLt gamma q (ordsucc beta) p0.
Apply PNoLtI1 to the current goal.
We will prove PNoLt_ (gammaordsucc beta) q p0.
We will prove ∃beta ∈ gammaordsucc beta, PNoEq_ beta q p0¬ q betap0 beta.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
We will prove deltagammaordsucc beta.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Hd1.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is Hd2.
Apply and3I to the current goal.
We will prove PNoEq_ delta q p0.
Apply PNoEq_tra_ delta q p p0 to the current goal.
An exact proof term for the current goal is H6.
Apply PNoEq_sym_ to the current goal.
Apply PNoEq_antimon_ p0 p beta Lb delta Hd2 to the current goal.
An exact proof term for the current goal is Lp0e.
We will prove ¬ q delta.
An exact proof term for the current goal is H7.
We will prove p0 delta.
We will prove p deltadeltabeta.
Apply andI to the current goal.
An exact proof term for the current goal is H8.
Assume H9: delta = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H9 (from right to left) at position 1.
An exact proof term for the current goal is Hd2.
Assume H5: gammabeta.
Assume H6: PNoEq_ gamma q p.
Assume H7: p gamma.
We will prove PNoLt gamma q (ordsucc beta) p0.
Apply PNoLtI2 to the current goal.
We will prove gammaordsucc beta.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is H5.
We will prove PNoEq_ gamma q p0.
Apply PNoEq_tra_ gamma q p p0 to the current goal.
We will prove PNoEq_ gamma q p.
An exact proof term for the current goal is H6.
We will prove PNoEq_ gamma p p0.
Apply PNoEq_sym_ to the current goal.
Apply PNoEq_antimon_ p0 p beta Lb gamma H5 to the current goal.
An exact proof term for the current goal is Lp0e.
We will prove p0 gamma.
We will prove p gammagammabeta.
Apply andI to the current goal.
An exact proof term for the current goal is H7.
Assume H8: gamma = beta.
Apply In_irref gamma to the current goal.
rewrite the current goal using H8 (from left to right) at position 2.
An exact proof term for the current goal is H5.
Assume H5: betagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle gamma beta H4 H5.
Assume H4: gamma = beta.
rewrite the current goal using H4 (from left to right).
We will prove PNoLt beta q (ordsucc beta) p0.
Apply PNoLt_trichotomy_or beta (ordsucc beta) q p0 Lb Lsb to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5.
An exact proof term for the current goal is H5.
Assume H5.
Apply H5 to the current goal.
Assume H5: beta = ordsucc beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from left to right) at position 2.
Apply ordsuccI2 to the current goal.
Assume H5: PNoLt (ordsucc beta) p0 beta q.
Apply PNoLtE (ordsucc beta) beta p0 q H5 to the current goal.
rewrite the current goal using Lbsb2 (from left to right).
Assume H6: PNoLt_ beta p0 q.
Apply H6 to the current goal.
Let delta be given.
Assume H7.
Apply H7 to the current goal.
Assume Hd: deltabeta.
Assume H7.
Apply H7 to the current goal.
Assume H7.
Apply H7 to the current goal.
Assume H7: PNoEq_ delta p0 q.
Assume H8: ¬ p0 delta.
Assume H9: q delta.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered beta Lb delta Hd.
We prove the intermediate claim L2: PNoLt beta p delta q.
Apply PNoLtI3 to the current goal.
We will prove deltabeta.
An exact proof term for the current goal is Hd.
We will prove PNoEq_ delta p q.
Apply PNoEq_tra_ delta p p0 q to the current goal.
We will prove PNoEq_ delta p p0.
Apply PNoEq_sym_ to the current goal.
Apply PNoEq_antimon_ p0 p beta Lb delta Hd to the current goal.
An exact proof term for the current goal is Lp0e.
We will prove PNoEq_ delta p0 q.
An exact proof term for the current goal is H7.
We will prove ¬ p delta.
Assume H10: p delta.
Apply H8 to the current goal.
We will prove p deltadeltabeta.
Apply andI to the current goal.
An exact proof term for the current goal is H10.
Assume H11: delta = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H11 (from right to left) at position 1.
An exact proof term for the current goal is Hd.
We prove the intermediate claim L3: PNoLt delta q beta p.
Apply Hp1 delta Hd q to the current goal.
We will prove PNo_downc L delta q.
Apply PNoLe_downc L gamma delta q q Lc Ld H3 to the current goal.
We will prove PNoLe delta q gamma q.
Apply PNoLeI1 to the current goal.
We will prove PNoLt delta q gamma q.
Apply PNoLtI2 to the current goal.
We will prove deltagamma.
rewrite the current goal using H4 (from left to right).
An exact proof term for the current goal is Hd.
We will prove PNoEq_ delta q q.
Apply PNoEq_ref_ to the current goal.
We will prove q delta.
An exact proof term for the current goal is H9.
Apply PNoLt_irref delta q to the current goal.
We will prove PNoLt delta q delta q.
An exact proof term for the current goal is PNoLt_tra delta beta delta Ld Lb Ld q p q L3 L2.
Assume H6: ordsucc betabeta.
We will prove False.
Apply In_no2cycle (ordsucc beta) beta H6 to the current goal.
Apply ordsuccI2 to the current goal.
Assume H6: betaordsucc beta.
Assume H7: PNoEq_ beta p0 q.
We will prove False.
Apply H2 q to the current goal.
We will prove PNo_downc L beta q.
rewrite the current goal using H4 (from right to left).
An exact proof term for the current goal is H3.
We will prove PNoEq_ beta p q.
Apply PNoEq_tra_ beta p p0 q to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lp0e.
An exact proof term for the current goal is H7.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Let q be given.
Assume H3: PNo_upc R gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc beta) Lsb gamma Hc.
We will prove PNoLt (ordsucc beta) p0 gamma q.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H4: gammabeta.
Apply PNoLt_tra (ordsucc beta) beta gamma Lsb Lb Lc p0 p q Lp0p to the current goal.
We will prove PNoLt beta p gamma q.
Apply Hp2 gamma H4 q to the current goal.
We will prove PNo_upc R gamma q.
An exact proof term for the current goal is H3.
Assume H4: gamma = beta.
rewrite the current goal using H4 (from left to right).
We will prove PNoLt (ordsucc beta) p0 beta q.
Apply PNoLt_trichotomy_or beta (ordsucc beta) q p0 Lb Lsb to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: PNoLt beta q (ordsucc beta) p0.
Apply PNoLtE beta (ordsucc beta) q p0 H5 to the current goal.
rewrite the current goal using Lbsb1 (from left to right).
Assume H6: PNoLt_ beta q p0.
Apply H6 to the current goal.
Let delta be given.
Assume H7.
Apply H7 to the current goal.
Assume H8: deltabeta.
Assume H9.
Apply H9 to the current goal.
Assume H9.
Apply H9 to the current goal.
Assume H9: PNoEq_ delta q p0.
Assume H10: ¬ q delta.
Assume H11: p0 delta.
We will prove False.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered beta Lb delta H8.
We prove the intermediate claim L4: PNoLt beta p delta q.
Apply Hp2 delta H8 q to the current goal.
We will prove PNo_upc R delta q.
Apply PNoLe_upc R gamma delta q q Lc Ld H3 to the current goal.
We will prove PNoLe gamma q delta q.
Apply PNoLeI1 to the current goal.
We will prove PNoLt gamma q delta q.
Apply PNoLtI3 to the current goal.
We will prove deltagamma.
rewrite the current goal using H4 (from left to right).
An exact proof term for the current goal is H8.
We will prove PNoEq_ delta q q.
Apply PNoEq_ref_ to the current goal.
We will prove ¬ q delta.
An exact proof term for the current goal is H10.
We prove the intermediate claim L5: PNoLt delta q beta p.
Apply PNoLtI2 to the current goal.
We will prove deltabeta.
An exact proof term for the current goal is H8.
We will prove PNoEq_ delta q p.
Apply PNoEq_tra_ delta q p0 p to the current goal.
An exact proof term for the current goal is H9.
We will prove PNoEq_ delta p0 p.
Apply PNoEq_antimon_ p0 p beta Lb delta H8 to the current goal.
An exact proof term for the current goal is Lp0e.
We will prove p delta.
Apply H11 to the current goal.
Assume H12 _.
An exact proof term for the current goal is H12.
Apply PNoLt_irref beta p to the current goal.
An exact proof term for the current goal is PNoLt_tra beta delta beta Lb Ld Lb p q p L4 L5.
Assume H6: betaordsucc beta.
Assume H7: PNoEq_ beta q p0.
Assume H8: p betabetabeta.
We will prove False.
Apply H8 to the current goal.
Assume _ H9.
Apply H9 to the current goal.
Use reflexivity.
Assume H6: ordsucc betabeta.
We will prove False.
Apply In_no2cycle (ordsucc beta) beta H6 to the current goal.
Apply ordsuccI2 to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: beta = ordsucc beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from left to right) at position 2.
Apply ordsuccI2 to the current goal.
Assume H5: PNoLt (ordsucc beta) p0 beta q.
An exact proof term for the current goal is H5.
Apply HNC1 to the current goal.
We use p0 to witness the existential quantifier.
rewrite the current goal using Hab (from left to right).
We will prove PNo_rel_strict_uniq_imv L R (ordsucc beta) p0.
We will prove PNo_rel_strict_imv L R (ordsucc beta) p0∀q : setprop, PNo_rel_strict_imv L R (ordsucc beta) qPNoEq_ (ordsucc beta) p0 q.
Apply andI to the current goal.
An exact proof term for the current goal is Lp0imv.
Let q be given.
Assume Hq: PNo_rel_strict_imv L R (ordsucc beta) q.
We will prove PNoEq_ (ordsucc beta) p0 q.
We prove the intermediate claim Lqb: PNo_rel_strict_imv L R beta q.
An exact proof term for the current goal is PNo_rel_strict_imv_antimon L R (ordsucc beta) Lsb q beta (ordsuccI2 beta) Hq.
We prove the intermediate claim Lpqe: PNoEq_ beta p q.
An exact proof term for the current goal is Hp3 q Lqb.
Apply xm (q beta) to the current goal.
Assume Hq1: q beta.
We will prove False.
Apply Lnotboth to the current goal.
rewrite the current goal using Hab (from left to right).
Apply andI to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc beta) p0.
An exact proof term for the current goal is Lp0imv.
We will prove PNo_rel_strict_imv L R (ordsucc beta) p1.
Apply PNoEq_rel_strict_imv L R (ordsucc beta) Lsb q p1 to the current goal.
We will prove PNoEq_ (ordsucc beta) q p1.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H3: gammabeta.
We prove the intermediate claim Lpqce: p gammaq gamma.
An exact proof term for the current goal is Lpqe gamma H3.
Apply Lpqce to the current goal.
Assume Hpqc Hqpc.
We will prove q gammap1 gamma.
Apply iffI to the current goal.
Assume H4: q gamma.
We will prove p gammagamma = beta.
Apply orIL to the current goal.
An exact proof term for the current goal is Hqpc H4.
Assume H4: p gammagamma = beta.
Apply H4 to the current goal.
An exact proof term for the current goal is Hpqc.
Assume H5: gamma = beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from right to left) at position 1.
An exact proof term for the current goal is H3.
Assume H3: gamma = beta.
We will prove q gammap1 gamma.
Apply iffI to the current goal.
Assume _.
We will prove p gammagamma = beta.
Apply orIR to the current goal.
An exact proof term for the current goal is H3.
Assume _.
We will prove q gamma.
rewrite the current goal using H3 (from left to right).
An exact proof term for the current goal is Hq1.
We will prove PNo_rel_strict_imv L R (ordsucc beta) q.
An exact proof term for the current goal is Hq.
Assume Hq0: ¬ q beta.
We will prove PNoEq_ (ordsucc beta) p0 q.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H3: gammabeta.
We prove the intermediate claim Lpqce: p gammaq gamma.
An exact proof term for the current goal is Lpqe gamma H3.
Apply Lpqce to the current goal.
Assume Hpqc Hqpc.
We will prove p0 gammaq gamma.
Apply iffI to the current goal.
Assume H4: p gammagammabeta.
Apply H4 to the current goal.
Assume H5: p gamma.
Assume _.
An exact proof term for the current goal is Hpqc H5.
Assume H4: q gamma.
We will prove p gammagammabeta.
Apply andI to the current goal.
We will prove p gamma.
An exact proof term for the current goal is Hqpc H4.
We will prove gammabeta.
Assume H5: gamma = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from right to left) at position 1.
An exact proof term for the current goal is H3.
Assume H3: gamma = beta.
We will prove p0 gammaq gamma.
Apply iffI to the current goal.
Assume H4: p gammagammabeta.
Apply H4 to the current goal.
Assume _ H5.
We will prove False.
An exact proof term for the current goal is H5 H3.
Assume H4: q gamma.
We will prove False.
Apply Hq0 to the current goal.
We will prove q beta.
rewrite the current goal using H3 (from right to left).
An exact proof term for the current goal is H4.
Assume H2: ∀q : setprop, PNo_upc R beta q¬ PNoEq_ beta p q.
We prove the intermediate claim Lp1imv: PNo_rel_strict_imv L R (ordsucc beta) p1.
Apply andI to the current goal.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Let q be given.
Assume H3: PNo_downc L gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc beta) Lsb gamma Hc.
We will prove PNoLt gamma q (ordsucc beta) p1.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H4: gammabeta.
Apply PNoLt_tra gamma beta (ordsucc beta) Lc Lb Lsb q p p1 to the current goal.
We will prove PNoLt gamma q beta p.
Apply Hp1 gamma H4 q to the current goal.
We will prove PNo_downc L gamma q.
An exact proof term for the current goal is H3.
An exact proof term for the current goal is Lpp1.
Assume H4: gamma = beta.
rewrite the current goal using H4 (from left to right).
We will prove PNoLt beta q (ordsucc beta) p1.
Apply PNoLt_trichotomy_or beta (ordsucc beta) q p1 Lb Lsb to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: PNoLt beta q (ordsucc beta) p1.
An exact proof term for the current goal is H5.
Assume H5.
Apply H5 to the current goal.
Assume H5: beta = ordsucc beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from left to right) at position 2.
Apply ordsuccI2 to the current goal.
Assume H5: PNoLt (ordsucc beta) p1 beta q.
Apply PNoLtE (ordsucc beta) beta p1 q H5 to the current goal.
rewrite the current goal using Lbsb2 (from left to right).
Assume H6: PNoLt_ beta p1 q.
Apply H6 to the current goal.
Let delta be given.
Assume H7.
Apply H7 to the current goal.
Assume H8: deltabeta.
Assume H9.
Apply H9 to the current goal.
Assume H9.
Apply H9 to the current goal.
Assume H9: PNoEq_ delta p1 q.
Assume H10: ¬ p1 delta.
Assume H11: q delta.
We will prove False.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered beta Lb delta H8.
We prove the intermediate claim L4: PNoLt delta q beta p.
Apply Hp1 delta H8 q to the current goal.
We will prove PNo_downc L delta q.
Apply PNoLe_downc L gamma delta q q Lc Ld H3 to the current goal.
We will prove PNoLe delta q gamma q.
Apply PNoLeI1 to the current goal.
We will prove PNoLt delta q gamma q.
Apply PNoLtI2 to the current goal.
We will prove deltagamma.
rewrite the current goal using H4 (from left to right).
An exact proof term for the current goal is H8.
We will prove PNoEq_ delta q q.
Apply PNoEq_ref_ to the current goal.
We will prove q delta.
An exact proof term for the current goal is H11.
We prove the intermediate claim L5: PNoLt beta p delta q.
Apply PNoLtI3 to the current goal.
We will prove deltabeta.
An exact proof term for the current goal is H8.
We will prove PNoEq_ delta p q.
Apply PNoEq_tra_ delta p p1 q to the current goal.
We will prove PNoEq_ delta p p1.
Apply PNoEq_antimon_ p p1 beta Lb delta H8 to the current goal.
An exact proof term for the current goal is Lp1e.
An exact proof term for the current goal is H9.
We will prove ¬ p delta.
Assume H12: p delta.
Apply H10 to the current goal.
We will prove p deltadelta = beta.
Apply orIL to the current goal.
An exact proof term for the current goal is H12.
Apply PNoLt_irref beta p to the current goal.
An exact proof term for the current goal is PNoLt_tra beta delta beta Lb Ld Lb p q p L5 L4.
Assume H6: ordsucc betabeta.
We will prove False.
Apply In_no2cycle (ordsucc beta) beta H6 to the current goal.
Apply ordsuccI2 to the current goal.
Assume H6: betaordsucc beta.
Assume H7: PNoEq_ beta p1 q.
Assume H8: ¬ p1 beta.
We will prove False.
Apply H8 to the current goal.
We will prove p betabeta = beta.
Apply orIR to the current goal.
Use reflexivity.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Let q be given.
Assume H3: PNo_upc R gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc beta) Lsb gamma Hc.
We will prove PNoLt (ordsucc beta) p1 gamma q.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H4: gammabeta.
We prove the intermediate claim L1: PNoLt beta p gamma q.
An exact proof term for the current goal is Hp2 gamma H4 q H3.
Apply PNoLtE beta gamma p q L1 to the current goal.
Assume H5: PNoLt_ (betagamma) p q.
Apply H5 to the current goal.
Let delta be given.
Assume H6.
Apply H6 to the current goal.
Assume Hd: deltabetagamma.
Assume H6.
Apply H6 to the current goal.
Assume H6.
Apply H6 to the current goal.
Assume H6: PNoEq_ delta p q.
Assume H7: ¬ p delta.
Assume H8: q delta.
Apply binintersectE beta gamma delta Hd to the current goal.
Assume Hd2: deltabeta.
Assume Hd1: deltagamma.
We will prove PNoLt (ordsucc beta) p1 gamma q.
Apply PNoLtI1 to the current goal.
We will prove PNoLt_ (ordsucc betagamma) p1 q.
We will prove ∃beta ∈ ordsucc betagamma, PNoEq_ beta p1 q¬ p1 betaq beta.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
We will prove deltaordsucc betagamma.
Apply binintersectI to the current goal.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is Hd2.
An exact proof term for the current goal is Hd1.
Apply and3I to the current goal.
We will prove PNoEq_ delta p1 q.
Apply PNoEq_tra_ delta p1 p q to the current goal.
Apply PNoEq_antimon_ p1 p beta Lb delta Hd2 to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lp1e.
An exact proof term for the current goal is H6.
We will prove ¬ p1 delta.
Assume H9: p deltadelta = beta.
We will prove False.
Apply H9 to the current goal.
An exact proof term for the current goal is H7.
Assume H10: delta = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H10 (from right to left) at position 1.
An exact proof term for the current goal is Hd2.
We will prove q delta.
An exact proof term for the current goal is H8.
Assume H5: betagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle gamma beta H4 H5.
Assume H5: gammabeta.
Assume H6: PNoEq_ gamma p q.
Assume H7: ¬ p gamma.
We will prove PNoLt (ordsucc beta) p1 gamma q.
Apply PNoLtI3 to the current goal.
We will prove gammaordsucc beta.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is H5.
We will prove PNoEq_ gamma p1 q.
Apply PNoEq_tra_ gamma p1 p q to the current goal.
We will prove PNoEq_ gamma p1 p.
Apply PNoEq_antimon_ p1 p beta Lb gamma H5 to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lp1e.
We will prove PNoEq_ gamma p q.
An exact proof term for the current goal is H6.
We will prove ¬ p1 gamma.
Assume H8: p gammagamma = beta.
Apply H8 to the current goal.
An exact proof term for the current goal is H7.
Assume H9: gamma = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H9 (from right to left) at position 1.
An exact proof term for the current goal is H5.
Assume H4: gamma = beta.
rewrite the current goal using H4 (from left to right).
We will prove PNoLt (ordsucc beta) p1 beta q.
Apply PNoLt_trichotomy_or beta (ordsucc beta) q p1 Lb Lsb to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: PNoLt beta q (ordsucc beta) p1.
Apply PNoLtE beta (ordsucc beta) q p1 H5 to the current goal.
rewrite the current goal using Lbsb1 (from left to right).
Assume H6: PNoLt_ beta q p1.
Apply H6 to the current goal.
Let delta be given.
Assume H7.
Apply H7 to the current goal.
Assume Hd: deltabeta.
Assume H7.
Apply H7 to the current goal.
Assume H7.
Apply H7 to the current goal.
Assume H7: PNoEq_ delta q p1.
Assume H8: ¬ q delta.
Assume H9: p1 delta.
We prove the intermediate claim Ld: ordinal delta.
An exact proof term for the current goal is ordinal_Hered beta Lb delta Hd.
We prove the intermediate claim L2: PNoLt delta q beta p.
Apply PNoLtI2 to the current goal.
We will prove deltabeta.
An exact proof term for the current goal is Hd.
We will prove PNoEq_ delta q p.
Apply PNoEq_tra_ delta q p1 p to the current goal.
We will prove PNoEq_ delta q p1.
An exact proof term for the current goal is H7.
We will prove PNoEq_ delta p1 p.
Apply PNoEq_antimon_ p1 p beta Lb delta Hd to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lp1e.
We will prove p delta.
Apply H9 to the current goal.
Assume H10: p delta.
An exact proof term for the current goal is H10.
Assume H10: delta = beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H10 (from right to left) at position 1.
An exact proof term for the current goal is Hd.
We prove the intermediate claim L3: PNoLt beta p delta q.
Apply Hp2 delta Hd q to the current goal.
We will prove PNo_upc R delta q.
Apply PNoLe_upc R gamma delta q q Lc Ld H3 to the current goal.
We will prove PNoLe gamma q delta q.
Apply PNoLeI1 to the current goal.
We will prove PNoLt gamma q delta q.
Apply PNoLtI3 to the current goal.
We will prove deltagamma.
rewrite the current goal using H4 (from left to right).
An exact proof term for the current goal is Hd.
We will prove PNoEq_ delta q q.
Apply PNoEq_ref_ to the current goal.
We will prove ¬ q delta.
An exact proof term for the current goal is H8.
Apply PNoLt_irref delta q to the current goal.
We will prove PNoLt delta q delta q.
An exact proof term for the current goal is PNoLt_tra delta beta delta Ld Lb Ld q p q L2 L3.
Assume H6: betaordsucc beta.
Assume H7: PNoEq_ beta q p1.
We will prove False.
Apply H2 q to the current goal.
We will prove PNo_upc R beta q.
rewrite the current goal using H4 (from right to left).
An exact proof term for the current goal is H3.
We will prove PNoEq_ beta p q.
Apply PNoEq_tra_ beta p p1 q to the current goal.
An exact proof term for the current goal is Lp1e.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is H7.
Assume H6: ordsucc betabeta.
We will prove False.
Apply In_no2cycle (ordsucc beta) beta H6 to the current goal.
Apply ordsuccI2 to the current goal.
Assume H5.
Apply H5 to the current goal.
Assume H5: beta = ordsucc beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from left to right) at position 2.
Apply ordsuccI2 to the current goal.
Assume H5.
An exact proof term for the current goal is H5.
Apply HNC1 to the current goal.
We use p1 to witness the existential quantifier.
rewrite the current goal using Hab (from left to right).
We will prove PNo_rel_strict_uniq_imv L R (ordsucc beta) p1.
We will prove PNo_rel_strict_imv L R (ordsucc beta) p1∀q : setprop, PNo_rel_strict_imv L R (ordsucc beta) qPNoEq_ (ordsucc beta) p1 q.
Apply andI to the current goal.
An exact proof term for the current goal is Lp1imv.
Let q be given.
Assume Hq: PNo_rel_strict_imv L R (ordsucc beta) q.
We will prove PNoEq_ (ordsucc beta) p1 q.
We prove the intermediate claim Lqb: PNo_rel_strict_imv L R beta q.
An exact proof term for the current goal is PNo_rel_strict_imv_antimon L R (ordsucc beta) Lsb q beta (ordsuccI2 beta) Hq.
We prove the intermediate claim Lpqe: PNoEq_ beta p q.
An exact proof term for the current goal is Hp3 q Lqb.
Apply xm (q beta) to the current goal.
Assume Hq1: q beta.
We will prove PNoEq_ (ordsucc beta) p1 q.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H3: gammabeta.
We prove the intermediate claim Lpqce: p gammaq gamma.
An exact proof term for the current goal is Lpqe gamma H3.
Apply Lpqce to the current goal.
Assume Hpqc Hqpc.
We will prove p1 gammaq gamma.
Apply iffI to the current goal.
Assume H4: p gammagamma = beta.
Apply H4 to the current goal.
Assume H5: p gamma.
An exact proof term for the current goal is Hpqc H5.
Assume H5: gamma = beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from right to left) at position 1.
An exact proof term for the current goal is H3.
Assume H4: q gamma.
We will prove p gammagamma = beta.
Apply orIL to the current goal.
We will prove p gamma.
An exact proof term for the current goal is Hqpc H4.
Assume H3: gamma = beta.
We will prove p1 gammaq gamma.
Apply iffI to the current goal.
Assume _.
We will prove q gamma.
rewrite the current goal using H3 (from left to right).
We will prove q beta.
An exact proof term for the current goal is Hq1.
Assume H4: q gamma.
We will prove p gammagamma = beta.
Apply orIR to the current goal.
An exact proof term for the current goal is H3.
Assume Hq0: ¬ q beta.
We will prove False.
Apply Lnotboth to the current goal.
rewrite the current goal using Hab (from left to right).
Apply andI to the current goal.
We will prove PNo_rel_strict_imv L R (ordsucc beta) p0.
Apply PNoEq_rel_strict_imv L R (ordsucc beta) Lsb q p0 to the current goal.
We will prove PNoEq_ (ordsucc beta) q p0.
Let gamma be given.
Assume Hc: gammaordsucc beta.
Apply ordsuccE beta gamma Hc to the current goal.
Assume H3: gammabeta.
We prove the intermediate claim Lpqce: p gammaq gamma.
An exact proof term for the current goal is Lpqe gamma H3.
Apply Lpqce to the current goal.
Assume Hpqc Hqpc.
We will prove q gammap0 gamma.
Apply iffI to the current goal.
Assume H4: q gamma.
We will prove p gammagammabeta.
Apply andI to the current goal.
We will prove p gamma.
An exact proof term for the current goal is Hqpc H4.
We will prove gammabeta.
Assume H5: gamma = beta.
Apply In_irref beta to the current goal.
rewrite the current goal using H5 (from right to left) at position 1.
An exact proof term for the current goal is H3.
Assume H4: p gammagammabeta.
Apply H4 to the current goal.
Assume H5 _.
An exact proof term for the current goal is Hpqc H5.
Assume H3: gamma = beta.
We will prove q gammap0 gamma.
Apply iffI to the current goal.
Assume H4: q gamma.
We will prove False.
Apply Hq0 to the current goal.
rewrite the current goal using H3 (from right to left).
An exact proof term for the current goal is H4.
Assume H4: p0 gamma.
Apply H4 to the current goal.
Assume _ H5.
We will prove False.
Apply H5 to the current goal.
An exact proof term for the current goal is H3.
We will prove PNo_rel_strict_imv L R (ordsucc beta) q.
An exact proof term for the current goal is Hq.
We will prove PNo_rel_strict_imv L R (ordsucc beta) p1.
An exact proof term for the current goal is Lp1imv.
Definition. We define PNo_lenbdd to be λalpha L ⇒ ∀beta, ∀p : setprop, L beta pbetaalpha of type set(set(setprop)prop)prop.
Theorem. (PNo_lenbdd_strict_imv_extend0) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∀p : setprop, PNo_rel_strict_imv L R alpha pPNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p deltadeltaalpha)
Proof:
Let L and R be given.
Let alpha be given.
Assume Ha.
Apply Ha to the current goal.
Assume Ha1 _.
Assume HaL HaR.
Let p be given.
Assume Hp1: PNo_rel_strict_imv L R alpha p.
Apply Hp1 to the current goal.
Assume Hp1a Hp1b.
Set p0 to be the term λdelta ⇒ p deltadeltaalpha of type setprop.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
We prove the intermediate claim Lpp0e: PNoEq_ alpha p p0.
An exact proof term for the current goal is PNo_extend0_eq alpha p.
We will prove PNo_rel_strict_upperbd L (ordsucc alpha) p0PNo_rel_strict_lowerbd R (ordsucc alpha) p0.
Apply andI to the current goal.
We will prove PNo_rel_strict_upperbd L (ordsucc alpha) p0.
Let gamma be given.
Assume Hc: gammaordsucc alpha.
Let q be given.
Assume Hq: PNo_downc L gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa gamma Hc.
We will prove PNoLt gamma q (ordsucc alpha) p0.
Apply Hq to the current goal.
Let delta be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hd: ordinal delta.
Assume Hq1.
Apply Hq1 to the current goal.
Let r be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hr: L delta r.
Assume Hqr: PNoLe gamma q delta r.
Apply PNoLeLt_tra gamma delta (ordsucc alpha) Lc Hd Lsa q r p0 Hqr to the current goal.
We will prove PNoLt delta r (ordsucc alpha) p0.
We prove the intermediate claim Lda: deltaalpha.
An exact proof term for the current goal is HaL delta r Hr.
We prove the intermediate claim Ldsa: deltaordsucc alpha.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is Lda.
We prove the intermediate claim Ldr: PNo_downc L delta r.
An exact proof term for the current goal is PNo_downc_ref L delta Hd r Hr.
We prove the intermediate claim Lrp: PNoLt delta r alpha p.
An exact proof term for the current goal is Hp1a delta Lda r Ldr.
Apply PNoLt_trichotomy_or delta (ordsucc alpha) r p0 Hd Lsa to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1.
An exact proof term for the current goal is H1.
Assume H1.
Apply H1 to the current goal.
Assume H2: delta = ordsucc alpha.
We will prove False.
Apply In_irref delta to the current goal.
rewrite the current goal using H2 (from left to right) at position 2.
An exact proof term for the current goal is Ldsa.
Assume H1: PNoLt (ordsucc alpha) p0 delta r.
We will prove False.
Apply PNoLt_irref delta r to the current goal.
Apply PNoLt_tra delta alpha delta Hd Ha Hd r p r Lrp to the current goal.
We will prove PNoLt alpha p delta r.
Apply PNoLtE (ordsucc alpha) delta p0 r H1 to the current goal.
Assume H2: PNoLt_ (ordsucc alphadelta) p0 r.
Apply H2 to the current goal.
Let eps be given.
Assume H3.
Apply H3 to the current goal.
Assume He: epsordsucc alphadelta.
Apply binintersectE (ordsucc alpha) delta eps He to the current goal.
Assume He1 He2.
We prove the intermediate claim Lea: epsalpha.
An exact proof term for the current goal is Ha1 delta Lda eps He2.
Assume H3.
Apply H3 to the current goal.
Assume H3.
Apply H3 to the current goal.
Assume H3: PNoEq_ eps p0 r.
Assume H4: ¬ p0 eps.
Assume H5: r eps.
Apply PNoLtI1 to the current goal.
We will prove PNoLt_ (alphadelta) p r.
We will prove ∃beta ∈ alphadelta, PNoEq_ beta p r¬ p betar beta.
We use eps to witness the existential quantifier.
Apply andI to the current goal.
We will prove epsalphadelta.
Apply binintersectI to the current goal.
An exact proof term for the current goal is Lea.
An exact proof term for the current goal is He2.
Apply and3I to the current goal.
We will prove PNoEq_ eps p r.
Apply PNoEq_tra_ eps p p0 r to the current goal.
Apply PNoEq_antimon_ p p0 alpha Ha eps Lea to the current goal.
An exact proof term for the current goal is Lpp0e.
An exact proof term for the current goal is H3.
We will prove ¬ p eps.
Assume H5: p eps.
Apply H4 to the current goal.
We will prove p epsepsalpha.
Apply andI to the current goal.
An exact proof term for the current goal is H5.
We will prove epsalpha.
Assume H6: eps = alpha.
Apply In_irref alpha to the current goal.
rewrite the current goal using H6 (from right to left) at position 1.
An exact proof term for the current goal is Lea.
We will prove r eps.
An exact proof term for the current goal is H5.
Assume H2: ordsucc alphadelta.
We will prove False.
An exact proof term for the current goal is In_no2cycle delta (ordsucc alpha) Ldsa H2.
Assume H2: deltaordsucc alpha.
Assume H3: PNoEq_ delta p0 r.
Assume H4: ¬ p0 delta.
Apply PNoLtI3 alpha delta p r Lda to the current goal.
We will prove PNoEq_ delta p r.
Apply PNoEq_tra_ delta p p0 r to the current goal.
Apply PNoEq_antimon_ p p0 alpha Ha delta Lda to the current goal.
An exact proof term for the current goal is Lpp0e.
An exact proof term for the current goal is H3.
We will prove ¬ p delta.
Assume H5: p delta.
Apply H4 to the current goal.
We will prove p deltadeltaalpha.
Apply andI to the current goal.
An exact proof term for the current goal is H5.
We will prove deltaalpha.
Assume H6: delta = alpha.
Apply In_irref alpha to the current goal.
rewrite the current goal using H6 (from right to left) at position 1.
An exact proof term for the current goal is Lda.
We will prove PNo_rel_strict_lowerbd R (ordsucc alpha) p0.
Let gamma be given.
Assume Hc: gammaordsucc alpha.
Let q be given.
Assume Hq: PNo_upc R gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa gamma Hc.
We will prove PNoLt (ordsucc alpha) p0 gamma q.
Apply PNoLt_tra (ordsucc alpha) alpha gamma Lsa Ha Lc p0 p q to the current goal.
We will prove PNoLt (ordsucc alpha) p0 alpha p.
Apply PNoLtI3 to the current goal.
We will prove alphaordsucc alpha.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ alpha p0 p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lpp0e.
We will prove ¬ p0 alpha.
Assume H2: p0 alpha.
Apply H2 to the current goal.
Assume H3: p alpha.
Assume H4: alphaalpha.
Apply H4 to the current goal.
Use reflexivity.
We will prove PNoLt alpha p gamma q.
Apply Hq to the current goal.
Let delta be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hd: ordinal delta.
Assume Hq1.
Apply Hq1 to the current goal.
Let r be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hr: R delta r.
Assume Hrq: PNoLe delta r gamma q.
We prove the intermediate claim Ldr: PNo_upc R delta r.
An exact proof term for the current goal is PNo_upc_ref R delta Hd r Hr.
Apply (λH : PNoLt alpha p delta rPNoLtLe_tra alpha delta gamma Ha Hd Lc p r q H Hrq) to the current goal.
We will prove PNoLt alpha p delta r.
An exact proof term for the current goal is Hp1b delta (HaR delta r Hr) r Ldr.
Theorem. (PNo_lenbdd_strict_imv_extend1) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∀p : setprop, PNo_rel_strict_imv L R alpha pPNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p deltadelta = alpha)
Proof:
Let L and R be given.
Let alpha be given.
Assume Ha.
Apply Ha to the current goal.
Assume Ha1 _.
Assume HaL HaR.
Let p be given.
Assume Hp1: PNo_rel_strict_imv L R alpha p.
Apply Hp1 to the current goal.
Assume Hp1a Hp1b.
Set p1 to be the term λdelta ⇒ p deltadelta = alpha of type setprop.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
We prove the intermediate claim Lpp1e: PNoEq_ alpha p p1.
An exact proof term for the current goal is PNo_extend1_eq alpha p.
We will prove PNo_rel_strict_upperbd L (ordsucc alpha) p1PNo_rel_strict_lowerbd R (ordsucc alpha) p1.
Apply andI to the current goal.
We will prove PNo_rel_strict_upperbd L (ordsucc alpha) p1.
Let gamma be given.
Assume Hc: gammaordsucc alpha.
Let q be given.
Assume Hq: PNo_downc L gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa gamma Hc.
We will prove PNoLt gamma q (ordsucc alpha) p1.
Apply PNoLt_tra gamma alpha (ordsucc alpha) Lc Ha Lsa q p p1 to the current goal.
We will prove PNoLt gamma q alpha p.
Apply Hq to the current goal.
Let delta be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hd: ordinal delta.
Assume Hq1.
Apply Hq1 to the current goal.
Let r be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hr: L delta r.
Assume Hqr: PNoLe gamma q delta r.
We prove the intermediate claim Ldr: PNo_downc L delta r.
We will prove ∃beta, ordinal beta∃q : setprop, L beta qPNoLe delta r beta q.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hd.
We use r to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hr.
Apply PNoLe_ref to the current goal.
Apply PNoLeLt_tra gamma delta alpha Lc Hd Ha q r p Hqr to the current goal.
We will prove PNoLt delta r alpha p.
An exact proof term for the current goal is Hp1a delta (HaL delta r Hr) r Ldr.
We will prove PNoLt alpha p (ordsucc alpha) p1.
Apply PNoLtI2 to the current goal.
We will prove alphaordsucc alpha.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ alpha p p1.
An exact proof term for the current goal is Lpp1e.
We will prove p1 alpha.
We will prove p alphaalpha = alpha.
Apply orIR to the current goal.
Use reflexivity.
We will prove PNo_rel_strict_lowerbd R (ordsucc alpha) p1.
Let gamma be given.
Assume Hc: gammaordsucc alpha.
Let q be given.
Assume Hq: PNo_upc R gamma q.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa gamma Hc.
We will prove PNoLt (ordsucc alpha) p1 gamma q.
Apply Hq to the current goal.
Let delta be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hd: ordinal delta.
Assume Hq1.
Apply Hq1 to the current goal.
Let r be given.
Assume Hq1.
Apply Hq1 to the current goal.
Assume Hr: R delta r.
Assume Hrq: PNoLe delta r gamma q.
Apply (λH : PNoLt (ordsucc alpha) p1 delta rPNoLtLe_tra (ordsucc alpha) delta gamma Lsa Hd Lc p1 r q H Hrq) to the current goal.
We will prove PNoLt (ordsucc alpha) p1 delta r.
We prove the intermediate claim Lda: deltaalpha.
An exact proof term for the current goal is HaR delta r Hr.
We prove the intermediate claim Ldsa: deltaordsucc alpha.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is Lda.
We prove the intermediate claim Ldr: PNo_upc R delta r.
We will prove ∃beta, ordinal beta∃q : setprop, R beta qPNoLe beta q delta r.
We use delta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hd.
We use r to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hr.
Apply PNoLe_ref to the current goal.
We prove the intermediate claim Lpr: PNoLt alpha p delta r.
An exact proof term for the current goal is Hp1b delta Lda r Ldr.
Apply PNoLt_trichotomy_or delta (ordsucc alpha) r p1 Hd Lsa to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: PNoLt delta r (ordsucc alpha) p1.
We will prove False.
Apply PNoLt_irref alpha p to the current goal.
We will prove PNoLt alpha p alpha p.
Apply PNoLt_tra alpha delta alpha Ha Hd Ha p r p Lpr to the current goal.
We will prove PNoLt delta r alpha p.
Apply PNoLtE delta (ordsucc alpha) r p1 H1 to the current goal.
Assume H2: PNoLt_ (deltaordsucc alpha) r p1.
Apply H2 to the current goal.
Let eps be given.
Assume H3.
Apply H3 to the current goal.
Assume He: epsdeltaordsucc alpha.
Apply binintersectE delta (ordsucc alpha) eps He to the current goal.
Assume He1 He2.
We prove the intermediate claim Lea: epsalpha.
An exact proof term for the current goal is Ha1 delta Lda eps He1.
Assume H3.
Apply H3 to the current goal.
Assume H3.
Apply H3 to the current goal.
Assume H3: PNoEq_ eps r p1.
Assume H4: ¬ r eps.
Assume H5: p1 eps.
Apply PNoLtI1 to the current goal.
We will prove PNoLt_ (deltaalpha) r p.
We will prove ∃beta ∈ deltaalpha, PNoEq_ beta r p¬ r betap beta.
We use eps to witness the existential quantifier.
Apply andI to the current goal.
We will prove epsdeltaalpha.
Apply binintersectI to the current goal.
An exact proof term for the current goal is He1.
An exact proof term for the current goal is Lea.
Apply and3I to the current goal.
We will prove PNoEq_ eps r p.
Apply PNoEq_tra_ eps r p1 p to the current goal.
An exact proof term for the current goal is H3.
Apply PNoEq_antimon_ p1 p alpha Ha eps Lea to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lpp1e.
We will prove ¬ r eps.
An exact proof term for the current goal is H4.
We will prove p eps.
Apply H5 to the current goal.
An exact proof term for the current goal is (λH ⇒ H).
Assume H6: eps = alpha.
We will prove False.
Apply In_irref alpha to the current goal.
rewrite the current goal using H6 (from right to left) at position 1.
An exact proof term for the current goal is Lea.
Assume H2: deltaordsucc alpha.
Assume H3: PNoEq_ delta r p1.
Assume H4: p1 delta.
Apply PNoLtI2 delta alpha r p Lda to the current goal.
We will prove PNoEq_ delta r p.
Apply PNoEq_tra_ delta r p1 p to the current goal.
An exact proof term for the current goal is H3.
Apply PNoEq_antimon_ p1 p alpha Ha delta Lda to the current goal.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lpp1e.
We will prove p delta.
Apply H4 to the current goal.
An exact proof term for the current goal is (λH ⇒ H).
Assume H5: delta = alpha.
We will prove False.
Apply In_irref alpha to the current goal.
rewrite the current goal using H5 (from right to left) at position 1.
An exact proof term for the current goal is Lda.
Assume H2: ordsucc alphadelta.
We will prove False.
An exact proof term for the current goal is In_no2cycle delta (ordsucc alpha) Ldsa H2.
Assume H1.
Apply H1 to the current goal.
Assume H2: delta = ordsucc alpha.
We will prove False.
Apply In_irref delta to the current goal.
rewrite the current goal using H2 (from left to right) at position 2.
An exact proof term for the current goal is Ldsa.
Assume H1.
An exact proof term for the current goal is H1.
Theorem. (PNo_lenbdd_strict_imv_split) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∀p : setprop, PNo_rel_strict_imv L R alpha pPNo_rel_strict_split_imv L R alpha p
Proof:
Let L and R be given.
Let alpha be given.
Assume Ha.
Assume HaL HaR.
Let p be given.
Assume Hp1.
We will prove PNo_rel_strict_split_imv L R alpha p.
An exact proof term for the current goal is andI (PNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p deltadeltaalpha)) (PNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p deltadelta = alpha)) (PNo_lenbdd_strict_imv_extend0 L R alpha Ha HaL HaR p Hp1) (PNo_lenbdd_strict_imv_extend1 L R alpha Ha HaL HaR p Hp1).
Theorem. (PNo_rel_imv_bdd_ex) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∃beta ∈ ordsucc alpha, ∃p : setprop, PNo_rel_strict_split_imv L R beta p
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha.
Apply Ha to the current goal.
Assume Ha1 _.
Assume HaL HaR.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
Apply PNo_rel_imv_ex L R HLR alpha Ha to the current goal.
Assume H2.
Apply H2 to the current goal.
Let p be given.
Assume Hp: PNo_rel_strict_uniq_imv L R alpha p.
Apply Hp to the current goal.
Assume Hp1: PNo_rel_strict_imv L R alpha p.
Apply Hp1 to the current goal.
Assume Hp1a Hp1b.
Assume Hp2: ∀q : setprop, PNo_rel_strict_imv L R alpha qPNoEq_ alpha p q.
We use alpha to witness the existential quantifier.
Apply andI to the current goal.
We will prove alphaordsucc alpha.
Apply ordsuccI2 to the current goal.
We use p to witness the existential quantifier.
We will prove PNo_rel_strict_split_imv L R alpha p.
An exact proof term for the current goal is PNo_lenbdd_strict_imv_split L R alpha Ha HaL HaR p Hp1.
Assume H1.
Apply H1 to the current goal.
Let beta be given.
Assume H1.
Apply H1 to the current goal.
Assume Hb: betaalpha.
Assume H1.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
We will prove betaordsucc alpha.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is Hb.
An exact proof term for the current goal is H1.
Definition. We define PNo_strict_upperbd to be λL alpha p ⇒ ∀beta, ordinal beta∀q : setprop, L beta qPNoLt beta q alpha p of type (set(setprop)prop)set(setprop)prop.
Definition. We define PNo_strict_lowerbd to be λR alpha p ⇒ ∀beta, ordinal beta∀q : setprop, R beta qPNoLt alpha p beta q of type (set(setprop)prop)set(setprop)prop.
Definition. We define PNo_strict_imv to be λL R alpha p ⇒ PNo_strict_upperbd L alpha pPNo_strict_lowerbd R alpha p of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
Theorem. (PNoEq_strict_upperbd) The following is provable:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_strict_upperbd L alpha pPNo_strict_upperbd L alpha q
Proof:
Let L and alpha be given.
Assume Ha.
Let p and q be given.
Assume Hpq: PNoEq_ alpha p q.
Assume H1: PNo_strict_upperbd L alpha p.
We will prove PNo_strict_upperbd L alpha q.
Let beta be given.
Assume Hb: ordinal beta.
Let r be given.
Assume H2: L beta r.
We will prove PNoLt beta r alpha q.
Apply PNoLtEq_tra beta alpha Hb Ha r p q to the current goal.
We will prove PNoLt beta r alpha p.
An exact proof term for the current goal is H1 beta Hb r H2.
We will prove PNoEq_ alpha p q.
An exact proof term for the current goal is Hpq.
Theorem. (PNoEq_strict_lowerbd) The following is provable:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_strict_lowerbd R alpha pPNo_strict_lowerbd R alpha q
Proof:
Let R and alpha be given.
Assume Ha.
Let p and q be given.
Assume Hpq: PNoEq_ alpha p q.
Assume H1: PNo_strict_lowerbd R alpha p.
We will prove PNo_strict_lowerbd R alpha q.
Let beta be given.
Assume Hb: ordinal beta.
Let r be given.
Assume H2: R beta r.
We will prove PNoLt alpha q beta r.
Apply PNoEqLt_tra alpha beta Ha Hb q p r to the current goal.
We will prove PNoEq_ alpha q p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Hpq.
We will prove PNoLt alpha p beta r.
An exact proof term for the current goal is H1 beta Hb r H2.
Theorem. (PNoEq_strict_imv) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_strict_imv L R alpha pPNo_strict_imv L R alpha q
Proof:
Let L, R and alpha be given.
Assume Ha.
Let p and q be given.
Assume Hpq H1.
Apply H1 to the current goal.
Assume H2 H3.
We will prove PNo_strict_upperbd L alpha qPNo_strict_lowerbd R alpha q.
Apply andI to the current goal.
An exact proof term for the current goal is PNoEq_strict_upperbd L alpha Ha p q Hpq H2.
An exact proof term for the current goal is PNoEq_strict_lowerbd R alpha Ha p q Hpq H3.
Theorem. (PNo_strict_upperbd_imp_rel_strict_upperbd) The following is provable:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀beta ∈ ordsucc alpha, ∀p : setprop, PNo_strict_upperbd L alpha pPNo_rel_strict_upperbd L beta p
Proof:
Let L and alpha be given.
Assume Ha: ordinal alpha.
Let beta be given.
Assume Hb: betaordsucc alpha.
Let p be given.
Assume H1: PNo_strict_upperbd L alpha p.
Let gamma be given.
Assume Hc: gammabeta.
Let q be given.
Assume Hq: PNo_downc L gamma q.
Apply Ha to the current goal.
Assume Ha1 _.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa beta Hb.
We prove the intermediate claim Lb1: TransSet beta.
Apply Lb to the current goal.
Assume H _.
An exact proof term for the current goal is H.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered beta Lb gamma Hc.
We prove the intermediate claim Lcb: gammabeta.
An exact proof term for the current goal is Lb1 gamma Hc.
We will prove PNoLt gamma q beta p.
Apply Hq to the current goal.
Let delta be given.
Assume H2.
Apply H2 to the current goal.
Assume Hd: ordinal delta.
Assume H2.
Apply H2 to the current goal.
Let r be given.
Assume H2.
Apply H2 to the current goal.
Assume H2: L delta r.
Assume H3: PNoLe gamma q delta r.
We prove the intermediate claim L1: PNoLt delta r alpha p.
An exact proof term for the current goal is H1 delta Hd r H2.
We prove the intermediate claim L2: PNoLt gamma q alpha p.
An exact proof term for the current goal is PNoLeLt_tra gamma delta alpha Lc Hd Ha q r p H3 L1.
We prove the intermediate claim Lca: gammaalpha.
Apply ordsuccE alpha beta Hb to the current goal.
Assume Hb1: betaalpha.
An exact proof term for the current goal is Ha1 beta Hb1 gamma Hc.
Assume Hb1: beta = alpha.
rewrite the current goal using Hb1 (from right to left).
An exact proof term for the current goal is Hc.
We prove the intermediate claim Lca2: gammaalpha.
An exact proof term for the current goal is Ha1 gamma Lca.
We will prove PNoLt gamma q beta p.
Apply PNoLt_trichotomy_or gamma beta q p Lc Lb to the current goal.
Assume H4.
Apply H4 to the current goal.
Assume H4.
An exact proof term for the current goal is H4.
Assume H4.
Apply H4 to the current goal.
Assume H4: gamma = beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H4 (from right to left) at position 1.
An exact proof term for the current goal is Hc.
Assume H4: PNoLt beta p gamma q.
We will prove False.
Apply PNoLtE beta gamma p q H4 to the current goal.
rewrite the current goal using binintersect_com (from left to right).
rewrite the current goal using binintersect_Subq_eq_1 gamma beta Lcb (from left to right).
Assume H5: PNoLt_ gamma p q.
Apply H5 to the current goal.
Apply PNoLt_irref alpha p to the current goal.
Apply PNoLt_tra alpha gamma alpha Ha Lc Ha p q p to the current goal.
We will prove PNoLt alpha p gamma q.
Apply PNoLtI1 to the current goal.
We will prove PNoLt_ (alphagamma) p q.
rewrite the current goal using binintersect_com (from left to right).
rewrite the current goal using binintersect_Subq_eq_1 gamma alpha Lca2 (from left to right).
We will prove PNoLt_ gamma p q.
An exact proof term for the current goal is H5.
We will prove PNoLt gamma q alpha p.
An exact proof term for the current goal is L2.
Assume H5: betagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle beta gamma H5 Hc.
Assume H5: gammabeta.
Assume H6: PNoEq_ gamma p q.
Assume H7: ¬ p gamma.
Apply PNoLt_irref alpha p to the current goal.
Apply PNoLt_tra alpha gamma alpha Ha Lc Ha p q p to the current goal.
We will prove PNoLt alpha p gamma q.
Apply PNoLtI3 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is Lca.
We will prove PNoEq_ gamma p q.
An exact proof term for the current goal is H6.
We will prove ¬ p gamma.
An exact proof term for the current goal is H7.
We will prove PNoLt gamma q alpha p.
An exact proof term for the current goal is L2.
Theorem. (PNo_strict_lowerbd_imp_rel_strict_lowerbd) The following is provable:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀beta ∈ ordsucc alpha, ∀p : setprop, PNo_strict_lowerbd R alpha pPNo_rel_strict_lowerbd R beta p
Proof:
Let R and alpha be given.
Assume Ha: ordinal alpha.
Let beta be given.
Assume Hb: betaordsucc alpha.
Let p be given.
Assume H1: PNo_strict_lowerbd R alpha p.
Let gamma be given.
Assume Hc: gammabeta.
Let q be given.
Assume Hq: PNo_upc R gamma q.
Apply Ha to the current goal.
Assume Ha1 _.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa beta Hb.
We prove the intermediate claim Lb1: TransSet beta.
Apply Lb to the current goal.
Assume H _.
An exact proof term for the current goal is H.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered beta Lb gamma Hc.
We prove the intermediate claim Lcb: gammabeta.
An exact proof term for the current goal is Lb1 gamma Hc.
We will prove PNoLt beta p gamma q.
Apply Hq to the current goal.
Let delta be given.
Assume H2.
Apply H2 to the current goal.
Assume Hd: ordinal delta.
Assume H2.
Apply H2 to the current goal.
Let r be given.
Assume H2.
Apply H2 to the current goal.
Assume H2: R delta r.
Assume H3: PNoLe delta r gamma q.
We prove the intermediate claim L1: PNoLt alpha p delta r.
An exact proof term for the current goal is H1 delta Hd r H2.
We prove the intermediate claim L2: PNoLt alpha p gamma q.
An exact proof term for the current goal is PNoLtLe_tra alpha delta gamma Ha Hd Lc p r q L1 H3.
We prove the intermediate claim Lca: gammaalpha.
Apply ordsuccE alpha beta Hb to the current goal.
Assume Hb1: betaalpha.
An exact proof term for the current goal is Ha1 beta Hb1 gamma Hc.
Assume Hb1: beta = alpha.
rewrite the current goal using Hb1 (from right to left).
An exact proof term for the current goal is Hc.
We prove the intermediate claim Lca2: gammaalpha.
An exact proof term for the current goal is Ha1 gamma Lca.
We will prove PNoLt beta p gamma q.
Apply PNoLt_trichotomy_or gamma beta q p Lc Lb to the current goal.
Assume H4.
Apply H4 to the current goal.
Assume H4: PNoLt gamma q beta p.
We will prove False.
Apply PNoLtE gamma beta q p H4 to the current goal.
rewrite the current goal using binintersect_Subq_eq_1 gamma beta Lcb (from left to right).
Assume H5: PNoLt_ gamma q p.
Apply H5 to the current goal.
Apply PNoLt_irref alpha p to the current goal.
Apply PNoLt_tra alpha gamma alpha Ha Lc Ha p q p to the current goal.
We will prove PNoLt alpha p gamma q.
An exact proof term for the current goal is L2.
We will prove PNoLt gamma q alpha p.
Apply PNoLtI1 to the current goal.
We will prove PNoLt_ (gammaalpha) q p.
rewrite the current goal using binintersect_Subq_eq_1 gamma alpha Lca2 (from left to right).
We will prove PNoLt_ gamma q p.
An exact proof term for the current goal is H5.
Assume H5: gammabeta.
Assume H6: PNoEq_ gamma q p.
Assume H7: p gamma.
Apply PNoLt_irref alpha p to the current goal.
Apply PNoLt_tra alpha gamma alpha Ha Lc Ha p q p to the current goal.
We will prove PNoLt alpha p gamma q.
An exact proof term for the current goal is L2.
We will prove PNoLt gamma q alpha p.
Apply PNoLtI2 to the current goal.
We will prove gammaalpha.
An exact proof term for the current goal is Lca.
We will prove PNoEq_ gamma q p.
An exact proof term for the current goal is H6.
We will prove p gamma.
An exact proof term for the current goal is H7.
Assume H5: betagamma.
We will prove False.
An exact proof term for the current goal is In_no2cycle beta gamma H5 Hc.
Assume H4.
Apply H4 to the current goal.
Assume H4: gamma = beta.
We will prove False.
Apply In_irref beta to the current goal.
rewrite the current goal using H4 (from right to left) at position 1.
An exact proof term for the current goal is Hc.
Assume H4.
An exact proof term for the current goal is H4.
Theorem. (PNo_strict_imv_imp_rel_strict_imv) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀beta ∈ ordsucc alpha, ∀p : setprop, PNo_strict_imv L R alpha pPNo_rel_strict_imv L R beta p
Proof:
Let L, R and alpha be given.
Assume Ha: ordinal alpha.
Let beta be given.
Assume Hb: betaordsucc alpha.
Let p be given.
Assume H1: PNo_strict_imv L R alpha p.
Apply H1 to the current goal.
Assume H2: PNo_strict_upperbd L alpha p.
Assume H3: PNo_strict_lowerbd R alpha p.
We will prove PNo_rel_strict_imv L R beta p.
Apply andI to the current goal.
An exact proof term for the current goal is PNo_strict_upperbd_imp_rel_strict_upperbd L alpha Ha beta Hb p H2.
An exact proof term for the current goal is PNo_strict_lowerbd_imp_rel_strict_lowerbd R alpha Ha beta Hb p H3.
Theorem. (PNo_rel_split_imv_imp_strict_imv) The following is provable:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, PNo_rel_strict_split_imv L R alpha pPNo_strict_imv L R alpha p
Proof:
Let L and R be given.
Let alpha be given.
Assume Ha: ordinal alpha.
Let p be given.
Assume Hp: PNo_rel_strict_split_imv L R alpha p.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
Set p0 to be the term λdelta ⇒ p deltadeltaalpha of type setprop.
Set p1 to be the term λdelta ⇒ p deltadelta = alpha of type setprop.
Apply Hp to the current goal.
Assume Hp0: PNo_rel_strict_imv L R (ordsucc alpha) p0.
Assume Hp1: PNo_rel_strict_imv L R (ordsucc alpha) p1.
Apply Hp0 to the current goal.
Assume Hp0a: PNo_rel_strict_upperbd L (ordsucc alpha) p0.
Assume Hp0b: PNo_rel_strict_lowerbd R (ordsucc alpha) p0.
Apply Hp1 to the current goal.
Assume Hp1a: PNo_rel_strict_upperbd L (ordsucc alpha) p1.
Assume Hp1b: PNo_rel_strict_lowerbd R (ordsucc alpha) p1.
We prove the intermediate claim Lnp0a: ¬ p0 alpha.
Assume H10.
Apply H10 to the current goal.
Assume H11: p alpha.
Assume H12: alphaalpha.
Apply H12 to the current goal.
Use reflexivity.
We prove the intermediate claim Lp1a: p1 alpha.
We will prove p alphaalpha = alpha.
Apply orIR to the current goal.
Use reflexivity.
We prove the intermediate claim Lap0p: PNoLt (ordsucc alpha) p0 alpha p.
Apply PNoLtI3 to the current goal.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ alpha p0 p.
Apply PNoEq_sym_ to the current goal.
Apply PNo_extend0_eq to the current goal.
We will prove ¬ p0 alpha.
An exact proof term for the current goal is Lnp0a.
We prove the intermediate claim Lapp1: PNoLt alpha p (ordsucc alpha) p1.
Apply PNoLtI2 to the current goal.
Apply ordsuccI2 to the current goal.
We will prove PNoEq_ alpha p p1.
Apply PNo_extend1_eq to the current goal.
We will prove p1 alpha.
An exact proof term for the current goal is Lp1a.
We will prove PNo_strict_upperbd L alpha pPNo_strict_lowerbd R alpha p.
Apply andI to the current goal.
Let beta be given.
Assume Hb: ordinal beta.
Let q be given.
Assume Hq: L beta q.
We will prove PNoLt beta q alpha p.
We prove the intermediate claim L4: PNo_downc L beta q.
Apply PNo_downc_ref L beta Hb to the current goal.
An exact proof term for the current goal is Hq.
We prove the intermediate claim L5: betaordsucc alphaPNoLt beta q alpha p.
Assume H10: betaordsucc alpha.
Apply PNoLt_tra beta (ordsucc alpha) alpha Hb Lsa Ha q p0 p to the current goal.
We will prove PNoLt beta q (ordsucc alpha) p0.
Apply Hp0a beta H10 q to the current goal.
We will prove PNo_downc L beta q.
An exact proof term for the current goal is L4.
An exact proof term for the current goal is Lap0p.
We prove the intermediate claim L6: ∀gamma ∈ ordsucc alpha, gammabetaPNoEq_ gamma p qq gammap0 gamma.
Let gamma be given.
Assume Hc1: gammaordsucc alpha.
Assume Hc2: gammabeta.
Assume H10: PNoEq_ gamma p q.
Assume H11: q gamma.
Apply dneg to the current goal.
Assume HNC: ¬ p0 gamma.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered beta Hb gamma Hc2.
We prove the intermediate claim L6a: PNoLt gamma q beta q.
Apply PNoLtI2 to the current goal.
An exact proof term for the current goal is Hc2.
We will prove PNoEq_ gamma q q.
Apply PNoEq_ref_ to the current goal.
We will prove q gamma.
An exact proof term for the current goal is H11.
We prove the intermediate claim L6b: PNo_downc L gamma q.
We will prove ∃delta, ordinal delta∃r : setprop, L delta rPNoLe gamma q delta r.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hb.
We use q to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hq.
Apply PNoLeI1 to the current goal.
An exact proof term for the current goal is L6a.
We prove the intermediate claim L6c: PNoLt gamma q (ordsucc alpha) p0.
An exact proof term for the current goal is Hp0a gamma Hc1 q L6b.
We prove the intermediate claim L6d: PNoLt (ordsucc alpha) p0 gamma q.
Apply PNoLtI3 to the current goal.
An exact proof term for the current goal is Hc1.
We will prove PNoEq_ gamma p0 q.
Apply PNoEq_tra_ gamma p0 p q to the current goal.
Apply PNoEq_sym_ to the current goal.
We will prove PNoEq_ gamma p p0.
Apply ordsuccE alpha gamma Hc1 to the current goal.
Assume H12: gammaalpha.
Apply PNoEq_antimon_ p p0 alpha Ha gamma H12 to the current goal.
We will prove PNoEq_ alpha p p0.
An exact proof term for the current goal is PNo_extend0_eq alpha p.
Assume H12: gamma = alpha.
rewrite the current goal using H12 (from left to right).
We will prove PNoEq_ alpha p p0.
An exact proof term for the current goal is PNo_extend0_eq alpha p.
An exact proof term for the current goal is H10.
We will prove ¬ p0 gamma.
An exact proof term for the current goal is HNC.
Apply PNoLt_irref gamma q to the current goal.
An exact proof term for the current goal is PNoLt_tra gamma (ordsucc alpha) gamma Lc Lsa Lc q p0 q L6c L6d.
Apply PNoLt_trichotomy_or alpha beta p q Ha Hb to the current goal.
Assume H10.
Apply H10 to the current goal.
Assume H10: PNoLt alpha p beta q.
Apply PNoLtE alpha beta p q H10 to the current goal.
Assume H11: PNoLt_ (alphabeta) p q.
Apply H11 to the current goal.
Let gamma be given.
Assume H12.
Apply H12 to the current goal.
Assume Hc: gammaalphabeta.
Assume H12.
Apply H12 to the current goal.
Assume H12.
Apply H12 to the current goal.
Assume H12: PNoEq_ gamma p q.
Assume H13: ¬ p gamma.
Assume H14: q gamma.
We will prove False.
Apply binintersectE alpha beta gamma Hc to the current goal.
Assume Hc1: gammaalpha.
Assume Hc2: gammabeta.
Apply L6 gamma (ordsuccI1 alpha gamma Hc1) Hc2 H12 H14 to the current goal.
Assume H15: p gamma.
Assume _.
Apply H13 to the current goal.
An exact proof term for the current goal is H15.
Assume H11: alphabeta.
Assume H12: PNoEq_ alpha p q.
Assume H13: q alpha.
We will prove False.
Apply Lnp0a to the current goal.
We will prove p0 alpha.
An exact proof term for the current goal is L6 alpha (ordsuccI2 alpha) H11 H12 H13.
Assume H11: betaalpha.
Assume _ _.
Apply L5 to the current goal.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is H11.
Assume H10.
Apply H10 to the current goal.
Assume H10a: alpha = beta.
Assume H10b: PNoEq_ alpha p q.
Apply L5 to the current goal.
We will prove betaordsucc alpha.
rewrite the current goal using H10a (from right to left).
Apply ordsuccI2 to the current goal.
Assume H10: PNoLt beta q alpha p.
An exact proof term for the current goal is H10.
Let beta be given.
Assume Hb: ordinal beta.
Let q be given.
Assume Hq: R beta q.
We will prove PNoLt alpha p beta q.
We prove the intermediate claim L4: PNo_upc R beta q.
Apply PNo_upc_ref R beta Hb to the current goal.
An exact proof term for the current goal is Hq.
We prove the intermediate claim L5: betaordsucc alphaPNoLt alpha p beta q.
Assume H10: betaordsucc alpha.
Apply PNoLt_tra alpha (ordsucc alpha) beta Ha Lsa Hb p p1 q to the current goal.
An exact proof term for the current goal is Lapp1.
We will prove PNoLt (ordsucc alpha) p1 beta q.
Apply Hp1b beta H10 q to the current goal.
We will prove PNo_upc R beta q.
An exact proof term for the current goal is L4.
We prove the intermediate claim L6: ∀gamma ∈ ordsucc alpha, gammabetaPNoEq_ gamma q pp1 gammaq gamma.
Let gamma be given.
Assume Hc1: gammaordsucc alpha.
Assume Hc2: gammabeta.
Assume H10: PNoEq_ gamma q p.
Assume H11: p1 gamma.
Apply dneg to the current goal.
Assume HNC: ¬ q gamma.
We prove the intermediate claim Lc: ordinal gamma.
An exact proof term for the current goal is ordinal_Hered beta Hb gamma Hc2.
We prove the intermediate claim L6a: PNoLt beta q gamma q.
Apply PNoLtI3 to the current goal.
An exact proof term for the current goal is Hc2.
We will prove PNoEq_ gamma q q.
Apply PNoEq_ref_ to the current goal.
We will prove ¬ q gamma.
An exact proof term for the current goal is HNC.
We prove the intermediate claim L6b: PNo_upc R gamma q.
We will prove ∃delta, ordinal delta∃r : setprop, R delta rPNoLe delta r gamma q.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hb.
We use q to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hq.
Apply PNoLeI1 to the current goal.
An exact proof term for the current goal is L6a.
We prove the intermediate claim L6c: PNoLt (ordsucc alpha) p1 gamma q.
An exact proof term for the current goal is Hp1b gamma Hc1 q L6b.
We prove the intermediate claim L6d: PNoLt gamma q (ordsucc alpha) p1.
Apply PNoLtI2 to the current goal.
An exact proof term for the current goal is Hc1.
We will prove PNoEq_ gamma q p1.
Apply PNoEq_tra_ gamma q p p1 to the current goal.
An exact proof term for the current goal is H10.
We will prove PNoEq_ gamma p p1.
Apply ordsuccE alpha gamma Hc1 to the current goal.
Assume H12: gammaalpha.
Apply PNoEq_antimon_ p p1 alpha Ha gamma H12 to the current goal.
We will prove PNoEq_ alpha p p1.
An exact proof term for the current goal is PNo_extend1_eq alpha p.
Assume H12: gamma = alpha.
rewrite the current goal using H12 (from left to right).
We will prove PNoEq_ alpha p p1.
An exact proof term for the current goal is PNo_extend1_eq alpha p.
We will prove p1 gamma.
An exact proof term for the current goal is H11.
Apply PNoLt_irref gamma q to the current goal.
An exact proof term for the current goal is PNoLt_tra gamma (ordsucc alpha) gamma Lc Lsa Lc q p1 q L6d L6c.
Apply PNoLt_trichotomy_or alpha beta p q Ha Hb to the current goal.
Assume H10.
Apply H10 to the current goal.
Assume H10.
An exact proof term for the current goal is H10.
Assume H10.
Apply H10 to the current goal.
Assume H10a: alpha = beta.
Assume H10b: PNoEq_ alpha p q.
Apply L5 to the current goal.
We will prove betaordsucc alpha.
rewrite the current goal using H10a (from right to left).
Apply ordsuccI2 to the current goal.
Assume H10: PNoLt beta q alpha p.
Apply PNoLtE beta alpha q p H10 to the current goal.
Assume H11: PNoLt_ (betaalpha) q p.
Apply H11 to the current goal.
Let gamma be given.
Assume H12.
Apply H12 to the current goal.
Assume Hc: gammabetaalpha.
Assume H12.
Apply H12 to the current goal.
Assume H12.
Apply H12 to the current goal.
Assume H12: PNoEq_ gamma q p.
Assume H13: ¬ q gamma.
Assume H14: p gamma.
We will prove False.
Apply binintersectE beta alpha gamma Hc to the current goal.
Assume Hc2: gammabeta.
Assume Hc1: gammaalpha.
Apply H13 to the current goal.
Apply L6 gamma (ordsuccI1 alpha gamma Hc1) Hc2 H12 to the current goal.
We will prove p1 gamma.
We will prove p gammagamma = alpha.
Apply orIL to the current goal.
An exact proof term for the current goal is H14.
Assume H11: betaalpha.
Assume _ _.
Apply L5 to the current goal.
Apply ordsuccI1 to the current goal.
An exact proof term for the current goal is H11.
Assume H11: alphabeta.
Assume H12: PNoEq_ alpha q p.
Assume H13: ¬ q alpha.
We will prove False.
Apply H13 to the current goal.
An exact proof term for the current goal is L6 alpha (ordsuccI2 alpha) H11 H12 Lp1a.
Theorem. (PNo_lenbdd_strict_imv_ex) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∃beta ∈ ordsucc alpha, ∃p : setprop, PNo_strict_imv L R beta p
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha.
Assume HaL HaR.
Apply PNo_rel_imv_bdd_ex L R HLR alpha Ha HaL HaR to the current goal.
Let beta be given.
Assume H1.
Apply H1 to the current goal.
Assume Hb: betaordsucc alpha.
Assume H1.
Apply H1 to the current goal.
Let p be given.
Assume Hp: PNo_rel_strict_split_imv L R beta p.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
We prove the intermediate claim Lb: ordinal beta.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa beta Hb.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is Hb.
We use p to witness the existential quantifier.
We will prove PNo_strict_imv L R beta p.
An exact proof term for the current goal is PNo_rel_split_imv_imp_strict_imv L R beta Lb p Hp.
Definition. We define PNo_least_rep to be λL R beta p ⇒ ordinal betaPNo_strict_imv L R beta p∀gamma ∈ beta, ∀q : setprop, ¬ PNo_strict_imv L R gamma q of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
Definition. We define PNo_least_rep2 to be λL R beta p ⇒ PNo_least_rep L R beta p∀x, xbeta¬ p x of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
Theorem. (PNo_strict_imv_pred_eq) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alpha∀p q : setprop, PNo_least_rep L R alpha pPNo_strict_imv L R alpha q∀beta ∈ alpha, p betaq beta
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha.
Let p and q be given.
Assume Hp.
Assume Hq.
Apply Ha to the current goal.
Assume Ha1 _.
Apply Hp to the current goal.
Assume Hp1.
Apply Hp1 to the current goal.
Assume _.
Assume Hp1: PNo_strict_imv L R alpha p.
Assume Hp2: ∀beta ∈ alpha, ∀r : setprop, ¬ PNo_strict_imv L R beta r.
Apply Hp1 to the current goal.
Assume Hp1a: PNo_strict_upperbd L alpha p.
Assume Hp1b: PNo_strict_lowerbd R alpha p.
Apply Hq to the current goal.
Assume Hq1: PNo_strict_upperbd L alpha q.
Assume Hq2: PNo_strict_lowerbd R alpha q.
We prove the intermediate claim L1: ∀beta, ordinal betabetaalpha(p betaq beta).
Apply ordinal_ind to the current goal.
Let beta be given.
Assume Hb1: ordinal beta.
Assume IH: ∀gamma ∈ beta, gammaalpha(p gammaq gamma).
Assume Hb2: betaalpha.
We prove the intermediate claim Lbpq: PNoEq_ beta p q.
Let gamma be given.
Assume Hc: gammabeta.
An exact proof term for the current goal is IH gamma Hc (Ha1 beta Hb2 gamma Hc).
We will prove p betaq beta.
Apply iffI to the current goal.
Assume H1: p beta.
We will prove q beta.
Apply dneg to the current goal.
Assume H2: ¬ q beta.
We prove the intermediate claim Lqp: PNoLt beta q alpha p.
Apply PNoLtI2 to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hb2.
We will prove PNoEq_ beta q p.
Apply PNoEq_sym_ to the current goal.
An exact proof term for the current goal is Lbpq.
We will prove p beta.
An exact proof term for the current goal is H1.
We prove the intermediate claim Lqq: PNoLt alpha q beta q.
Apply PNoLtI3 to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hb2.
We will prove PNoEq_ beta q q.
Apply PNoEq_ref_ to the current goal.
We will prove ¬ q beta.
An exact proof term for the current goal is H2.
Apply Hp2 beta Hb2 q to the current goal.
We will prove PNo_strict_imv L R beta q.
We will prove PNo_strict_upperbd L beta qPNo_strict_lowerbd R beta q.
Apply andI to the current goal.
Let gamma be given.
Assume Hc: ordinal gamma.
Let r be given.
Assume Hr: L gamma r.
We will prove PNoLt gamma r beta q.
Apply PNoLt_tra gamma alpha beta Hc Ha Hb1 r q q to the current goal.
We will prove PNoLt gamma r alpha q.
An exact proof term for the current goal is Hq1 gamma Hc r Hr.
We will prove PNoLt alpha q beta q.
An exact proof term for the current goal is Lqq.
Let gamma be given.
Assume Hc: ordinal gamma.
Let r be given.
Assume Hr: R gamma r.
We will prove PNoLt beta q gamma r.
Apply PNoLt_tra beta alpha gamma Hb1 Ha Hc q p r to the current goal.
We will prove PNoLt beta q alpha p.
An exact proof term for the current goal is Lqp.
We will prove PNoLt alpha p gamma r.
An exact proof term for the current goal is Hp1b gamma Hc r Hr.
Assume H1: q beta.
We will prove p beta.
Apply dneg to the current goal.
Assume H2: ¬ p beta.
We prove the intermediate claim Lpq: PNoLt alpha p beta q.
Apply PNoLtI3 to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hb2.
We will prove PNoEq_ beta p q.
An exact proof term for the current goal is Lbpq.
We will prove ¬ p beta.
An exact proof term for the current goal is H2.
We prove the intermediate claim Lqq: PNoLt beta q alpha q.
Apply PNoLtI2 to the current goal.
We will prove betaalpha.
An exact proof term for the current goal is Hb2.
We will prove PNoEq_ beta q q.
Apply PNoEq_ref_ to the current goal.
We will prove q beta.
An exact proof term for the current goal is H1.
Apply Hp2 beta Hb2 q to the current goal.
We will prove PNo_strict_imv L R beta q.
We will prove PNo_strict_upperbd L beta qPNo_strict_lowerbd R beta q.
Apply andI to the current goal.
Let gamma be given.
Assume Hc: ordinal gamma.
Let r be given.
Assume Hr: L gamma r.
We will prove PNoLt gamma r beta q.
Apply PNoLt_tra gamma alpha beta Hc Ha Hb1 r p q to the current goal.
We will prove PNoLt gamma r alpha p.
An exact proof term for the current goal is Hp1a gamma Hc r Hr.
We will prove PNoLt alpha p beta q.
An exact proof term for the current goal is Lpq.
Let gamma be given.
Assume Hc: ordinal gamma.
Let r be given.
Assume Hr: R gamma r.
We will prove PNoLt beta q gamma r.
Apply PNoLt_tra beta alpha gamma Hb1 Ha Hc q q r to the current goal.
We will prove PNoLt beta q alpha q.
An exact proof term for the current goal is Lqq.
We will prove PNoLt alpha q gamma r.
An exact proof term for the current goal is Hq2 gamma Hc r Hr.
Let beta be given.
Assume Hb: betaalpha.
An exact proof term for the current goal is L1 beta (ordinal_Hered alpha Ha beta Hb) Hb.
Theorem. (PNo_lenbdd_least_rep2_exuniq2) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∃beta, (∃p : setprop, PNo_least_rep2 L R beta p)(∀p q : setprop, PNo_least_rep2 L R beta pPNo_least_rep2 L R beta qp = q)
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha HaL HaR.
We prove the intermediate claim L1: ∃beta, ordinal beta(∃p : setprop, PNo_strict_imv L R beta p)∀gamma ∈ beta, ¬ (∃p : setprop, PNo_strict_imv L R gamma p).
Apply least_ordinal_ex (λbeta ⇒ ∃p : setprop, PNo_strict_imv L R beta p) to the current goal.
We will prove ∃beta, ordinal beta∃p : setprop, PNo_strict_imv L R beta p.
Apply PNo_lenbdd_strict_imv_ex L R HLR alpha Ha HaL HaR to the current goal.
Let beta be given.
Assume H1.
Apply H1 to the current goal.
Assume Hb: betaordsucc alpha.
Assume H1.
Apply H1 to the current goal.
Let p be given.
Assume Hp: PNo_strict_imv L R beta p.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is ordinal_Hered (ordsucc alpha) Lsa beta Hb.
We use p to witness the existential quantifier.
An exact proof term for the current goal is Hp.
Apply L1 to the current goal.
Let beta be given.
Assume H1.
Apply H1 to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: ordinal beta.
Assume H2: ∃p : setprop, PNo_strict_imv L R beta p.
Assume H3: ∀gamma ∈ beta, ¬ ∃p : setprop, PNo_strict_imv L R gamma p.
Apply H2 to the current goal.
Let p be given.
Assume Hp: PNo_strict_imv L R beta p.
We use beta to witness the existential quantifier.
Apply andI to the current goal.
We use (λx ⇒ xbetap x) to witness the existential quantifier.
We will prove PNo_least_rep L R beta (λx ⇒ xbetap x)∀x, xbeta¬ (xbetap x).
Apply andI to the current goal.
We will prove ordinal betaPNo_strict_imv L R beta (λx ⇒ xbetap x)∀gamma ∈ beta, ∀q : setprop, ¬ PNo_strict_imv L R gamma q.
Apply and3I to the current goal.
An exact proof term for the current goal is H1.
Apply PNoEq_strict_imv L R beta H1 p (λx ⇒ xbetap x) to the current goal.
We will prove PNoEq_ beta p (λx ⇒ xbetap x).
Let x be given.
Assume Hx: xbeta.
We will prove p xxbetap x.
Apply iffI to the current goal.
Assume H4.
Apply andI to the current goal.
An exact proof term for the current goal is Hx.
An exact proof term for the current goal is H4.
Assume H4.
Apply H4 to the current goal.
Assume _ H5.
An exact proof term for the current goal is H5.
An exact proof term for the current goal is Hp.
Let gamma be given.
Assume Hc: gammabeta.
Let q be given.
Assume H4: PNo_strict_imv L R gamma q.
We will prove False.
Apply H3 gamma Hc to the current goal.
We will prove ∃p : setprop, PNo_strict_imv L R gamma p.
We use q to witness the existential quantifier.
We will prove PNo_strict_imv L R gamma q.
An exact proof term for the current goal is H4.
We will prove ∀x, xbeta¬ (xbetap x).
Let x be given.
Assume Hx.
Assume H4.
Apply H4 to the current goal.
Assume H5 _.
An exact proof term for the current goal is Hx H5.
Let q and r be given.
Assume Hq: PNo_least_rep2 L R beta q.
Assume Hr: PNo_least_rep2 L R beta r.
Apply Hq to the current goal.
Assume Hq1 Hq2.
Apply Hr to the current goal.
Assume Hr1 Hr2.
We will prove q = r.
Apply pred_ext to the current goal.
Let x be given.
Apply xm (xbeta) to the current goal.
Assume H4: xbeta.
We will prove q xr x.
Apply Hr1 to the current goal.
Assume Hr1a.
Apply Hr1a to the current goal.
Assume _.
Assume Hr1a: PNo_strict_imv L R beta r.
Assume _.
An exact proof term for the current goal is PNo_strict_imv_pred_eq L R HLR beta H1 q r Hq1 Hr1a x H4.
Assume H4: xbeta.
Apply iffI to the current goal.
Assume H5: q x.
We will prove False.
Apply Hq2 x H4 to the current goal.
An exact proof term for the current goal is H5.
Assume H5: r x.
We will prove False.
Apply Hr2 x H4 to the current goal.
An exact proof term for the current goal is H5.
Definition. We define PNo_bd to be λL R ⇒ DescrR_i_io_1 (PNo_least_rep2 L R) of type (set(setprop)prop)(set(setprop)prop)set.
Definition. We define PNo_pred to be λL R ⇒ DescrR_i_io_2 (PNo_least_rep2 L R) of type (set(setprop)prop)(set(setprop)prop)setprop.
Theorem. (PNo_bd_pred_lem) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha RPNo_least_rep2 L R (PNo_bd L R) (PNo_pred L R)
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha HaL HaR.
An exact proof term for the current goal is DescrR_i_io_12 (PNo_least_rep2 L R) (PNo_lenbdd_least_rep2_exuniq2 L R HLR alpha Ha HaL HaR).
Theorem. (PNo_bd_pred) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha RPNo_least_rep L R (PNo_bd L R) (PNo_pred L R)
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha HaL HaR.
Apply PNo_bd_pred_lem L R HLR alpha Ha HaL HaR to the current goal.
Assume H _.
An exact proof term for the current goal is H.
Theorem. (PNo_bd_In) The following is provable:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha RPNo_bd L Rordsucc alpha
Proof:
Let L and R be given.
Assume HLR.
Let alpha be given.
Assume Ha HaL HaR.
Apply PNo_bd_pred L R HLR alpha Ha HaL HaR to the current goal.
Assume H1.
Apply H1 to the current goal.
Assume H1: ordinal (PNo_bd L R).
Assume H2: PNo_strict_imv L R (PNo_bd L R) (PNo_pred L R).
Assume H3: ∀gamma ∈ PNo_bd L R, ∀q : setprop, ¬ PNo_strict_imv L R gamma q.
Apply PNo_lenbdd_strict_imv_ex L R HLR alpha Ha HaL HaR to the current goal.
Let beta be given.
Assume H4.
Apply H4 to the current goal.
Assume Hb: betaordsucc alpha.
Assume H4.
Apply H4 to the current goal.
Let p be given.
Assume Hp: PNo_strict_imv L R beta p.
We prove the intermediate claim Lsa: ordinal (ordsucc alpha).
An exact proof term for the current goal is ordinal_ordsucc alpha Ha.
Apply ordinal_In_Or_Subq (PNo_bd L R) (ordsucc alpha) H1 Lsa to the current goal.
Assume H4: PNo_bd L Rordsucc alpha.
An exact proof term for the current goal is H4.
Assume H4: ordsucc alphaPNo_bd L R.
We will prove False.
We prove the intermediate claim Lb: betaPNo_bd L R.
Apply H4 to the current goal.
An exact proof term for the current goal is Hb.
Apply H3 beta Lb p to the current goal.
An exact proof term for the current goal is Hp.