Primitive. The name Eps_i is a term of type (setprop)set.
L2
Axiom. (Eps_i_ax) We take the following as an axiom:
∀P : setprop, ∀x : set, P xP (Eps_i P)
L3
Definition. We define True to be ∀p : prop, pp of type prop.
L4
Definition. We define False to be ∀p : prop, p of type prop.
L5
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.
L8
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.
L11
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.
L14
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
L18
Variable A : SType
L19
Definition. We define eq to be λx y : A∀Q : AAprop, Q x yQ y x of type AAprop.
L20
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
L26
Variable A B : SType
L27
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
L30
Variable A : SType
L31
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.
L35
Axiom. (prop_ext) We take the following as an axiom:
∀p q : prop, iff p qp = q
Primitive. 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.
L37
Definition. We define Subq to be λA B ⇒ ∀xA, x B 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.
L38
Axiom. (set_ext) We take the following as an axiom:
∀X Y : set, X YY XX = Y
L39
Axiom. (In_ind) We take the following as an axiom:
∀P : setprop, (∀X : set, (∀xX, 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.
Primitive. The name Empty is a term of type set.
L42
Axiom. (EmptyAx) We take the following as an axiom:
¬ ∃x : set, x Empty
Primitive. The name is a term of type setset.
L45
Axiom. (UnionEq) We take the following as an axiom:
∀X x, x X ∃Y, x Y Y X
Primitive. The name 𝒫 is a term of type setset.
L48
Axiom. (PowerEq) We take the following as an axiom:
∀X Y : set, Y 𝒫 X Y X
Primitive. The name Repl is a term of type set(setset)set.
Notation. {B| xA} is notation for Repl Ax . B).
L51
Axiom. (ReplEq) We take the following as an axiom:
∀A : set, ∀F : setset, ∀y : set, y {F x|xA} ∃xA, y = F x
L52
Definition. We define TransSet to be λU : set∀xU, x U of type setprop.
L53
Definition. We define Union_closed to be λU : set∀X : set, X U X U of type setprop.
L54
Definition. We define Power_closed to be λU : set∀X : set, X U𝒫 X U of type setprop.
L55
Definition. We define Repl_closed to be λU : set∀X : set, X U∀F : setset, (∀x : set, x XF x U){F x|xX} U of type setprop.
L57
Definition. We define ZF_closed to be λU : setUnion_closed U Power_closed U Repl_closed U of type setprop.
Primitive. The name UnivOf is a term of type setset.
L62
Axiom. (UnivOf_In) We take the following as an axiom:
∀N : set, N UnivOf N
L63
Axiom. (UnivOf_TransSet) We take the following as an axiom:
∀N : set, TransSet (UnivOf N)
L64
Axiom. (UnivOf_ZF_closed) We take the following as an axiom:
∀N : set, ZF_closed (UnivOf N)
L65
Axiom. (UnivOf_Min) We take the following as an axiom:
∀N U : set, N UTransSet UZF_closed UUnivOf N U
L69
Axiom. (andI) We take the following as an axiom:
∀A B : prop, ABA B
L71
Axiom. (orIL) We take the following as an axiom:
∀A B : prop, AA B
L73
Axiom. (orIR) We take the following as an axiom:
∀A B : prop, BA B
L75
Axiom. (iffI) We take the following as an axiom:
∀A B : prop, (AB)(BA)(A B)
L77
Axiom. (pred_ext) We take the following as an axiom:
∀P Q : setprop, (∀x, P x Q x)P = Q
L79
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.
L84
Axiom. (EmptyE) We take the following as an axiom:
∀x : set, x Empty
L86
Axiom. (PowerI) We take the following as an axiom:
∀X Y : set, Y XY 𝒫 X
L88
Axiom. (Subq_Empty) We take the following as an axiom:
∀X : set, Empty X
L90
Axiom. (Empty_In_Power) We take the following as an axiom:
∀X : set, Empty 𝒫 X
L92
Axiom. (xm) We take the following as an axiom:
∀P : prop, P ¬ P
L94
Axiom. (FalseE) We take the following as an axiom:
False∀p : prop, p
L96
Axiom. (andEL) We take the following as an axiom:
∀A B : prop, A BA
L98
Axiom. (andER) We take the following as an axiom:
∀A B : prop, A BB
Beginning of Section PropN
L102
Variable P1 P2 P3 : prop
L103
Axiom. (and3I) We take the following as an axiom:
P1P2P3P1 P2 P3
L105
Axiom. (and3E) We take the following as an axiom:
P1 P2 P3(∀p : prop, (P1P2P3p)p)
L107
Axiom. (or3I1) We take the following as an axiom:
P1P1 P2 P3
L109
Axiom. (or3I2) We take the following as an axiom:
P2P1 P2 P3
L111
Axiom. (or3I3) We take the following as an axiom:
P3P1 P2 P3
L113
Axiom. (or3E) We take the following as an axiom:
P1 P2 P3(∀p : prop, (P1p)(P2p)(P3p)p)
L115
Variable P4 : prop
L117
Axiom. (and4I) We take the following as an axiom:
P1P2P3P4P1 P2 P3 P4
L119
Variable P5 : prop
L121
Axiom. (and5I) We take the following as an axiom:
P1P2P3P4P5P1 P2 P3 P4 P5
L123
Variable P6 : prop
L125
Axiom. (and6I) We take the following as an axiom:
P1P2P3P4P5P6P1 P2 P3 P4 P5 P6
L127
Variable P7 : prop
L129
Axiom. (and7I) We take the following as an axiom:
P1P2P3P4P5P6P7P1 P2 P3 P4 P5 P6 P7
End of Section PropN
L133
Axiom. (not_or_and_demorgan) We take the following as an axiom:
∀A B : prop, ¬ (A B)¬ A ¬ B
L135
Axiom. (not_ex_all_demorgan_i) We take the following as an axiom:
∀P : setprop, (¬ ∃x, P x)∀x, ¬ P x
L137
Axiom. (iffEL) We take the following as an axiom:
∀A B : prop, (A B)AB
L139
Axiom. (iffER) We take the following as an axiom:
∀A B : prop, (A B)BA
L141
Axiom. (iff_refl) We take the following as an axiom:
∀A : prop, A A
L143
Axiom. (iff_sym) We take the following as an axiom:
∀A B : prop, (A B)(B A)
L145
Axiom. (iff_trans) We take the following as an axiom:
∀A B C : prop, (A B)(B C)(A C)
L147
Axiom. (eq_i_tra) We take the following as an axiom:
∀x y z, x = yy = zx = z
L149
Axiom. (neq_i_sym) We take the following as an axiom:
∀x y, x yy x
L151
Axiom. (Eps_i_ex) We take the following as an axiom:
∀P : setprop, (∃x, P x)P (Eps_i P)
L153
Axiom. (prop_ext_2) We take the following as an axiom:
∀p q : prop, (pq)(qp)p = q
L155
Axiom. (Subq_ref) We take the following as an axiom:
∀X : set, X X
L157
Axiom. (Subq_tra) We take the following as an axiom:
∀X Y Z : set, X YY ZX Z
L159
Axiom. (Empty_Subq_eq) We take the following as an axiom:
∀X : set, X EmptyX = Empty
L161
Axiom. (Empty_eq) We take the following as an axiom:
∀X : set, (∀x, x X)X = Empty
L163
Axiom. (UnionI) We take the following as an axiom:
∀X x Y : set, x YY Xx X
L165
Axiom. (UnionE) We take the following as an axiom:
∀X x : set, x X∃Y : set, x Y Y X
L167
Axiom. (UnionE_impred) We take the following as an axiom:
∀X x : set, x X∀p : prop, (∀Y : set, x YY Xp)p
L169
Axiom. (PowerE) We take the following as an axiom:
∀X Y : set, Y 𝒫 XY X
L171
Axiom. (Self_In_Power) We take the following as an axiom:
∀X : set, X 𝒫 X
L173
Axiom. (dneg) We take the following as an axiom:
∀P : prop, ¬ ¬ PP
L175
Axiom. (not_all_ex_demorgan_i) We take the following as an axiom:
∀P : setprop, ¬ (∀x, P x)∃x, ¬ P x
L177
Axiom. (eq_or_nand) We take the following as an axiom:
or = (λx y : prop¬ (¬ x ¬ y))
L181
Definition. We define exactly1of2 to be λA B : propA ¬ B ¬ A B of type proppropprop.
L183
Axiom. (exactly1of2_I1) We take the following as an axiom:
∀A B : prop, A¬ Bexactly1of2 A B
L185
Axiom. (exactly1of2_I2) We take the following as an axiom:
∀A B : prop, ¬ ABexactly1of2 A B
L187
Axiom. (exactly1of2_E) We take the following as an axiom:
∀A B : prop, exactly1of2 A B∀p : prop, (A¬ Bp)(¬ ABp)p
L193
Axiom. (exactly1of2_or) We take the following as an axiom:
∀A B : prop, exactly1of2 A BA B
L195
Axiom. (ReplI) We take the following as an axiom:
∀A : set, ∀F : setset, ∀x : set, x AF x {F x|xA}
L197
Axiom. (ReplE) We take the following as an axiom:
∀A : set, ∀F : setset, ∀y : set, y {F x|xA}∃xA, y = F x
L199
Axiom. (ReplE_impred) We take the following as an axiom:
∀A : set, ∀F : setset, ∀y : set, y {F x|xA}∀p : prop, (∀x : set, x Ay = F xp)p
L201
Axiom. (ReplE') We take the following as an axiom:
∀X, ∀f : setset, ∀p : setprop, (∀xX, p (f x))∀y{f x|xX}, p y
L203
Axiom. (Repl_Empty) We take the following as an axiom:
∀F : setset, {F x|xEmpty} = Empty
L205
Axiom. (ReplEq_ext_sub) We take the following as an axiom:
∀X, ∀F G : setset, (∀xX, F x = G x){F x|xX} {G x|xX}
L207
Axiom. (ReplEq_ext) We take the following as an axiom:
∀X, ∀F G : setset, (∀xX, F x = G x){F x|xX} = {G x|xX}
L209
Axiom. (Repl_inv_eq) We take the following as an axiom:
∀P : setprop, ∀f g : setset, (∀x, P xg (f x) = x)∀X, (∀xX, P x){g y|y{f x|xX}} = X
L213
Axiom. (Repl_invol_eq) We take the following as an axiom:
∀P : setprop, ∀f : setset, (∀x, P xf (f x) = x)∀X, (∀xX, P x){f y|y{f x|xX}} = X
L219
Definition. We define If_i to be (λp x y ⇒ Eps_i (λz : setp z = x ¬ p z = y)) 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.
L221
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
L224
Axiom. (If_i_0) We take the following as an axiom:
∀p : prop, ∀x y : set, ¬ p(if p then x else y) = y
L227
Axiom. (If_i_1) We take the following as an axiom:
∀p : prop, ∀x y : set, p(if p then x else y) = x
L230
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
L234
Definition. We define UPair to be λy z ⇒ {if Empty X then y else z|X𝒫 (𝒫 Empty)} of type setsetset.
Notation. {x,y} is notation for UPair x y.
L237
Axiom. (UPairE) We take the following as an axiom:
∀x y z : set, x {y,z}x = y x = z
L240
Axiom. (UPairI1) We take the following as an axiom:
∀y z : set, y {y,z}
L242
Axiom. (UPairI2) We take the following as an axiom:
∀y z : set, z {y,z}
L246
Definition. We define Sing to be λx ⇒ {x,x} of type setset.
Notation. {x} is notation for Sing x.
L248
Axiom. (SingI) We take the following as an axiom:
∀x : set, x {x}
L250
Axiom. (SingE) We take the following as an axiom:
∀x y : set, y {x}y = x
L252
Definition. We define binunion to be λX Y ⇒ {X,Y} of type setsetset.
Notation. We use as an infix operator with priority 345 and which associates to the left corresponding to applying term binunion.
L255
Axiom. (binunionI1) We take the following as an axiom:
∀X Y z : set, z Xz X Y
L257
Axiom. (binunionI2) We take the following as an axiom:
∀X Y z : set, z Yz X Y
L259
Axiom. (binunionE) We take the following as an axiom:
∀X Y z : set, z X Yz X z Y
L261
Axiom. (binunionE') We take the following as an axiom:
∀X Y z, ∀p : prop, (z Xp)(z Yp)(z X Yp)
L263
Axiom. (binunion_asso) We take the following as an axiom:
∀X Y Z : set, X (Y Z) = (X Y) Z
L265
Axiom. (binunion_com_Subq) We take the following as an axiom:
∀X Y : set, X Y Y X
L267
Axiom. (binunion_com) We take the following as an axiom:
∀X Y : set, X Y = Y X
L269
Axiom. (binunion_idl) We take the following as an axiom:
∀X : set, Empty X = X
L271
Axiom. (binunion_idr) We take the following as an axiom:
∀X : set, X Empty = X
L273
Axiom. (binunion_Subq_1) We take the following as an axiom:
∀X Y : set, X X Y
L275
Axiom. (binunion_Subq_2) We take the following as an axiom:
∀X Y : set, Y X Y
L277
Axiom. (binunion_Subq_min) We take the following as an axiom:
∀X Y Z : set, X ZY ZX Y Z
L279
Axiom. (Subq_binunion_eq) We take the following as an axiom:
∀X Y, (X Y) = (X Y = Y)
L281
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.
L285
Definition. We define famunion to be λX F ⇒ {F x|xX} of type set(setset)set.
Notation. We use x [possibly with ascriptions] , B as a binder notation corresponding to a term constructed using famunion.
L290
Axiom. (famunionI) We take the following as an axiom:
∀X : set, ∀F : (setset), ∀x y : set, x Xy F xy xXF x
L292
Axiom. (famunionE) We take the following as an axiom:
∀X : set, ∀F : (setset), ∀y : set, y (xXF x)∃xX, y F x
L294
Axiom. (famunionE_impred) We take the following as an axiom:
∀X : set, ∀F : (setset), ∀y : set, y (xXF x)∀p : prop, (∀x, x Xy F xp)p
L296
Axiom. (famunion_Empty) We take the following as an axiom:
∀F : setset, (xEmptyF x) = Empty
L298
Axiom. (famunion_Subq) We take the following as an axiom:
∀X, ∀f g : setset, (∀xX, f x g x)famunion X f famunion X g
L300
Axiom. (famunion_ext) We take the following as an axiom:
∀X, ∀f g : setset, (∀xX, f x = g x)famunion X f = famunion X g
Beginning of Section SepSec
L304
Variable X : set
L305
Variable P : setprop
L306
Let z : setEps_i (λz ⇒ z X P z)
L307
Let F : setsetλx ⇒ if P x then x else z
L309
End of Section SepSec
Notation. {xA | B} is notation for Sep Ax . B).
L313
Axiom. (SepI) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x XP xx {xX|P x}
L315
Axiom. (SepE) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x {xX|P x}x X P x
L317
Axiom. (SepE1) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x {xX|P x}x X
L319
Axiom. (SepE2) We take the following as an axiom:
∀X : set, ∀P : (setprop), ∀x : set, x {xX|P x}P x
L321
Axiom. (Sep_Empty) We take the following as an axiom:
∀P : setprop, {xEmpty|P x} = Empty
L323
Axiom. (Sep_Subq) We take the following as an axiom:
∀X : set, ∀P : setprop, {xX|P x} X
L325
Axiom. (Sep_In_Power) We take the following as an axiom:
∀X : set, ∀P : setprop, {xX|P x} 𝒫 X
L329
Definition. We define ReplSep to be λX P F ⇒ {F x|x{zX|P z}} of type set(setprop)(setset)set.
Notation. {B| xA, C} is notation for ReplSep Ax . C) (λ x . B).
L331
Axiom. (ReplSepI) We take the following as an axiom:
∀X : set, ∀P : setprop, ∀F : setset, ∀x : set, x XP xF x {F x|xX, P x}
L333
Axiom. (ReplSepE) We take the following as an axiom:
∀X : set, ∀P : setprop, ∀F : setset, ∀y : set, y {F x|xX, P x}∃x : set, x X P x y = F x
L335
Axiom. (ReplSepE_impred) We take the following as an axiom:
∀X : set, ∀P : setprop, ∀F : setset, ∀y : set, y {F x|xX, P x}∀p : prop, (∀xX, P xy = F xp)p
L339
Definition. We define binintersect to be λX Y ⇒ {xX|x Y} of type setsetset.
Notation. We use as an infix operator with priority 340 and which associates to the left corresponding to applying term binintersect.
L343
Axiom. (binintersectI) We take the following as an axiom:
∀X Y z, z Xz Yz X Y
L345
Axiom. (binintersectE) We take the following as an axiom:
∀X Y z, z X Yz X z Y
L347
Axiom. (binintersectE1) We take the following as an axiom:
∀X Y z, z X Yz X
L349
Axiom. (binintersectE2) We take the following as an axiom:
∀X Y z, z X Yz Y
L351
Axiom. (binintersect_Subq_1) We take the following as an axiom:
∀X Y : set, X Y X
L353
Axiom. (binintersect_Subq_2) We take the following as an axiom:
∀X Y : set, X Y Y
L355
Axiom. (binintersect_Subq_eq_1) We take the following as an axiom:
∀X Y, X YX Y = X
L357
Axiom. (binintersect_Subq_max) We take the following as an axiom:
∀X Y Z : set, Z XZ YZ X Y
L359
Axiom. (binintersect_com_Subq) We take the following as an axiom:
∀X Y : set, X Y Y X
L361
Axiom. (binintersect_com) We take the following as an axiom:
∀X Y : set, X Y = Y X
L365
Definition. We define setminus to be λX Y ⇒ Sep X (λx ⇒ x Y) of type setsetset.
Notation. We use as an infix operator with priority 350 and no associativity corresponding to applying term setminus.
L369
Axiom. (setminusI) We take the following as an axiom:
∀X Y z, (z X)(z Y)z X Y
L371
Axiom. (setminusE) We take the following as an axiom:
∀X Y z, (z X Y)z X z Y
L373
Axiom. (setminusE1) We take the following as an axiom:
∀X Y z, (z X Y)z X
L375
Axiom. (setminusE2) We take the following as an axiom:
∀X Y z, (z X Y)z Y
L377
Axiom. (setminus_Subq) We take the following as an axiom:
∀X Y : set, X Y X
L379
Axiom. (setminus_In_Power) We take the following as an axiom:
∀A U, A U 𝒫 A
L381
Axiom. (binunion_remove1_eq) We take the following as an axiom:
∀X, ∀xX, X = (X {x}) {x}
L383
Axiom. (In_irref) We take the following as an axiom:
∀x, x x
L385
Axiom. (In_no2cycle) We take the following as an axiom:
∀x y, x yy xFalse
L389
Definition. We define ordsucc to be λx : setx {x} of type setset.
L390
Axiom. (ordsuccI1) We take the following as an axiom:
∀x : set, x ordsucc x
L392
Axiom. (ordsuccI2) We take the following as an axiom:
∀x : set, x ordsucc x
L394
Axiom. (ordsuccE) We take the following as an axiom:
∀x y : set, y ordsucc xy x y = x
Notation. Natural numbers 0,1,2,... are notation for the terms formed using Empty as 0 and forming successors with ordsucc.
L398
Axiom. (neq_0_ordsucc) We take the following as an axiom:
∀a : set, 0 ordsucc a
L400
Axiom. (neq_ordsucc_0) We take the following as an axiom:
∀a : set, ordsucc a 0
L402
Axiom. (ordsucc_inj) We take the following as an axiom:
∀a b : set, ordsucc a = ordsucc ba = b
L404
Axiom. (In_0_1) We take the following as an axiom:
L406
Axiom. (In_0_2) We take the following as an axiom:
L408
Axiom. (In_1_2) We take the following as an axiom:
L410
Definition. We define nat_p to be λn : set∀p : setprop, p 0(∀x : set, p xp (ordsucc x))p n of type setprop.
L412
Axiom. (nat_0) We take the following as an axiom:
L414
Axiom. (nat_ordsucc) We take the following as an axiom:
∀n : set, nat_p nnat_p (ordsucc n)
L416
Axiom. (nat_1) We take the following as an axiom:
L418
Axiom. (nat_2) We take the following as an axiom:
L420
Axiom. (nat_0_in_ordsucc) We take the following as an axiom:
∀n, nat_p n0 ordsucc n
L422
Axiom. (nat_ordsucc_in_ordsucc) We take the following as an axiom:
∀n, nat_p n∀mn, ordsucc m ordsucc n
L424
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
L426
Axiom. (nat_complete_ind) We take the following as an axiom:
∀p : setprop, (∀n, nat_p n(∀mn, p m)p n)∀n, nat_p np n
L428
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
L430
Axiom. (nat_inv) We take the following as an axiom:
∀n, nat_p nn = 0 ∃x, nat_p x n = ordsucc x
L432
Axiom. (nat_p_trans) We take the following as an axiom:
∀n, nat_p n∀mn, nat_p m
L434
Axiom. (nat_trans) We take the following as an axiom:
∀n, nat_p n∀mn, m n
L436
Axiom. (nat_ordsucc_trans) We take the following as an axiom:
∀n, nat_p n∀mordsucc n, m n
L438
Definition. We define surj to be λX Y f ⇒ (∀uX, f u Y) (∀wY, ∃uX, f u = w) of type setset(setset)prop.
L444
Axiom. (form100_63_surjCantor) We take the following as an axiom:
∀A : set, ∀f : setset, ¬ surj A (𝒫 A) f
L446
Definition. We define inj to be λX Y f ⇒ (∀uX, f u Y) (∀u vX, f u = f vu = v) of type setset(setset)prop.
L452
Axiom. (form100_63_injCantor) We take the following as an axiom:
∀A : set, ∀f : setset, ¬ inj (𝒫 A) A f
L454
Axiom. (injI) We take the following as an axiom:
∀X Y, ∀f : setset, (∀xX, f x Y)(∀x zX, f x = f zx = z)inj X Y f
L456
Axiom. (inj_comp) We take the following as an axiom:
∀X Y Z : set, ∀f g : setset, inj X Y finj Y Z ginj X Z (λx ⇒ g (f x))
L458
Definition. We define bij to be λX Y f ⇒ (∀uX, f u Y) (∀u vX, f u = f vu = v) (∀wY, ∃uX, f u = w) of type setset(setset)prop.
L466
Axiom. (bijI) We take the following as an axiom:
∀X Y, ∀f : setset, (∀uX, f u Y)(∀u vX, f u = f vu = v)(∀wY, ∃uX, f u = w)bij X Y f
L472
Axiom. (bijE) We take the following as an axiom:
∀X Y, ∀f : setset, bij X Y f∀p : prop, ((∀uX, f u Y)(∀u vX, f u = f vu = v)(∀wY, ∃uX, f u = w)p)p
L481
Axiom. (bij_inj) We take the following as an axiom:
∀X Y, ∀f : setset, bij X Y finj X Y f
L483
Axiom. (bij_id) We take the following as an axiom:
∀X, bij X X (λx ⇒ x)
L485
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))
L487
Axiom. (bij_surj) We take the following as an axiom:
∀X Y, ∀f : setset, bij X Y fsurj X Y f
L489
Definition. We define inv to be λX f ⇒ λy : setEps_i (λx ⇒ x X f x = y) of type set(setset)setset.
L491
Axiom. (surj_rinv) We take the following as an axiom:
∀X Y, ∀f : setset, (∀wY, ∃uX, f u = w)∀yY, inv X f y X f (inv X f y) = y
L493
Axiom. (inj_linv) We take the following as an axiom:
∀X, ∀f : setset, (∀u vX, f u = f vu = v)∀xX, inv X f (f x) = x
L495
Axiom. (bij_inv) We take the following as an axiom:
∀X Y, ∀f : setset, bij X Y fbij Y X (inv X f)
L497
Definition. We define atleastp to be λX Y : set∃f : setset, inj X Y f of type setsetprop.
L500
Axiom. (atleastp_tra) We take the following as an axiom:
∀X Y Z, atleastp X Yatleastp Y Zatleastp X Z
L502
Axiom. (Subq_atleastp) We take the following as an axiom:
∀X Y, X Yatleastp X Y
L504
Definition. We define equip to be λX Y : set∃f : setset, bij X Y f of type setsetprop.
L507
Axiom. (equip_atleastp) We take the following as an axiom:
∀X Y, equip X Yatleastp X Y
L509
Axiom. (equip_ref) We take the following as an axiom:
∀X, equip X X
L511
Axiom. (equip_sym) We take the following as an axiom:
∀X Y, equip X Yequip Y X
L513
Axiom. (equip_tra) We take the following as an axiom:
∀X Y Z, equip X Yequip Y Zequip X Z
L515
Axiom. (equip_0_Empty) We take the following as an axiom:
∀X, equip X 0X = 0
L517
Axiom. (equip_adjoin_ordsucc) We take the following as an axiom:
∀N X y, y Xequip N Xequip (ordsucc N) (X {y})
L519
Axiom. (equip_ordsucc_remove1) We take the following as an axiom:
∀X N, ∀xX, equip X (ordsucc N)equip (X {x}) N
Beginning of Section SchroederBernstein
L523
Axiom. (KnasterTarski_set) We take the following as an axiom:
∀A, ∀F : setset, (∀U𝒫 A, F U 𝒫 A)(∀U V𝒫 A, U VF U F V)∃Y𝒫 A, F Y = Y
L528
Axiom. (image_In_Power) We take the following as an axiom:
∀A B, ∀f : setset, (∀xA, f x B)∀U𝒫 A, {f x|xU} 𝒫 B
L530
Axiom. (image_monotone) We take the following as an axiom:
∀f : setset, ∀U V, U V{f x|xU} {f x|xV}
L532
Axiom. (setminus_antimonotone) We take the following as an axiom:
∀A U V, U VA V A U
L534
Axiom. (SchroederBernstein) We take the following as an axiom:
∀A B, ∀f g : setset, inj A B finj B A gequip A B
L536
Axiom. (atleastp_antisym_equip) We take the following as an axiom:
∀A B, atleastp A Batleastp B Aequip A B
End of Section SchroederBernstein
Beginning of Section PigeonHole
L542
Axiom. (PigeonHole_nat) We take the following as an axiom:
∀n, nat_p n∀f : setset, (∀iordsucc n, f i n)¬ (∀i jordsucc n, f i = f ji = j)
L544
Axiom. (Pigeonhole_not_atleastp_ordsucc) We take the following as an axiom:
∀n, nat_p n¬ atleastp (ordsucc n) n
End of Section PigeonHole
L548
Axiom. (Union_ordsucc_eq) We take the following as an axiom:
∀n, nat_p n (ordsucc n) = n
L550
Axiom. (cases_1) We take the following as an axiom:
∀i1, ∀p : setprop, p 0p i
L552
Axiom. (cases_2) We take the following as an axiom:
∀i2, ∀p : setprop, p 0p 1p i
L554
Axiom. (neq_0_1) We take the following as an axiom:
L556
Axiom. (neq_1_0) We take the following as an axiom:
L558
Axiom. (neq_0_2) We take the following as an axiom:
L560
Axiom. (neq_2_0) We take the following as an axiom:
L562
Definition. We define ordinal to be λalpha : setTransSet alpha ∀betaalpha, TransSet beta of type setprop.
L564
Axiom. (ordinal_TransSet) We take the following as an axiom:
∀alpha : set, ordinal alphaTransSet alpha
L566
Axiom. (ordinal_Empty) We take the following as an axiom:
L568
Axiom. (ordinal_Hered) We take the following as an axiom:
∀alpha : set, ordinal alpha∀betaalpha, ordinal beta
L570
Axiom. (TransSet_ordsucc) We take the following as an axiom:
∀X : set, TransSet XTransSet (ordsucc X)
L572
Axiom. (ordinal_ordsucc) We take the following as an axiom:
∀alpha : set, ordinal alphaordinal (ordsucc alpha)
L574
Axiom. (nat_p_ordinal) We take the following as an axiom:
∀n : set, nat_p nordinal n
L576
Axiom. (ordinal_1) We take the following as an axiom:
L578
Axiom. (ordinal_2) We take the following as an axiom:
L580
Axiom. (TransSet_ordsucc_In_Subq) We take the following as an axiom:
∀X : set, TransSet X∀xX, ordsucc x X
L582
Axiom. (ordinal_ordsucc_In_Subq) We take the following as an axiom:
∀alpha, ordinal alpha∀betaalpha, ordsucc beta alpha
L584
Axiom. (ordinal_trichotomy_or) We take the following as an axiom:
∀alpha beta : set, ordinal alphaordinal betaalpha beta alpha = beta beta alpha
L586
Axiom. (ordinal_trichotomy_or_impred) We take the following as an axiom:
∀alpha beta : set, ordinal alphaordinal beta∀p : prop, (alpha betap)(alpha = betap)(beta alphap)p
L589
Axiom. (ordinal_In_Or_Subq) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalpha beta beta alpha
L591
Axiom. (ordinal_linear) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalpha beta beta alpha
L593
Axiom. (ordinal_ordsucc_In_eq) We take the following as an axiom:
∀alpha beta, ordinal alphabeta alphaordsucc beta alpha alpha = ordsucc beta
L595
Axiom. (ordinal_lim_or_succ) We take the following as an axiom:
∀alpha, ordinal alpha(∀betaalpha, ordsucc beta alpha) (∃betaalpha, alpha = ordsucc beta)
L597
Axiom. (ordinal_ordsucc_In) We take the following as an axiom:
∀alpha, ordinal alpha∀betaalpha, ordsucc beta ordsucc alpha
L599
Axiom. (ordinal_famunion) We take the following as an axiom:
∀X, ∀F : setset, (∀xX, ordinal (F x))ordinal (xXF x)
L601
Axiom. (ordinal_binintersect) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaordinal (alpha beta)
L603
Axiom. (ordinal_binunion) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaordinal (alpha beta)
L605
Axiom. (ordinal_ind) We take the following as an axiom:
∀p : setprop, (∀alpha, ordinal alpha(∀betaalpha, p beta)p alpha)∀alpha, ordinal alphap alpha
L610
Axiom. (least_ordinal_ex) We take the following as an axiom:
∀p : setprop, (∃alpha, ordinal alpha p alpha)∃alpha, ordinal alpha p alpha ∀betaalpha, ¬ p beta
L612
Axiom. (equip_Sing_1) We take the following as an axiom:
∀x, equip {x} 1
L614
Axiom. (TransSet_In_ordsucc_Subq) We take the following as an axiom:
∀x y, TransSet yx ordsucc yx y
L616
Axiom. (exandE_i) We take the following as an axiom:
∀P Q : setprop, (∃x, P x Q x)∀r : prop, (∀x, P xQ xr)r
L618
Axiom. (exandE_ii) We take the following as an axiom:
∀P Q : (setset)prop, (∃x : setset, P x Q x)∀p : prop, (∀x : setset, P xQ xp)p
L620
Axiom. (exandE_iii) We take the following as an axiom:
∀P Q : (setsetset)prop, (∃x : setsetset, P x Q x)∀p : prop, (∀x : setsetset, P xQ xp)p
L622
Axiom. (exandE_iiii) We take the following as an axiom:
∀P Q : (setsetsetset)prop, (∃x : setsetsetset, P x Q x)∀p : prop, (∀x : setsetsetset, P xQ xp)p
Beginning of Section Descr_ii
L626
Variable P : (setset)prop
L628
Definition. We define Descr_ii to be λx : setEps_i (λy ⇒ ∀h : setset, P hh x = y) of type setset.
L629
Hypothesis Pex : ∃f : setset, P f
L630
Hypothesis Puniq : ∀f g : setset, P fP gf = g
L631
Axiom. (Descr_ii_prop) We take the following as an axiom:
End of Section Descr_ii
Beginning of Section Descr_iii
L637
Variable P : (setsetset)prop
L639
Definition. We define Descr_iii to be λx y : setEps_i (λz ⇒ ∀h : setsetset, P hh x y = z) of type setsetset.
L640
Hypothesis Pex : ∃f : setsetset, P f
L641
Hypothesis Puniq : ∀f g : setsetset, P fP gf = g
L642
Axiom. (Descr_iii_prop) We take the following as an axiom:
End of Section Descr_iii
Beginning of Section Descr_Vo1
L648
Variable P : Vo 1prop
L650
Definition. We define Descr_Vo1 to be λx : set∀h : setprop, P hh x of type Vo 1.
L651
Hypothesis Pex : ∃f : Vo 1, P f
L652
Hypothesis Puniq : ∀f g : Vo 1, P fP gf = g
L653
Axiom. (Descr_Vo1_prop) We take the following as an axiom:
End of Section Descr_Vo1
Beginning of Section If_ii
L659
Variable p : prop
L660
Variable f g : setset
L662
Definition. We define If_ii to be λx ⇒ if p then f x else g x of type setset.
L663
Axiom. (If_ii_1) We take the following as an axiom:
pIf_ii = f
L665
Axiom. (If_ii_0) We take the following as an axiom:
¬ pIf_ii = g
End of Section If_ii
Beginning of Section If_iii
L671
Variable p : prop
L672
Variable f g : setsetset
L674
Definition. We define If_iii to be λx y ⇒ if p then f x y else g x y of type setsetset.
L675
Axiom. (If_iii_1) We take the following as an axiom:
pIf_iii = f
L677
Axiom. (If_iii_0) We take the following as an axiom:
¬ pIf_iii = g
End of Section If_iii
Beginning of Section EpsilonRec_i
L683
Variable F : set(setset)set
L684
Definition. We define In_rec_i_G to be λX Y ⇒ ∀R : setsetprop, (∀X : set, ∀f : setset, (∀xX, R x (f x))R X (F X f))R X Y of type setsetprop.
L690
Definition. We define In_rec_i to be λX ⇒ Eps_i (In_rec_i_G X) of type setset.
L691
Axiom. (In_rec_i_G_c) We take the following as an axiom:
∀X : set, ∀f : setset, (∀xX, In_rec_i_G x (f x))In_rec_i_G X (F X f)
L693
Axiom. (In_rec_i_G_inv) We take the following as an axiom:
∀X : set, ∀Y : set, In_rec_i_G X Y∃f : setset, (∀xX, In_rec_i_G x (f x)) Y = F X f
L695
Hypothesis Fr : ∀X : set, ∀g h : setset, (∀xX, g x = h x)F X g = F X h
L697
Axiom. (In_rec_i_G_f) We take the following as an axiom:
∀X : set, ∀Y Z : set, In_rec_i_G X YIn_rec_i_G X ZY = Z
L699
Axiom. (In_rec_i_G_In_rec_i) We take the following as an axiom:
∀X : set, In_rec_i_G X (In_rec_i X)
L701
Axiom. (In_rec_i_G_In_rec_i_d) We take the following as an axiom:
∀X : set, In_rec_i_G X (F X In_rec_i)
L703
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
L709
Variable F : set(set(setset))(setset)
L710
Definition. We define In_rec_G_ii to be λX Y ⇒ ∀R : set(setset)prop, (∀X : set, ∀f : set(setset), (∀xX, R x (f x))R X (F X f))R X Y of type set(setset)prop.
L716
Definition. We define In_rec_ii to be λX ⇒ Descr_ii (In_rec_G_ii X) of type set(setset).
L717
Axiom. (In_rec_G_ii_c) We take the following as an axiom:
∀X : set, ∀f : set(setset), (∀xX, In_rec_G_ii x (f x))In_rec_G_ii X (F X f)
L719
Axiom. (In_rec_G_ii_inv) We take the following as an axiom:
∀X : set, ∀Y : (setset), In_rec_G_ii X Y∃f : set(setset), (∀xX, In_rec_G_ii x (f x)) Y = F X f
L721
Hypothesis Fr : ∀X : set, ∀g h : set(setset), (∀xX, g x = h x)F X g = F X h
L723
Axiom. (In_rec_G_ii_f) We take the following as an axiom:
∀X : set, ∀Y Z : (setset), In_rec_G_ii X YIn_rec_G_ii X ZY = Z
L725
Axiom. (In_rec_G_ii_In_rec_ii) We take the following as an axiom:
∀X : set, In_rec_G_ii X (In_rec_ii X)
L727
Axiom. (In_rec_G_ii_In_rec_ii_d) We take the following as an axiom:
∀X : set, In_rec_G_ii X (F X In_rec_ii)
L729
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
L735
Variable F : set(set(setsetset))(setsetset)
L736
Definition. We define In_rec_G_iii to be λX Y ⇒ ∀R : set(setsetset)prop, (∀X : set, ∀f : set(setsetset), (∀xX, R x (f x))R X (F X f))R X Y of type set(setsetset)prop.
L742
Definition. We define In_rec_iii to be λX ⇒ Descr_iii (In_rec_G_iii X) of type set(setsetset).
L743
Axiom. (In_rec_G_iii_c) We take the following as an axiom:
∀X : set, ∀f : set(setsetset), (∀xX, In_rec_G_iii x (f x))In_rec_G_iii X (F X f)
L745
Axiom. (In_rec_G_iii_inv) We take the following as an axiom:
∀X : set, ∀Y : (setsetset), In_rec_G_iii X Y∃f : set(setsetset), (∀xX, In_rec_G_iii x (f x)) Y = F X f
L747
Hypothesis Fr : ∀X : set, ∀g h : set(setsetset), (∀xX, g x = h x)F X g = F X h
L749
Axiom. (In_rec_G_iii_f) We take the following as an axiom:
∀X : set, ∀Y Z : (setsetset), In_rec_G_iii X YIn_rec_G_iii X ZY = Z
L751
Axiom. (In_rec_G_iii_In_rec_iii) We take the following as an axiom:
∀X : set, In_rec_G_iii X (In_rec_iii X)
L753
Axiom. (In_rec_G_iii_In_rec_iii_d) We take the following as an axiom:
∀X : set, In_rec_G_iii X (F X In_rec_iii)
L755
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
L761
Variable z : set
L762
Variable f : setsetset
L763
Let F : set(setset)setλn g ⇒ if n n then f ( n) (g ( n)) else z
L764
Definition. We define nat_primrec to be In_rec_i F of type setset.
L765
Axiom. (nat_primrec_r) We take the following as an axiom:
∀X : set, ∀g h : setset, (∀xX, g x = h x)F X g = F X h
L767
Axiom. (nat_primrec_0) We take the following as an axiom:
L769
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 NatAdd
L775
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.
L778
Axiom. (add_nat_0R) We take the following as an axiom:
∀n : set, n + 0 = n
L780
Axiom. (add_nat_SR) We take the following as an axiom:
∀n m : set, nat_p mn + ordsucc m = ordsucc (n + m)
L782
Axiom. (add_nat_p) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mnat_p (n + m)
L784
Axiom. (add_nat_1_1_2) We take the following as an axiom:
1 + 1 = 2
L786
Axiom. (add_nat_asso) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p m∀k : set, nat_p k(n + m) + k = n + (m + k)
L788
Axiom. (add_nat_0L) We take the following as an axiom:
∀m : set, nat_p m0 + m = m
L790
Axiom. (add_nat_SL) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mordsucc n + m = ordsucc (n + m)
L792
Axiom. (add_nat_com) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mn + m = m + n
L794
Axiom. (add_nat_In_R) We take the following as an axiom:
∀m, nat_p m∀km, ∀n, nat_p nk + n m + n
L796
Axiom. (add_nat_In_L) We take the following as an axiom:
∀n, nat_p n∀m, nat_p m∀km, n + k n + m
L798
Axiom. (add_nat_Subq_R) We take the following as an axiom:
∀k, nat_p k∀m, nat_p mk m∀n, nat_p nk + n m + n
L800
Axiom. (add_nat_Subq_L) We take the following as an axiom:
∀n, nat_p n∀k, nat_p k∀m, nat_p mk mn + k n + m
L802
Axiom. (add_nat_Subq_R') We take the following as an axiom:
∀m, nat_p m∀n, nat_p nm m + n
L804
Axiom. (nat_Subq_add_ex) We take the following as an axiom:
∀n, nat_p n∀m, nat_p mn m∃k, nat_p k m = k + n
L806
Axiom. (add_nat_cancel_R) We take the following as an axiom:
∀k, nat_p k∀m, nat_p m∀n, nat_p nk + n = m + nk = m
End of Section NatAdd
Beginning of Section NatMul
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_nat.
L814
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.
L817
Axiom. (mul_nat_0R) We take the following as an axiom:
∀n : set, n * 0 = 0
L819
Axiom. (mul_nat_SR) We take the following as an axiom:
∀n m, nat_p mn * ordsucc m = n + n * m
L821
Axiom. (mul_nat_1R) We take the following as an axiom:
∀n, n * 1 = n
L823
Axiom. (mul_nat_p) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mnat_p (n * m)
L825
Axiom. (mul_nat_0L) We take the following as an axiom:
∀m : set, nat_p m0 * m = 0
L827
Axiom. (mul_nat_SL) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mordsucc n * m = n * m + m
L829
Axiom. (mul_nat_com) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p mn * m = m * n
L831
Axiom. (mul_add_nat_distrL) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p m∀k : set, nat_p kn * (m + k) = n * m + n * k
L833
Axiom. (mul_nat_asso) We take the following as an axiom:
∀n : set, nat_p n∀m : set, nat_p m∀k : set, nat_p k(n * m) * k = n * (m * k)
L835
Axiom. (mul_nat_Subq_R) We take the following as an axiom:
∀m n, nat_p mnat_p nm n∀k, nat_p km * k n * k
L837
Axiom. (mul_nat_Subq_L) We take the following as an axiom:
∀m n, nat_p mnat_p nm n∀k, nat_p kk * m k * n
L839
Axiom. (mul_nat_0_or_Subq) We take the following as an axiom:
∀m, nat_p m∀n, nat_p nn = 0 m m * n
L841
Axiom. (mul_nat_0_inv) We take the following as an axiom:
∀m, nat_p m∀n, nat_p nm * n = 0m = 0 n = 0
L844
Axiom. (mul_nat_0m_1n_In) We take the following as an axiom:
∀m, nat_p m∀n, nat_p n0 m1 nm m * n
L846
Axiom. (nat_le1_cases) We take the following as an axiom:
∀m, nat_p mm 1m = 0 m = 1
L848
Definition. We define Pi_nat to be λf n ⇒ nat_primrec 1 (λi r ⇒ r * f i) n of type (setset)setset.
L851
Axiom. (Pi_nat_0) We take the following as an axiom:
∀f : setset, Pi_nat f 0 = 1
L853
Axiom. (Pi_nat_S) We take the following as an axiom:
∀f : setset, ∀n, nat_p nPi_nat f (ordsucc n) = Pi_nat f n * f n
L855
Axiom. (Pi_nat_p) We take the following as an axiom:
∀f : setset, ∀n, nat_p n(∀in, nat_p (f i))nat_p (Pi_nat f n)
L860
Axiom. (Pi_nat_0_inv) We take the following as an axiom:
∀f : setset, ∀n, nat_p n(∀in, nat_p (f i))Pi_nat f n = 0(∃in, f i = 0)
End of Section NatMul
L868
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
L875
Axiom. (ZF_Union_closed) We take the following as an axiom:
∀U, ZF_closed U∀XU, X U
L878
Axiom. (ZF_Power_closed) We take the following as an axiom:
∀U, ZF_closed U∀XU, 𝒫 X U
L881
Axiom. (ZF_Repl_closed) We take the following as an axiom:
∀U, ZF_closed U∀XU, ∀F : setset, (∀xX, F x U){F x|xX} U
L884
Axiom. (ZF_UPair_closed) We take the following as an axiom:
∀U, ZF_closed U∀x yU, {x,y} U
L887
Axiom. (ZF_Sing_closed) We take the following as an axiom:
∀U, ZF_closed U∀xU, {x} U
L890
Axiom. (ZF_binunion_closed) We take the following as an axiom:
∀U, ZF_closed U∀X YU, (X Y) U
L893
Axiom. (ZF_ordsucc_closed) We take the following as an axiom:
∀U, ZF_closed U∀xU, ordsucc x U
L896
Axiom. (nat_p_UnivOf_Empty) We take the following as an axiom:
∀n : set, nat_p nn UnivOf Empty
L901
Definition. We define ω to be {nUnivOf Empty|nat_p n} of type set.
L902
Axiom. (omega_nat_p) We take the following as an axiom:
∀nω, nat_p n
L904
Axiom. (nat_p_omega) We take the following as an axiom:
∀n : set, nat_p nn ω
L906
Axiom. (omega_ordsucc) We take the following as an axiom:
L908
Axiom. (form100_22_v2) We take the following as an axiom:
∀f : setset, ¬ inj (𝒫 ω) ω f
L910
Axiom. (form100_22_v3) We take the following as an axiom:
∀g : setset, ¬ surj ω (𝒫 ω) g
L912
Axiom. (form100_22_v1) We take the following as an axiom:
L914
Axiom. (omega_TransSet) We take the following as an axiom:
L916
Axiom. (omega_ordinal) We take the following as an axiom:
L918
Axiom. (ordsucc_omega_ordinal) We take the following as an axiom:
L920
Definition. We define finite to be λX ⇒ ∃nω, equip X n of type setprop.
L922
Axiom. (nat_finite) We take the following as an axiom:
∀n, nat_p nfinite n
L924
Axiom. (finite_ind) We take the following as an axiom:
∀p : setprop, p Empty(∀X y, finite Xy Xp Xp (X {y}))∀X, finite Xp X
L929
Axiom. (finite_Empty) We take the following as an axiom:
L931
Axiom. (Sing_finite) We take the following as an axiom:
∀x, finite {x}
L933
Axiom. (adjoin_finite) We take the following as an axiom:
∀X y, finite Xfinite (X {y})
L935
Axiom. (binunion_finite) We take the following as an axiom:
∀X, finite X∀Y, finite Yfinite (X Y)
L937
Axiom. (famunion_nat_finite) We take the following as an axiom:
∀X : setset, ∀n, nat_p n(∀in, finite (X i))finite (inX i)
L939
Axiom. (Subq_finite) We take the following as an axiom:
∀X, finite X∀Y, Y Xfinite Y
L941
Definition. We define infinite to be λA ⇒ ¬ finite A of type setprop.
Beginning of Section InfinitePrimes
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_nat.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_nat.
L948
Definition. We define divides_nat to be λm n ⇒ m ω n ω ∃kω, m * k = n of type setsetprop.
L951
Axiom. (divides_nat_ref) We take the following as an axiom:
∀n, nat_p ndivides_nat n n
L953
Axiom. (divides_nat_tra) We take the following as an axiom:
∀k m n, divides_nat k mdivides_nat m ndivides_nat k n
L955
Definition. We define prime_nat to be λn ⇒ n ω 1 n ∀kω, divides_nat k nk = 1 k = n of type setprop.
L958
Axiom. (divides_nat_mulR) We take the following as an axiom:
∀m nω, divides_nat m (m * n)
L960
Axiom. (divides_nat_mulL) We take the following as an axiom:
∀m nω, divides_nat n (m * n)
L962
Axiom. (Pi_nat_divides) We take the following as an axiom:
∀f : setset, ∀n, nat_p n(∀in, nat_p (f i))(∀in, divides_nat (f i) (Pi_nat f n))
L967
Definition. We define composite_nat to be λn ⇒ n ω ∃k mω, 1 k 1 m k * m = n of type setprop.
L970
Axiom. (prime_nat_or_composite_nat) We take the following as an axiom:
L972
Axiom. (prime_nat_divisor_ex) We take the following as an axiom:
∀n, nat_p n1 n∃p, prime_nat p divides_nat p n
L974
Axiom. (nat_1In_not_divides_ordsucc) We take the following as an axiom:
∀m n, 1 mdivides_nat m n¬ divides_nat m (ordsucc n)
L976
L978
Axiom. (form100_11_infinite_primes) We take the following as an axiom:
End of Section InfinitePrimes
L982
Definition. We define Inj1 to be In_rec_i (λX f ⇒ {0} {f x|xX}) of type setset.
L985
Axiom. (Inj1_eq) We take the following as an axiom:
∀X : set, Inj1 X = {0} {Inj1 x|xX}
L987
Axiom. (Inj1I1) We take the following as an axiom:
∀X : set, 0 Inj1 X
L989
Axiom. (Inj1I2) We take the following as an axiom:
∀X x : set, x XInj1 x Inj1 X
L991
Axiom. (Inj1E) We take the following as an axiom:
∀X y : set, y Inj1 Xy = 0 ∃xX, y = Inj1 x
L993
Axiom. (Inj1NE1) We take the following as an axiom:
∀x : set, Inj1 x 0
L995
Axiom. (Inj1NE2) We take the following as an axiom:
∀x : set, Inj1 x {0}
L997
Definition. We define Inj0 to be λX ⇒ {Inj1 x|xX} of type setset.
L1000
Axiom. (Inj0I) We take the following as an axiom:
∀X x : set, x XInj1 x Inj0 X
L1002
Axiom. (Inj0E) We take the following as an axiom:
∀X y : set, y Inj0 X∃x : set, x X y = Inj1 x
L1004
Definition. We define Unj to be In_rec_i (λX f ⇒ {f x|xX {0}}) of type setset.
L1007
Axiom. (Unj_eq) We take the following as an axiom:
∀X : set, Unj X = {Unj x|xX {0}}
L1009
Axiom. (Unj_Inj1_eq) We take the following as an axiom:
∀X : set, Unj (Inj1 X) = X
L1011
Axiom. (Inj1_inj) We take the following as an axiom:
∀X Y : set, Inj1 X = Inj1 YX = Y
L1013
Axiom. (Unj_Inj0_eq) We take the following as an axiom:
∀X : set, Unj (Inj0 X) = X
L1015
Axiom. (Inj0_inj) We take the following as an axiom:
∀X Y : set, Inj0 X = Inj0 YX = Y
L1017
Axiom. (Inj0_0) We take the following as an axiom:
L1019
Axiom. (Inj0_Inj1_neq) We take the following as an axiom:
∀X Y : set, Inj0 X Inj1 Y
L1021
Definition. We define setsum to be λX Y ⇒ {Inj0 x|xX} {Inj1 y|yY} of type setsetset.
Notation. We use + as an infix operator with priority 450 and which associates to the left corresponding to applying term setsum.
L1026
Axiom. (Inj0_setsum) We take the following as an axiom:
∀X Y x : set, x XInj0 x X + Y
L1028
Axiom. (Inj1_setsum) We take the following as an axiom:
∀X Y y : set, y YInj1 y X + Y
L1030
Axiom. (setsum_Inj_inv) We take the following as an axiom:
∀X Y z : set, z X + Y(∃xX, z = Inj0 x) (∃yY, z = Inj1 y)
L1032
Axiom. (Inj0_setsum_0L) We take the following as an axiom:
∀X : set, 0 + X = Inj0 X
L1034
Axiom. (Inj1_setsum_1L) We take the following as an axiom:
∀X : set, 1 + X = Inj1 X
Beginning of Section pair_setsum
L1038
Let pair ≝ setsum
L1039
Definition. We define proj0 to be λZ ⇒ {Unj z|zZ, ∃x : set, Inj0 x = z} of type setset.
L1040
Definition. We define proj1 to be λZ ⇒ {Unj z|zZ, ∃y : set, Inj1 y = z} of type setset.
L1041
Axiom. (Inj0_pair_0_eq) We take the following as an axiom:
Inj0 = pair 0
L1043
Axiom. (Inj1_pair_1_eq) We take the following as an axiom:
Inj1 = pair 1
L1045
Axiom. (pairI0) We take the following as an axiom:
∀X Y x, x Xpair 0 x pair X Y
L1047
Axiom. (pairI1) We take the following as an axiom:
∀X Y y, y Ypair 1 y pair X Y
L1049
Axiom. (pairE) We take the following as an axiom:
∀X Y z, z pair X Y(∃xX, z = pair 0 x) (∃yY, z = pair 1 y)
L1051
Axiom. (pairE0) We take the following as an axiom:
∀X Y x, pair 0 x pair X Yx X
L1053
Axiom. (pairE1) We take the following as an axiom:
∀X Y y, pair 1 y pair X Yy Y
L1055
Axiom. (proj0I) We take the following as an axiom:
∀w u : set, pair 0 u wu proj0 w
L1057
Axiom. (proj0E) We take the following as an axiom:
∀w u : set, u proj0 wpair 0 u w
L1059
Axiom. (proj1I) We take the following as an axiom:
∀w u : set, pair 1 u wu proj1 w
L1061
Axiom. (proj1E) We take the following as an axiom:
∀w u : set, u proj1 wpair 1 u w
L1063
Axiom. (proj0_pair_eq) We take the following as an axiom:
∀X Y : set, proj0 (pair X Y) = X
L1065
Axiom. (proj1_pair_eq) We take the following as an axiom:
∀X Y : set, proj1 (pair X Y) = Y
L1069
Definition. We define Sigma to be λX Y ⇒ xX{pair x y|yY 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.
L1075
Axiom. (Sigma_eta_proj0_proj1) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z(xX, Y x), pair (proj0 z) (proj1 z) = z proj0 z X proj1 z Y (proj0 z)
L1077
Axiom. (proj0_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z (xX, Y x)proj0 z X
L1079
Axiom. (proj1_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z (xX, Y x)proj1 z Y (proj0 z)
L1081
Axiom. (pair_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀xX, ∀yY x, pair x y xX, Y x
L1083
Axiom. (pair_Sigma_E1) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀x y : set, pair x y (xX, Y x)y Y x
L1085
Axiom. (Sigma_E) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z (xX, Y x)∃xX, ∃yY x, z = pair x y
L1087
Definition. We define setprod to be λX Y : setxX, 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.
L1091
Let lam : set(setset)setSigma
L1093
Definition. We define ap to be λf x ⇒ {proj1 z|zf, ∃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).
Notation. We now use n-tuple notation (a0,...,an-1) for n ≥ 2 for λ i ∈ n . if i = 0 then a0 else ... if i = n-2 then an-2 else an-1.
L1097
Axiom. (lamI) We take the following as an axiom:
∀X : set, ∀F : setset, ∀xX, ∀yF x, pair x y λxXF x
L1099
Axiom. (lamE) We take the following as an axiom:
∀X : set, ∀F : setset, ∀z : set, z (λxXF x)∃xX, ∃yF x, z = pair x y
L1101
Axiom. (apI) We take the following as an axiom:
∀f x y, pair x y fy f x
L1103
Axiom. (apE) We take the following as an axiom:
∀f x y, y f xpair x y f
L1105
Axiom. (beta) We take the following as an axiom:
∀X : set, ∀F : setset, ∀x : set, x X(λxXF x) x = F x
L1107
Axiom. (proj0_ap_0) We take the following as an axiom:
∀u, proj0 u = u 0
L1109
Axiom. (proj1_ap_1) We take the following as an axiom:
∀u, proj1 u = u 1
L1111
Axiom. (pair_ap_0) We take the following as an axiom:
∀x y : set, (pair x y) 0 = x
L1113
Axiom. (pair_ap_1) We take the following as an axiom:
∀x y : set, (pair x y) 1 = y
L1115
Axiom. (ap0_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z (xX, Y x)(z 0) X
L1117
Axiom. (ap1_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀z : set, z (xX, Y x)(z 1) (Y (z 0))
L1119
Definition. We define pair_p to be λu : setpair (u 0) (u 1) = u of type setprop.
L1122
Axiom. (pair_p_I) We take the following as an axiom:
∀x y, pair_p (pair x y)
L1124
Axiom. (Subq_2_UPair01) We take the following as an axiom:
L1126
Axiom. (tuple_pair) We take the following as an axiom:
∀x y : set, pair x y = (x,y)
L1128
Definition. We define Pi to be λX Y ⇒ {f𝒫 (xX, (Y x))|∀xX, f x 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 Pi.
L1132
Axiom. (PiI) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀f : set, (∀uf, pair_p u u 0 X)(∀xX, f x Y x)f xX, Y x
L1135
Axiom. (lam_Pi) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀F : setset, (∀xX, F x Y x)(λxXF x) (xX, Y x)
L1138
Axiom. (ap_Pi) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀f : set, ∀x : set, f (xX, Y x)x Xf x Y x
L1140
Definition. We define setexp to be λX Y : setyY, 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.
L1144
Axiom. (pair_tuple_fun) We take the following as an axiom:
pair = (λx y ⇒ (x,y))
Beginning of Section Tuples
L1148
Variable x0 x1 : set
L1149
Axiom. (tuple_2_0_eq) We take the following as an axiom:
(x0,x1) 0 = x0
L1151
Axiom. (tuple_2_1_eq) We take the following as an axiom:
(x0,x1) 1 = x1
End of Section Tuples
L1155
Axiom. (ReplEq_setprod_ext) We take the following as an axiom:
∀X Y, ∀F G : setsetset, (∀xX, ∀yY, F x y = G x y){F (w 0) (w 1)|wX Y} = {G (w 0) (w 1)|wX Y}
L1157
Axiom. (lamI2) We take the following as an axiom:
∀X, ∀F : setset, ∀xX, ∀yF x, (x,y) λxXF x
L1159
Axiom. (tuple_2_Sigma) We take the following as an axiom:
∀X : set, ∀Y : setset, ∀xX, ∀yY x, (x,y) xX, Y x
L1161
Axiom. (tuple_2_setprod) We take the following as an axiom:
∀X : set, ∀Y : set, ∀xX, ∀yY, (x,y) X Y
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.
L1175
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.
L1177
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.
L1178
Axiom. (DescrR_i_io_12) We take the following as an axiom:
∀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)
L1180
Definition. We define PNoEq_ to be λalpha p q ⇒ ∀betaalpha, p beta q beta of type set(setprop)(setprop)prop.
L1186
Axiom. (PNoEq_ref_) We take the following as an axiom:
∀alpha, ∀p : setprop, PNoEq_ alpha p p
L1188
Axiom. (PNoEq_sym_) We take the following as an axiom:
∀alpha, ∀p q : setprop, PNoEq_ alpha p qPNoEq_ alpha q p
L1190
Axiom. (PNoEq_tra_) We take the following as an axiom:
∀alpha, ∀p q r : setprop, PNoEq_ alpha p qPNoEq_ alpha q rPNoEq_ alpha p r
L1192
Axiom. (PNoEq_antimon_) We take the following as an axiom:
∀p q : setprop, ∀alpha, ordinal alpha∀betaalpha, PNoEq_ alpha p qPNoEq_ beta p q
L1194
Definition. We define PNoLt_ to be λalpha p q ⇒ ∃betaalpha, PNoEq_ beta p q ¬ p beta q beta of type set(setprop)(setprop)prop.
L1197
Axiom. (PNoLt_E_) We take the following as an axiom:
∀alpha, ∀p q : setprop, PNoLt_ alpha p q∀R : prop, (∀beta, beta alphaPNoEq_ beta p q¬ p betaq betaR)R
L1200
Axiom. (PNoLt_irref_) We take the following as an axiom:
∀alpha, ∀p : setprop, ¬ PNoLt_ alpha p p
L1202
Axiom. (PNoLt_mon_) We take the following as an axiom:
∀p q : setprop, ∀alpha, ordinal alpha∀betaalpha, PNoLt_ beta p qPNoLt_ alpha p q
L1204
Axiom. (PNoLt_trichotomy_or_) We take the following as an axiom:
∀p q : setprop, ∀alpha, ordinal alphaPNoLt_ alpha p q PNoEq_ alpha p q PNoLt_ alpha q p
L1209
Definition. We define PNoLt to be λalpha p beta q ⇒ PNoLt_ (alpha beta) p q alpha beta PNoEq_ alpha p q q alpha beta alpha PNoEq_ beta p q ¬ p beta of type set(setprop)set(setprop)prop.
L1214
Axiom. (PNoLtI1) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, PNoLt_ (alpha beta) p qPNoLt alpha p beta q
L1217
Axiom. (PNoLtI2) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, alpha betaPNoEq_ alpha p qq alphaPNoLt alpha p beta q
L1220
Axiom. (PNoLtI3) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, beta alphaPNoEq_ beta p q¬ p betaPNoLt alpha p beta q
L1223
Axiom. (PNoLtE) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, PNoLt alpha p beta q∀R : prop, (PNoLt_ (alpha beta) p qR)(alpha betaPNoEq_ alpha p qq alphaR)(beta alphaPNoEq_ beta p q¬ p betaR)R
L1231
Axiom. (PNoLt_irref) We take the following as an axiom:
∀alpha, ∀p : setprop, ¬ PNoLt alpha p alpha p
L1233
Axiom. (PNoLt_trichotomy_or) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNoLt alpha p beta q alpha = beta PNoEq_ alpha p q PNoLt beta q alpha p
L1237
Axiom. (PNoLtEq_tra) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal beta∀p q r : setprop, PNoLt alpha p beta qPNoEq_ beta q rPNoLt alpha p beta r
L1239
Axiom. (PNoEqLt_tra) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal beta∀p q r : setprop, PNoEq_ alpha p qPNoLt alpha q beta rPNoLt alpha p beta r
L1241
Axiom. (PNoLt_tra) We take the following as an axiom:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLt alpha p beta qPNoLt beta q gamma rPNoLt alpha p gamma r
L1243
Definition. We define PNoLe to be λalpha p beta q ⇒ PNoLt alpha p beta q alpha = beta PNoEq_ alpha p q of type set(setprop)set(setprop)prop.
L1246
Axiom. (PNoLeI1) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, PNoLt alpha p beta qPNoLe alpha p beta q
L1249
Axiom. (PNoLeI2) We take the following as an axiom:
∀alpha, ∀p q : setprop, PNoEq_ alpha p qPNoLe alpha p alpha q
L1252
Axiom. (PNoLe_ref) We take the following as an axiom:
∀alpha, ∀p : setprop, PNoLe alpha p alpha p
L1254
Axiom. (PNoLe_antisym) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal beta∀p q : setprop, PNoLe alpha p beta qPNoLe beta q alpha palpha = beta PNoEq_ alpha p q
L1258
Axiom. (PNoLtLe_tra) We take the following as an axiom:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLt alpha p beta qPNoLe beta q gamma rPNoLt alpha p gamma r
L1260
Axiom. (PNoLeLt_tra) We take the following as an axiom:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLe alpha p beta qPNoLt beta q gamma rPNoLt alpha p gamma r
L1262
Axiom. (PNoEqLe_tra) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal beta∀p q r : setprop, PNoEq_ alpha p qPNoLe alpha q beta rPNoLe alpha p beta r
L1264
Axiom. (PNoLe_tra) We take the following as an axiom:
∀alpha beta gamma, ordinal alphaordinal betaordinal gamma∀p q r : setprop, PNoLe alpha p beta qPNoLe beta q gamma rPNoLe alpha p gamma r
L1266
Definition. We define PNo_downc to be λL alpha p ⇒ ∃beta, ordinal beta ∃q : setprop, L beta q PNoLe alpha p beta q of type (set(setprop)prop)set(setprop)prop.
L1269
Definition. We define PNo_upc to be λR alpha p ⇒ ∃beta, ordinal beta ∃q : setprop, R beta q PNoLe beta q alpha p of type (set(setprop)prop)set(setprop)prop.
L1271
Axiom. (PNoLe_downc) We take the following as an axiom:
∀L : set(setprop)prop, ∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNo_downc L alpha pPNoLe beta q alpha pPNo_downc L beta q
L1275
Axiom. (PNo_downc_ref) We take the following as an axiom:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, L alpha pPNo_downc L alpha p
L1277
Axiom. (PNo_upc_ref) We take the following as an axiom:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, R alpha pPNo_upc R alpha p
L1279
Axiom. (PNoLe_upc) We take the following as an axiom:
∀R : set(setprop)prop, ∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNo_upc R alpha pPNoLe alpha p beta qPNo_upc R beta q
L1283
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.
L1286
Axiom. (PNoLt_pwise_downc_upc) We take the following as an axiom:
∀L R : set(setprop)prop, PNoLt_pwise L RPNoLt_pwise (PNo_downc L) (PNo_upc R)
L1289
Definition. We define PNo_rel_strict_upperbd to be λL alpha p ⇒ ∀betaalpha, ∀q : setprop, PNo_downc L beta qPNoLt beta q alpha p of type (set(setprop)prop)set(setprop)prop.
L1293
Definition. We define PNo_rel_strict_lowerbd to be λR alpha p ⇒ ∀betaalpha, ∀q : setprop, PNo_upc R beta qPNoLt alpha p beta q of type (set(setprop)prop)set(setprop)prop.
L1297
Definition. We define PNo_rel_strict_imv to be λL R alpha p ⇒ PNo_rel_strict_upperbd L alpha p PNo_rel_strict_lowerbd R alpha p of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
L1300
Axiom. (PNoEq_rel_strict_upperbd) We take the following as an axiom:
∀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
L1303
Axiom. (PNo_rel_strict_upperbd_antimon) We take the following as an axiom:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, ∀betaalpha, PNo_rel_strict_upperbd L alpha pPNo_rel_strict_upperbd L beta p
L1306
Axiom. (PNoEq_rel_strict_lowerbd) We take the following as an axiom:
∀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
L1309
Axiom. (PNo_rel_strict_lowerbd_antimon) We take the following as an axiom:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, ∀betaalpha, PNo_rel_strict_lowerbd R alpha pPNo_rel_strict_lowerbd R beta p
L1312
Axiom. (PNoEq_rel_strict_imv) We take the following as an axiom:
∀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
L1315
Axiom. (PNo_rel_strict_imv_antimon) We take the following as an axiom:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀p : setprop, ∀betaalpha, PNo_rel_strict_imv L R alpha pPNo_rel_strict_imv L R beta p
L1318
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.
L1321
Definition. We define PNo_rel_strict_split_imv to be λL R alpha p ⇒ PNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p delta delta alpha) PNo_rel_strict_imv L R (ordsucc alpha) (λdelta ⇒ p delta delta = alpha) of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
L1325
Axiom. (PNo_extend0_eq) We take the following as an axiom:
∀alpha, ∀p : setprop, PNoEq_ alpha p (λdelta ⇒ p delta delta alpha)
L1327
Axiom. (PNo_extend1_eq) We take the following as an axiom:
∀alpha, ∀p : setprop, PNoEq_ alpha p (λdelta ⇒ p delta delta = alpha)
L1329
Axiom. (PNo_rel_imv_ex) We take the following as an axiom:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alpha(∃p : setprop, PNo_rel_strict_uniq_imv L R alpha p) (∃taualpha, ∃p : setprop, PNo_rel_strict_split_imv L R tau p)
L1335
Definition. We define PNo_lenbdd to be λalpha L ⇒ ∀beta, ∀p : setprop, L beta pbeta alpha of type set(set(setprop)prop)prop.
L1338
Axiom. (PNo_lenbdd_strict_imv_extend0) We take the following as an axiom:
∀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 delta delta alpha)
L1343
Axiom. (PNo_lenbdd_strict_imv_extend1) We take the following as an axiom:
∀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 delta delta = alpha)
L1348
Axiom. (PNo_lenbdd_strict_imv_split) We take the following as an axiom:
∀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
L1353
Axiom. (PNo_rel_imv_bdd_ex) We take the following as an axiom:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∃betaordsucc alpha, ∃p : setprop, PNo_rel_strict_split_imv L R beta p
L1361
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.
L1365
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.
L1369
Definition. We define PNo_strict_imv to be λL R alpha p ⇒ PNo_strict_upperbd L alpha p PNo_strict_lowerbd R alpha p of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
L1372
Axiom. (PNoEq_strict_upperbd) We take the following as an axiom:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_strict_upperbd L alpha pPNo_strict_upperbd L alpha q
L1375
Axiom. (PNoEq_strict_lowerbd) We take the following as an axiom:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀p q : setprop, PNoEq_ alpha p qPNo_strict_lowerbd R alpha pPNo_strict_lowerbd R alpha q
L1378
Axiom. (PNoEq_strict_imv) We take the following as an axiom:
∀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
L1381
Axiom. (PNo_strict_upperbd_imp_rel_strict_upperbd) We take the following as an axiom:
∀L : set(setprop)prop, ∀alpha, ordinal alpha∀betaordsucc alpha, ∀p : setprop, PNo_strict_upperbd L alpha pPNo_rel_strict_upperbd L beta p
L1385
Axiom. (PNo_strict_lowerbd_imp_rel_strict_lowerbd) We take the following as an axiom:
∀R : set(setprop)prop, ∀alpha, ordinal alpha∀betaordsucc alpha, ∀p : setprop, PNo_strict_lowerbd R alpha pPNo_rel_strict_lowerbd R beta p
L1389
Axiom. (PNo_strict_imv_imp_rel_strict_imv) We take the following as an axiom:
∀L R : set(setprop)prop, ∀alpha, ordinal alpha∀betaordsucc alpha, ∀p : setprop, PNo_strict_imv L R alpha pPNo_rel_strict_imv L R beta p
L1393
Axiom. (PNo_rel_split_imv_imp_strict_imv) We take the following as an axiom:
∀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
L1398
Axiom. (PNo_lenbdd_strict_imv_ex) We take the following as an axiom:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha R∃betaordsucc alpha, ∃p : setprop, PNo_strict_imv L R beta p
L1406
Definition. We define PNo_least_rep to be λL R beta p ⇒ ordinal beta PNo_strict_imv L R beta p ∀gammabeta, ∀q : setprop, ¬ PNo_strict_imv L R gamma q of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
L1412
Definition. We define PNo_least_rep2 to be λL R beta p ⇒ PNo_least_rep L R beta p ∀x, x beta¬ p x of type (set(setprop)prop)(set(setprop)prop)set(setprop)prop.
L1414
Axiom. (PNo_strict_imv_pred_eq) We take the following as an axiom:
∀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∀betaalpha, p beta q beta
L1421
Axiom. (PNo_lenbdd_least_rep2_exuniq2) We take the following as an axiom:
∀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)
L1432
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.
L1435
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.
L1437
Axiom. (PNo_bd_pred_lem) We take the following as an axiom:
∀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)
L1444
Axiom. (PNo_bd_pred) We take the following as an axiom:
∀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)
L1451
Axiom. (PNo_bd_In) We take the following as an axiom:
∀L R : set(setprop)prop, PNoLt_pwise L R∀alpha, ordinal alphaPNo_lenbdd alpha LPNo_lenbdd alpha RPNo_bd L R ordsucc alpha
Beginning of Section TaggedSets
L1462
Let tag : setsetλalpha ⇒ SetAdjoin alpha {1}
Notation. We use ' as a postfix operator with priority 100 corresponding to applying term tag.
L1465
Axiom. (not_TransSet_Sing1) We take the following as an axiom:
L1467
Axiom. (not_ordinal_Sing1) We take the following as an axiom:
L1469
Axiom. (tagged_not_ordinal) We take the following as an axiom:
∀y, ¬ ordinal (y ')
L1471
Axiom. (tagged_notin_ordinal) We take the following as an axiom:
∀alpha y, ordinal alpha(y ') alpha
L1473
Axiom. (tagged_eqE_Subq) We take the following as an axiom:
∀alpha beta, ordinal alphaalpha ' = beta 'alpha beta
L1475
Axiom. (tagged_eqE_eq) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalpha ' = beta 'alpha = beta
L1477
Axiom. (tagged_ReplE) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betabeta ' {gamma '|gammaalpha}beta alpha
L1479
Axiom. (ordinal_notin_tagged_Repl) We take the following as an axiom:
∀alpha Y, ordinal alphaalpha {y '|yY}
L1481
Definition. We define SNoElts_ to be λalpha ⇒ alpha {beta '|betaalpha} of type setset.
L1483
Axiom. (SNoElts_mon) We take the following as an axiom:
∀alpha beta, alpha betaSNoElts_ alpha SNoElts_ beta
L1485
Definition. We define SNo_ to be λalpha x ⇒ x SNoElts_ alpha ∀betaalpha, exactly1of2 (beta ' x) (beta x) of type setsetprop.
L1489
Definition. We define PSNo to be λalpha p ⇒ {betaalpha|p beta} {beta '|betaalpha, ¬ p beta} of type set(setprop)set.
L1491
Axiom. (PNoEq_PSNo) We take the following as an axiom:
∀alpha, ordinal alpha∀p : setprop, PNoEq_ alpha (λbeta ⇒ beta PSNo alpha p) p
L1493
Axiom. (SNo_PSNo) We take the following as an axiom:
∀alpha, ordinal alpha∀p : setprop, SNo_ alpha (PSNo alpha p)
L1495
Axiom. (SNo_PSNo_eta_) We take the following as an axiom:
∀alpha x, ordinal alphaSNo_ alpha xx = PSNo alpha (λbeta ⇒ beta x)
L1499
Definition. We define SNo to be λx ⇒ ∃alpha, ordinal alpha SNo_ alpha x of type setprop.
L1500
Axiom. (SNo_SNo) We take the following as an axiom:
∀alpha, ordinal alpha∀z, SNo_ alpha zSNo z
L1504
Definition. We define SNoLev to be λx ⇒ Eps_i (λalpha ⇒ ordinal alpha SNo_ alpha x) of type setset.
L1505
Axiom. (SNoLev_uniq_Subq) We take the following as an axiom:
∀x alpha beta, ordinal alphaordinal betaSNo_ alpha xSNo_ beta xalpha beta
L1507
Axiom. (SNoLev_uniq) We take the following as an axiom:
∀x alpha beta, ordinal alphaordinal betaSNo_ alpha xSNo_ beta xalpha = beta
L1509
Axiom. (SNoLev_prop) We take the following as an axiom:
∀x, SNo xordinal (SNoLev x) SNo_ (SNoLev x) x
L1511
Axiom. (SNoLev_ordinal) We take the following as an axiom:
∀x, SNo xordinal (SNoLev x)
L1513
Axiom. (SNoLev_) We take the following as an axiom:
∀x, SNo xSNo_ (SNoLev x) x
L1515
Axiom. (SNo_PSNo_eta) We take the following as an axiom:
∀x, SNo xx = PSNo (SNoLev x) (λbeta ⇒ beta x)
L1517
Axiom. (SNoLev_PSNo) We take the following as an axiom:
∀alpha, ordinal alpha∀p : setprop, SNoLev (PSNo alpha p) = alpha
L1519
Axiom. (SNo_Subq) We take the following as an axiom:
∀x y, SNo xSNo ySNoLev x SNoLev y(∀alphaSNoLev x, alpha x alpha y)x y
L1521
Definition. We define SNoEq_ to be λalpha x y ⇒ PNoEq_ alpha (λbeta ⇒ beta x) (λbeta ⇒ beta y) of type setsetsetprop.
L1524
Axiom. (SNoEq_I) We take the following as an axiom:
∀alpha x y, (∀betaalpha, beta x beta y)SNoEq_ alpha x y
L1526
Axiom. (SNo_eq) We take the following as an axiom:
∀x y, SNo xSNo ySNoLev x = SNoLev ySNoEq_ (SNoLev x) x yx = y
End of Section TaggedSets
L1530
Definition. We define SNoLt to be λx y ⇒ PNoLt (SNoLev x) (λbeta ⇒ beta x) (SNoLev y) (λbeta ⇒ beta y) of type setsetprop.
Notation. We use < as an infix operator with priority 490 and no associativity corresponding to applying term SNoLt.
L1534
Definition. We define SNoLe to be λx y ⇒ PNoLe (SNoLev x) (λbeta ⇒ beta x) (SNoLev y) (λbeta ⇒ beta y) of type setsetprop.
Notation. We use as an infix operator with priority 490 and no associativity corresponding to applying term SNoLe.
L1539
Axiom. (SNoLtLe) We take the following as an axiom:
∀x y, x < yx y
L1541
Axiom. (SNoLeE) We take the following as an axiom:
∀x y, SNo xSNo yx yx < y x = y
L1543
Axiom. (SNoEq_sym_) We take the following as an axiom:
∀alpha x y, SNoEq_ alpha x ySNoEq_ alpha y x
L1545
Axiom. (SNoEq_tra_) We take the following as an axiom:
∀alpha x y z, SNoEq_ alpha x ySNoEq_ alpha y zSNoEq_ alpha x z
L1547
Axiom. (SNoLtE) We take the following as an axiom:
∀x y, SNo xSNo yx < y∀p : prop, (∀z, SNo zSNoLev z SNoLev x SNoLev ySNoEq_ (SNoLev z) z xSNoEq_ (SNoLev z) z yx < zz < ySNoLev z xSNoLev z yp)(SNoLev x SNoLev ySNoEq_ (SNoLev x) x ySNoLev x yp)(SNoLev y SNoLev xSNoEq_ (SNoLev y) x ySNoLev y xp)p
L1554
Axiom. (SNoLtI2) We take the following as an axiom:
∀x y, SNoLev x SNoLev ySNoEq_ (SNoLev x) x ySNoLev x yx < y
L1561
Axiom. (SNoLtI3) We take the following as an axiom:
∀x y, SNoLev y SNoLev xSNoEq_ (SNoLev y) x ySNoLev y xx < y
L1567
Axiom. (SNoLt_irref) We take the following as an axiom:
∀x, ¬ SNoLt x x
L1569
Axiom. (SNoLt_trichotomy_or) We take the following as an axiom:
∀x y, SNo xSNo yx < y x = y y < x
L1571
Axiom. (SNoLt_trichotomy_or_impred) We take the following as an axiom:
∀x y, SNo xSNo y∀p : prop, (x < yp)(x = yp)(y < xp)p
L1578
Axiom. (SNoLt_tra) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx < yy < zx < z
L1580
Axiom. (SNoLe_ref) We take the following as an axiom:
∀x, SNoLe x x
L1582
Axiom. (SNoLe_antisym) We take the following as an axiom:
∀x y, SNo xSNo yx yy xx = y
L1584
Axiom. (SNoLtLe_tra) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx < yy zx < z
L1586
Axiom. (SNoLeLt_tra) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx yy < zx < z
L1588
Axiom. (SNoLe_tra) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx yy zx z
L1590
Axiom. (SNoLtLe_or) We take the following as an axiom:
∀x y, SNo xSNo yx < y y x
L1592
Axiom. (SNoLt_PSNo_PNoLt) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPSNo alpha p < PSNo beta qPNoLt alpha p beta q
L1596
Axiom. (PNoLt_SNoLt_PSNo) We take the following as an axiom:
∀alpha beta, ∀p q : setprop, ordinal alphaordinal betaPNoLt alpha p beta qPSNo alpha p < PSNo beta q
L1600
Definition. We define SNoCut to be λL R ⇒ PSNo (PNo_bd (λalpha p ⇒ ordinal alpha PSNo alpha p L) (λalpha p ⇒ ordinal alpha PSNo alpha p R)) (PNo_pred (λalpha p ⇒ ordinal alpha PSNo alpha p L) (λalpha p ⇒ ordinal alpha PSNo alpha p R)) of type setsetset.
L1603
Definition. We define SNoCutP to be λL R ⇒ (∀xL, SNo x) (∀yR, SNo y) (∀xL, ∀yR, x < y) of type setsetprop.
L1608
Axiom. (SNoCutP_SNoCut) We take the following as an axiom:
∀L R, SNoCutP L RSNo (SNoCut L R) SNoLev (SNoCut L R) ordsucc ((xLordsucc (SNoLev x)) (yRordsucc (SNoLev y))) (∀xL, x < SNoCut L R) (∀yR, SNoCut L R < y) (∀z, SNo z(∀xL, x < z)(∀yR, z < y)SNoLev (SNoCut L R) SNoLev z SNoEq_ (SNoLev (SNoCut L R)) (SNoCut L R) z)
L1615
Axiom. (SNoCutP_SNoCut_impred) We take the following as an axiom:
∀L R, SNoCutP L R∀p : prop, (SNo (SNoCut L R)SNoLev (SNoCut L R) ordsucc ((xLordsucc (SNoLev x)) (yRordsucc (SNoLev y)))(∀xL, x < SNoCut L R)(∀yR, SNoCut L R < y)(∀z, SNo z(∀xL, x < z)(∀yR, z < y)SNoLev (SNoCut L R) SNoLev z SNoEq_ (SNoLev (SNoCut L R)) (SNoCut L R) z)p)p
L1625
Axiom. (SNoCutP_L_0) We take the following as an axiom:
∀L, (∀xL, SNo x)SNoCutP L 0
L1627
Axiom. (SNoCutP_0_0) We take the following as an axiom:
L1629
Definition. We define SNoS_ to be λalpha ⇒ {x𝒫 (SNoElts_ alpha)|∃betaalpha, SNo_ beta x} of type setset.
L1631
Axiom. (SNoS_E) We take the following as an axiom:
∀alpha, ordinal alpha∀xSNoS_ alpha, ∃betaalpha, SNo_ beta x
Beginning of Section TaggedSets2
L1635
Let tag : setsetλalpha ⇒ SetAdjoin alpha {1}
Notation. We use ' as a postfix operator with priority 100 corresponding to applying term tag.
L1637
Axiom. (SNoS_I) We take the following as an axiom:
∀alpha, ordinal alpha∀x, ∀betaalpha, SNo_ beta xx SNoS_ alpha
L1639
Axiom. (SNoS_I2) We take the following as an axiom:
∀x y, SNo xSNo ySNoLev x SNoLev yx SNoS_ (SNoLev y)
L1641
Axiom. (SNoS_Subq) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalpha betaSNoS_ alpha SNoS_ beta
L1644
Axiom. (SNoLev_uniq2) We take the following as an axiom:
∀alpha, ordinal alpha∀x, SNo_ alpha xSNoLev x = alpha
L1646
Axiom. (SNoS_E2) We take the following as an axiom:
∀alpha, ordinal alpha∀xSNoS_ alpha, ∀p : prop, (SNoLev x alphaordinal (SNoLev x)SNo xSNo_ (SNoLev x) xp)p
L1651
Axiom. (SNoS_In_neq) We take the following as an axiom:
∀w, SNo w∀xSNoS_ (SNoLev w), x w
L1653
Axiom. (SNoS_SNoLev) We take the following as an axiom:
∀z, SNo zz SNoS_ (ordsucc (SNoLev z))
L1655
Definition. We define SNoL to be λz ⇒ {xSNoS_ (SNoLev z)|x < z} of type setset.
L1657
Definition. We define SNoR to be λz ⇒ {ySNoS_ (SNoLev z)|z < y} of type setset.
L1658
Axiom. (SNoCutP_SNoL_SNoR) We take the following as an axiom:
∀z, SNo zSNoCutP (SNoL z) (SNoR z)
L1660
Axiom. (SNoL_E) We take the following as an axiom:
∀x, SNo x∀wSNoL x, ∀p : prop, (SNo wSNoLev w SNoLev xw < xp)p
L1665
Axiom. (SNoR_E) We take the following as an axiom:
∀x, SNo x∀zSNoR x, ∀p : prop, (SNo zSNoLev z SNoLev xx < zp)p
L1670
Axiom. (SNoL_SNoS_) We take the following as an axiom:
∀z, SNoL z SNoS_ (SNoLev z)
L1672
Axiom. (SNoR_SNoS_) We take the following as an axiom:
∀z, SNoR z SNoS_ (SNoLev z)
L1674
Axiom. (SNoL_SNoS) We take the following as an axiom:
∀x, SNo x∀wSNoL x, w SNoS_ (SNoLev x)
L1676
Axiom. (SNoR_SNoS) We take the following as an axiom:
∀x, SNo x∀zSNoR x, z SNoS_ (SNoLev x)
L1678
Axiom. (SNoL_I) We take the following as an axiom:
∀z, SNo z∀x, SNo xSNoLev x SNoLev zx < zx SNoL z
L1680
Axiom. (SNoR_I) We take the following as an axiom:
∀z, SNo z∀y, SNo ySNoLev y SNoLev zz < yy SNoR z
L1682
Axiom. (SNo_eta) We take the following as an axiom:
∀z, SNo zz = SNoCut (SNoL z) (SNoR z)
L1684
Axiom. (SNoCutP_SNo_SNoCut) We take the following as an axiom:
∀L R, SNoCutP L RSNo (SNoCut L R)
L1686
Axiom. (SNoCutP_SNoCut_L) We take the following as an axiom:
∀L R, SNoCutP L R∀xL, x < SNoCut L R
L1688
Axiom. (SNoCutP_SNoCut_R) We take the following as an axiom:
∀L R, SNoCutP L R∀yR, SNoCut L R < y
L1690
Axiom. (SNoCutP_SNoCut_fst) We take the following as an axiom:
∀L R, SNoCutP L R∀z, SNo z(∀xL, x < z)(∀yR, z < y)SNoLev (SNoCut L R) SNoLev z SNoEq_ (SNoLev (SNoCut L R)) (SNoCut L R) z
L1697
Axiom. (SNoCut_Le) We take the following as an axiom:
∀L1 R1 L2 R2, SNoCutP L1 R1SNoCutP L2 R2(∀wL1, w < SNoCut L2 R2)(∀zR2, SNoCut L1 R1 < z)SNoCut L1 R1 SNoCut L2 R2
L1702
Axiom. (SNoCut_ext) We take the following as an axiom:
∀L1 R1 L2 R2, SNoCutP L1 R1SNoCutP L2 R2(∀wL1, w < SNoCut L2 R2)(∀zR1, SNoCut L2 R2 < z)(∀wL2, w < SNoCut L1 R1)(∀zR2, SNoCut L1 R1 < z)SNoCut L1 R1 = SNoCut L2 R2
L1709
Axiom. (SNoLt_SNoL_or_SNoR_impred) We take the following as an axiom:
∀x y, SNo xSNo yx < y∀p : prop, (∀zSNoL y, z SNoR xp)(x SNoL yp)(y SNoR xp)p
L1716
Axiom. (SNoL_or_SNoR_impred) We take the following as an axiom:
∀x y, SNo xSNo y∀p : prop, (x = yp)(∀zSNoL y, z SNoR xp)(x SNoL yp)(y SNoR xp)(∀zSNoR y, z SNoL xp)(x SNoR yp)(y SNoL xp)p
L1727
Axiom. (SNoL_SNoCutP_ex) We take the following as an axiom:
∀L R, SNoCutP L R∀wSNoL (SNoCut L R), ∃w'L, w w'
L1729
Axiom. (SNoR_SNoCutP_ex) We take the following as an axiom:
∀L R, SNoCutP L R∀zSNoR (SNoCut L R), ∃z'R, z' z
L1731
Axiom. (ordinal_SNo_) We take the following as an axiom:
∀alpha, ordinal alphaSNo_ alpha alpha
L1733
Axiom. (ordinal_SNo) We take the following as an axiom:
∀alpha, ordinal alphaSNo alpha
L1735
Axiom. (ordinal_SNoLev) We take the following as an axiom:
∀alpha, ordinal alphaSNoLev alpha = alpha
L1737
Axiom. (ordinal_SNoLev_max) We take the following as an axiom:
∀alpha, ordinal alpha∀z, SNo zSNoLev z alphaz < alpha
L1739
Axiom. (ordinal_SNoL) We take the following as an axiom:
∀alpha, ordinal alphaSNoL alpha = SNoS_ alpha
L1741
Axiom. (ordinal_SNoR) We take the following as an axiom:
∀alpha, ordinal alphaSNoR alpha = Empty
L1743
Axiom. (nat_p_SNo) We take the following as an axiom:
∀n, nat_p nSNo n
L1745
Axiom. (omega_SNo) We take the following as an axiom:
∀nω, SNo n
L1747
Axiom. (omega_SNoS_omega) We take the following as an axiom:
L1749
Axiom. (ordinal_In_SNoLt) We take the following as an axiom:
∀alpha, ordinal alpha∀betaalpha, beta < alpha
L1751
Axiom. (ordinal_SNoLev_max_2) We take the following as an axiom:
∀alpha, ordinal alpha∀z, SNo zSNoLev z ordsucc alphaz alpha
L1753
Axiom. (ordinal_Subq_SNoLe) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalpha betaalpha beta
L1755
Axiom. (ordinal_SNoLt_In) We take the following as an axiom:
∀alpha beta, ordinal alphaordinal betaalpha < betaalpha beta
L1757
Axiom. (omega_nonneg) We take the following as an axiom:
∀mω, 0 m
L1759
Axiom. (SNo_0) We take the following as an axiom:
L1761
Axiom. (SNo_1) We take the following as an axiom:
L1763
Axiom. (SNo_2) We take the following as an axiom:
L1765
Axiom. (SNoLev_0) We take the following as an axiom:
L1767
Axiom. (SNoCut_0_0) We take the following as an axiom:
L1769
Axiom. (SNoL_0) We take the following as an axiom:
L1771
Axiom. (SNoR_0) We take the following as an axiom:
L1773
Axiom. (SNoL_1) We take the following as an axiom:
L1775
Axiom. (SNoR_1) We take the following as an axiom:
L1777
Axiom. (SNo_max_SNoLev) We take the following as an axiom:
∀x, SNo x(∀ySNoS_ (SNoLev x), y < x)SNoLev x = x
L1779
Axiom. (SNo_max_ordinal) We take the following as an axiom:
∀x, SNo x(∀ySNoS_ (SNoLev x), y < x)ordinal x
L1781
Axiom. (pos_low_eq_one) We take the following as an axiom:
∀x, SNo x0 < xSNoLev x 1x = 1
L1783
Definition. We define SNo_extend0 to be λx ⇒ PSNo (ordsucc (SNoLev x)) (λdelta ⇒ delta x delta SNoLev x) of type setset.
L1785
Definition. We define SNo_extend1 to be λx ⇒ PSNo (ordsucc (SNoLev x)) (λdelta ⇒ delta x delta = SNoLev x) of type setset.
L1786
Axiom. (SNo_extend0_SNo_) We take the following as an axiom:
∀x, SNo xSNo_ (ordsucc (SNoLev x)) (SNo_extend0 x)
L1788
Axiom. (SNo_extend1_SNo_) We take the following as an axiom:
∀x, SNo xSNo_ (ordsucc (SNoLev x)) (SNo_extend1 x)
L1790
Axiom. (SNo_extend0_SNo) We take the following as an axiom:
∀x, SNo xSNo (SNo_extend0 x)
L1792
Axiom. (SNo_extend1_SNo) We take the following as an axiom:
∀x, SNo xSNo (SNo_extend1 x)
L1794
Axiom. (SNo_extend0_SNoLev) We take the following as an axiom:
∀x, SNo xSNoLev (SNo_extend0 x) = ordsucc (SNoLev x)
L1796
Axiom. (SNo_extend1_SNoLev) We take the following as an axiom:
∀x, SNo xSNoLev (SNo_extend1 x) = ordsucc (SNoLev x)
L1798
Axiom. (SNo_extend0_nIn) We take the following as an axiom:
∀x, SNo xSNoLev x SNo_extend0 x
L1800
Axiom. (SNo_extend1_In) We take the following as an axiom:
∀x, SNo xSNoLev x SNo_extend1 x
L1802
Axiom. (SNo_extend0_SNoEq) We take the following as an axiom:
∀x, SNo xSNoEq_ (SNoLev x) (SNo_extend0 x) x
L1804
Axiom. (SNo_extend1_SNoEq) We take the following as an axiom:
∀x, SNo xSNoEq_ (SNoLev x) (SNo_extend1 x) x
L1806
Axiom. (SNoLev_0_eq_0) We take the following as an axiom:
∀x, SNo xSNoLev x = 0x = 0
End of Section TaggedSets2
L1810
Axiom. (SNo_etaE) We take the following as an axiom:
∀z, SNo z∀p : prop, (∀L R, SNoCutP L R(∀xL, SNoLev x SNoLev z)(∀yR, SNoLev y SNoLev z)z = SNoCut L Rp)p
L1819
Axiom. (SNo_ind) We take the following as an axiom:
∀P : setprop, (∀L R, SNoCutP L R(∀xL, P x)(∀yR, P y)P (SNoCut L R))∀z, SNo zP z
Beginning of Section SurrealRecI
L1830
Variable F : set(setset)set
L1831
Let default : setEps_i (λ_ ⇒ True)
L1832
Let G : set(setsetset)setsetλalpha g ⇒ If_ii (ordinal alpha) (λz : setif z SNoS_ (ordsucc alpha) then F z (λw ⇒ g (SNoLev w) w) else default) (λz : setdefault)
L1843
Definition. We define SNo_rec_i to be λz ⇒ In_rec_ii G (SNoLev z) z of type setset.
L1845
Hypothesis Fr : ∀z, SNo z∀g h : setset, (∀wSNoS_ (SNoLev z), g w = h w)F z g = F z h
L1849
Axiom. (SNo_rec_i_eq) We take the following as an axiom:
∀z, SNo zSNo_rec_i z = F z SNo_rec_i
End of Section SurrealRecI
Beginning of Section SurrealRecII
L1855
Variable F : set(set(setset))(setset)
L1856
Let default : (setset)Descr_ii (λ_ ⇒ True)
L1857
Let G : set(setset(setset))set(setset)λalpha g ⇒ If_iii (ordinal alpha) (λz : setIf_ii (z SNoS_ (ordsucc alpha)) (F z (λw ⇒ g (SNoLev w) w)) default) (λz : setdefault)
L1866
Definition. We define SNo_rec_ii to be λz ⇒ In_rec_iii G (SNoLev z) z of type set(setset).
L1868
Hypothesis Fr : ∀z, SNo z∀g h : set(setset), (∀wSNoS_ (SNoLev z), g w = h w)F z g = F z h
L1871
Axiom. (SNo_rec_ii_eq) We take the following as an axiom:
∀z, SNo zSNo_rec_ii z = F z SNo_rec_ii
End of Section SurrealRecII
Beginning of Section SurrealRec2
L1877
Variable F : setset(setsetset)set
L1879
Let G : set(setsetset)set(setset)setλw f z g ⇒ F w z (λx y ⇒ if x = w then g y else f x y)
L1882
Let H : set(setsetset)setsetλw f z ⇒ if SNo z then SNo_rec_i (G w f) z else Empty
L1886
Definition. We define SNo_rec2 to be SNo_rec_ii H of type setsetset.
L1889
Hypothesis Fr : ∀w, SNo w∀z, SNo z∀g h : setsetset, (∀xSNoS_ (SNoLev w), ∀y, SNo yg x y = h x y)(∀ySNoS_ (SNoLev z), g w y = h w y)F w z g = F w z h
L1895
Axiom. (SNo_rec2_G_prop) We take the following as an axiom:
∀w, SNo w∀f k : setsetset, (∀xSNoS_ (SNoLev w), f x = k x)∀z, SNo z∀g h : setset, (∀uSNoS_ (SNoLev z), g u = h u)G w f z g = G w k z h
L1901
Axiom. (SNo_rec2_eq_1) We take the following as an axiom:
∀w, SNo w∀f : setsetset, ∀z, SNo zSNo_rec_i (G w f) z = G w f z (SNo_rec_i (G w f))
L1905
Axiom. (SNo_rec2_eq) We take the following as an axiom:
∀w, SNo w∀z, SNo zSNo_rec2 w z = F w z SNo_rec2
End of Section SurrealRec2
L1910
Axiom. (SNo_ordinal_ind) We take the following as an axiom:
∀P : setprop, (∀alpha, ordinal alpha∀xSNoS_ alpha, P x)(∀x, SNo xP x)
L1915
Axiom. (SNo_ordinal_ind2) We take the following as an axiom:
∀P : setsetprop, (∀alpha, ordinal alpha∀beta, ordinal beta∀xSNoS_ alpha, ∀ySNoS_ beta, P x y)(∀x y, SNo xSNo yP x y)
L1922
Axiom. (SNo_ordinal_ind3) We take the following as an axiom:
∀P : setsetsetprop, (∀alpha, ordinal alpha∀beta, ordinal beta∀gamma, ordinal gamma∀xSNoS_ alpha, ∀ySNoS_ beta, ∀zSNoS_ gamma, P x y z)(∀x y z, SNo xSNo ySNo zP x y z)
L1930
Axiom. (SNoLev_ind) We take the following as an axiom:
∀P : setprop, (∀x, SNo x(∀wSNoS_ (SNoLev x), P w)P x)(∀x, SNo xP x)
L1935
Axiom. (SNoLev_ind2) We take the following as an axiom:
∀P : setsetprop, (∀x y, SNo xSNo y(∀wSNoS_ (SNoLev x), P w y)(∀zSNoS_ (SNoLev y), P x z)(∀wSNoS_ (SNoLev x), ∀zSNoS_ (SNoLev y), P w z)P x y)∀x y, SNo xSNo yP x y
L1943
Axiom. (SNoLev_ind3) We take the following as an axiom:
∀P : setsetsetprop, (∀x y z, SNo xSNo ySNo z(∀uSNoS_ (SNoLev x), P u y z)(∀vSNoS_ (SNoLev y), P x v z)(∀wSNoS_ (SNoLev z), P x y w)(∀uSNoS_ (SNoLev x), ∀vSNoS_ (SNoLev y), P u v z)(∀uSNoS_ (SNoLev x), ∀wSNoS_ (SNoLev z), P u y w)(∀vSNoS_ (SNoLev y), ∀wSNoS_ (SNoLev z), P x v w)(∀uSNoS_ (SNoLev x), ∀vSNoS_ (SNoLev y), ∀wSNoS_ (SNoLev z), P u v w)P x y z)∀x y z, SNo xSNo ySNo zP x y z
L1955
Axiom. (SNo_omega) We take the following as an axiom:
L1957
Axiom. (SNoLt_0_1) We take the following as an axiom:
0 < 1
L1959
Axiom. (SNoLt_0_2) We take the following as an axiom:
0 < 2
L1961
Axiom. (SNoLt_1_2) We take the following as an axiom:
1 < 2
Beginning of Section SurrealMinus
L1967
Definition. We define minus_SNo to be SNo_rec_i (λx m ⇒ SNoCut {m z|zSNoR x} {m w|wSNoL x}) of type setset.
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_SNo.
Notation. We use as an infix operator with priority 490 and no associativity corresponding to applying term SNoLe.
L1974
Axiom. (minus_SNo_eq) We take the following as an axiom:
∀x, SNo x- x = SNoCut {- z|zSNoR x} {- w|wSNoL x}
L1976
Axiom. (minus_SNo_prop1) We take the following as an axiom:
∀x, SNo xSNo (- x) (∀uSNoL x, - x < - u) (∀uSNoR x, - u < - x) SNoCutP {- z|zSNoR x} {- w|wSNoL x}
L1978
Axiom. (SNo_minus_SNo) We take the following as an axiom:
∀x, SNo xSNo (- x)
L1980
Axiom. (minus_SNo_Lt_contra) We take the following as an axiom:
∀x y, SNo xSNo yx < y- y < - x
L1982
Axiom. (minus_SNo_Le_contra) We take the following as an axiom:
∀x y, SNo xSNo yx y- y - x
L1984
Axiom. (minus_SNo_SNoCutP) We take the following as an axiom:
∀x, SNo xSNoCutP {- z|zSNoR x} {- w|wSNoL x}
L1986
Axiom. (minus_SNo_SNoCutP_gen) We take the following as an axiom:
∀L R, SNoCutP L RSNoCutP {- z|zR} {- w|wL}
L1988
Axiom. (minus_SNo_Lev_lem1) We take the following as an axiom:
∀alpha, ordinal alpha∀xSNoS_ alpha, SNoLev (- x) SNoLev x
L1990
Axiom. (minus_SNo_Lev_lem2) We take the following as an axiom:
∀x, SNo xSNoLev (- x) SNoLev x
L1992
Axiom. (minus_SNo_invol) We take the following as an axiom:
∀x, SNo x- - x = x
L1994
Axiom. (minus_SNo_Lev) We take the following as an axiom:
∀x, SNo xSNoLev (- x) = SNoLev x
L1996
Axiom. (minus_SNo_SNo_) We take the following as an axiom:
∀alpha, ordinal alpha∀x, SNo_ alpha xSNo_ alpha (- x)
L1998
Axiom. (minus_SNo_SNoS_) We take the following as an axiom:
∀alpha, ordinal alpha∀x, x SNoS_ alpha- x SNoS_ alpha
L2000
Axiom. (minus_SNoCut_eq_lem) We take the following as an axiom:
∀v, SNo v∀L R, SNoCutP L Rv = SNoCut L R- v = SNoCut {- z|zR} {- w|wL}
L2002
Axiom. (minus_SNoCut_eq) We take the following as an axiom:
∀L R, SNoCutP L R- SNoCut L R = SNoCut {- z|zR} {- w|wL}
L2004
Axiom. (minus_SNo_Lt_contra1) We take the following as an axiom:
∀x y, SNo xSNo y- x < y- y < x
L2006
Axiom. (minus_SNo_Lt_contra2) We take the following as an axiom:
∀x y, SNo xSNo yx < - yy < - x
L2008
Axiom. (mordinal_SNoLev_min_2) We take the following as an axiom:
∀alpha, ordinal alpha∀z, SNo zSNoLev z ordsucc alpha- alpha z
L2010
Axiom. (minus_SNo_SNoS_omega) We take the following as an axiom:
L2012
Axiom. (SNoL_minus_SNoR) We take the following as an axiom:
∀x, SNo xSNoL (- x) = {- w|wSNoR x}
End of Section SurrealMinus
Beginning of Section SurrealAdd
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_SNo.
L2023
Definition. We define add_SNo to be SNo_rec2 (λx y a ⇒ SNoCut ({a w y|wSNoL x} {a x w|wSNoL y}) ({a z y|zSNoR x} {a x z|zSNoR y})) of type setsetset.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_SNo.
L2027
Axiom. (add_SNo_eq) We take the following as an axiom:
∀x, SNo x∀y, SNo yx + y = SNoCut ({w + y|wSNoL x} {x + w|wSNoL y}) ({z + y|zSNoR x} {x + z|zSNoR y})
L2030
Axiom. (add_SNo_prop1) We take the following as an axiom:
∀x y, SNo xSNo ySNo (x + y) (∀uSNoL x, u + y < x + y) (∀uSNoR x, x + y < u + y) (∀uSNoL y, x + u < x + y) (∀uSNoR y, x + y < x + u) SNoCutP ({w + y|wSNoL x} {x + w|wSNoL y}) ({z + y|zSNoR x} {x + z|zSNoR y})
L2038
Axiom. (SNo_add_SNo) We take the following as an axiom:
∀x y, SNo xSNo ySNo (x + y)
L2040
Axiom. (SNo_add_SNo_3) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zSNo (x + y + z)
L2042
Axiom. (SNo_add_SNo_3c) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zSNo (x + y + - z)
L2044
Axiom. (add_SNo_Lt1) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx < zx + y < z + y
L2046
Axiom. (add_SNo_Le1) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx zx + y z + y
L2048
Axiom. (add_SNo_Lt2) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zy < zx + y < x + z
L2050
Axiom. (add_SNo_Le2) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zy zx + y x + z
L2052
Axiom. (add_SNo_Lt3a) We take the following as an axiom:
∀x y z w, SNo xSNo ySNo zSNo wx < zy wx + y < z + w
L2054
Axiom. (add_SNo_Lt3b) We take the following as an axiom:
∀x y z w, SNo xSNo ySNo zSNo wx zy < wx + y < z + w
L2056
Axiom. (add_SNo_Lt3) We take the following as an axiom:
∀x y z w, SNo xSNo ySNo zSNo wx < zy < wx + y < z + w
L2058
Axiom. (add_SNo_Le3) We take the following as an axiom:
∀x y z w, SNo xSNo ySNo zSNo wx zy wx + y z + w
L2060
Axiom. (add_SNo_SNoCutP) We take the following as an axiom:
∀x y, SNo xSNo ySNoCutP ({w + y|wSNoL x} {x + w|wSNoL y}) ({z + y|zSNoR x} {x + z|zSNoR y})
L2062
Axiom. (add_SNo_com) We take the following as an axiom:
∀x y, SNo xSNo yx + y = y + x
L2064
Axiom. (add_SNo_0L) We take the following as an axiom:
∀x, SNo x0 + x = x
L2066
Axiom. (add_SNo_0R) We take the following as an axiom:
∀x, SNo xx + 0 = x
L2068
Axiom. (add_SNo_minus_SNo_linv) We take the following as an axiom:
∀x, SNo x- x + x = 0
L2070
Axiom. (add_SNo_minus_SNo_rinv) We take the following as an axiom:
∀x, SNo xx + - x = 0
L2072
Axiom. (add_SNo_ordinal_SNoCutP) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal betaSNoCutP ({x + beta|xSNoS_ alpha} {alpha + x|xSNoS_ beta}) Empty
L2074
Axiom. (add_SNo_ordinal_eq) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal betaalpha + beta = SNoCut ({x + beta|xSNoS_ alpha} {alpha + x|xSNoS_ beta}) Empty
L2076
Axiom. (add_SNo_ordinal_ordinal) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal betaordinal (alpha + beta)
L2078
Axiom. (add_SNo_ordinal_SL) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal betaordsucc alpha + beta = ordsucc (alpha + beta)
L2080
Axiom. (add_SNo_ordinal_SR) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal betaalpha + ordsucc beta = ordsucc (alpha + beta)
L2082
Axiom. (add_SNo_ordinal_InL) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal beta∀gammaalpha, gamma + beta alpha + beta
L2084
Axiom. (add_SNo_ordinal_InR) We take the following as an axiom:
∀alpha, ordinal alpha∀beta, ordinal beta∀gammabeta, alpha + gamma alpha + beta
L2086
Axiom. (add_nat_add_SNo) We take the following as an axiom:
∀n mω, add_nat n m = n + m
L2088
Axiom. (add_SNo_In_omega) We take the following as an axiom:
∀n mω, n + m ω
L2090
Axiom. (add_SNo_1_1_2) We take the following as an axiom:
1 + 1 = 2
L2092
Axiom. (add_SNo_SNoL_interpolate) We take the following as an axiom:
∀x y, SNo xSNo y∀uSNoL (x + y), (∃vSNoL x, u v + y) (∃vSNoL y, u x + v)
L2094
Axiom. (add_SNo_SNoR_interpolate) We take the following as an axiom:
∀x y, SNo xSNo y∀uSNoR (x + y), (∃vSNoR x, v + y u) (∃vSNoR y, x + v u)
L2096
Axiom. (add_SNo_assoc) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + (y + z) = (x + y) + z
L2098
Axiom. (add_SNo_minus_R2) We take the following as an axiom:
∀x y, SNo xSNo y(x + y) + - y = x
L2100
Axiom. (add_SNo_minus_R2') We take the following as an axiom:
∀x y, SNo xSNo y(x + - y) + y = x
L2102
Axiom. (add_SNo_minus_L2) We take the following as an axiom:
∀x y, SNo xSNo y- x + (x + y) = y
L2104
Axiom. (add_SNo_minus_L2') We take the following as an axiom:
∀x y, SNo xSNo yx + (- x + y) = y
L2106
Axiom. (add_SNo_cancel_L) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + y = x + zy = z
L2108
Axiom. (add_SNo_cancel_R) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + y = z + yx = z
L2110
Axiom. (minus_SNo_0) We take the following as an axiom:
- 0 = 0
L2112
Axiom. (minus_add_SNo_distr) We take the following as an axiom:
∀x y, SNo xSNo y- (x + y) = (- x) + (- y)
L2114
Axiom. (add_SNo_Lev_bd) We take the following as an axiom:
∀x y, SNo xSNo ySNoLev (x + y) SNoLev x + SNoLev y
L2116
Axiom. (add_SNo_SNoS_omega) We take the following as an axiom:
∀x ySNoS_ ω, x + y SNoS_ ω
L2118
Axiom. (add_SNo_Lt1_cancel) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + y < z + yx < z
L2120
Axiom. (add_SNo_Lt2_cancel) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + y < x + zy < z
L2122
Axiom. (add_SNo_Le1_cancel) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + y z + yx z
L2124
Axiom. (add_SNo_assoc_4) We take the following as an axiom:
∀x y z w, SNo xSNo ySNo zSNo wx + y + z + w = (x + y + z) + w
L2127
Axiom. (add_SNo_com_3_0_1) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + y + z = y + x + z
L2130
Axiom. (add_SNo_com_3b_1_2) We take the following as an axiom:
∀x y z, SNo xSNo ySNo z(x + y) + z = (x + z) + y
L2133
Axiom. (add_SNo_com_4_inner_mid) We take the following as an axiom:
∀x y z w, SNo xSNo ySNo zSNo w(x + y) + (z + w) = (x + z) + (y + w)
L2136
Axiom. (add_SNo_minus_SNo_prop2) We take the following as an axiom:
∀x y, SNo xSNo yx + - x + y = y
L2138
Axiom. (add_SNo_minus_Lt1) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx + - y < zx < z + y
L2140
Axiom. (add_SNo_minus_Lt2) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zz < x + - yz + y < x
L2142
Axiom. (add_SNo_minus_Lt1b) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zx < z + yx + - y < z
L2144
Axiom. (add_SNo_minus_Lt2b) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zz + y < xz < x + - y
L2146
Axiom. (add_SNo_minus_Le2) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zz x + - yz + y x
L2148
Axiom. (add_SNo_minus_Le2b) We take the following as an axiom:
∀x y z, SNo xSNo ySNo zz + y xz x + - y
L2150
Axiom. (ordinal_ordsucc_SNo_eq) We take the following as an axiom:
∀alpha, ordinal alphaordsucc alpha = 1 + alpha
L2152
Axiom. (add_SNo_1_ordsucc) We take the following as an axiom:
∀nω, n + 1 = ordsucc n
End of Section SurrealAdd
Beginning of Section SurrealMul
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_SNo.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_SNo.
L2165
Definition. We define mul_SNo to be SNo_rec2 (λx y m ⇒ SNoCut ({m (w 0) y + m x (w 1) + - m (w 0) (w 1)|wSNoL x SNoL y} {m (z 0) y + m x (z 1) + - m (z 0) (z 1)|zSNoR x SNoR y}) ({m (w 0) y + m x (w 1) + - m (w 0) (w 1)|wSNoL x SNoR y} {m (z 0) y + m x (z 1) + - m (z 0) (z 1)|zSNoR x SNoL y})) of type setsetset.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_SNo.
L2177
Axiom. (mul_SNo_eq) We take the following as an axiom:
∀x, SNo x∀y, SNo yx * y = SNoCut ({(w 0) * y + x * (w 1) + - (w 0) * (w 1)|wSNoL x SNoL y} {(z 0) * y + x * (z 1) + - (z 0) * (z 1)|zSNoR x SNoR y}) ({(w 0) * y + x * (w 1) + - (w 0) * (w 1)|wSNoL x SNoR y} {(z 0) * y + x * (z 1) + - (z 0) * (z 1)|zSNoR x SNoL y})
L2186
Axiom. (mul_SNo_eq_2) We take the following as an axiom:
∀x y, SNo xSNo y∀p : prop, (∀L R, (∀u, u L(∀q : prop, (∀w0SNoL x, ∀w1SNoL y, u = w0 * y + x * w1 + - w0 * w1q)(∀z0SNoR x, ∀z1SNoR y, u = z0 * y + x * z1 + - z0 * z1q)q))(∀w0SNoL x, ∀w1SNoL y, w0 * y + x * w1 + - w0 * w1 L)(∀z0SNoR x, ∀z1SNoR y, z0 * y + x * z1 + - z0 * z1 L)(∀u, u R(∀q : prop, (∀w0SNoL x, ∀z1SNoR y, u = w0 * y + x * z1 + - w0 * z1q)(∀z0SNoR x, ∀w1SNoL y, u = z0 * y + x * w1 + - z0 * w1q)q))(∀w0SNoL x, ∀z1SNoR y, w0 * y + x * z1 + - w0 * z1 R)(∀z0SNoR x, ∀w1SNoL y, z0 * y + x * w1 + - z0 * w1 R)x * y = SNoCut L Rp)p
L2207
Axiom. (mul_SNo_prop_1) We take the following as an axiom:
∀x, SNo x∀y, SNo y∀p : prop, (SNo (x * y)(∀uSNoL x, ∀vSNoL y, u * y + x * v < x * y + u * v)(∀uSNoR x, ∀vSNoR y, u * y + x * v < x * y + u * v)(∀uSNoL x, ∀vSNoR y, x * y + u * v < u * y + x * v)(∀uSNoR x, ∀vSNoL y, x * y + u * v < u * y + x * v)p)p
L2217
Axiom. (SNo_mul_SNo) We take the following as an axiom:
∀x y, SNo xSNo ySNo (x * y)
L2219
Axiom. (SNo_mul_SNo_lem) We take the following as an axiom:
∀x y u v, SNo xSNo ySNo uSNo vSNo (u * y + x * v + - (u * v))
L2221
Axiom. (mul_SNo_Lt) We take the following as an axiom:
∀x y u v, SNo xSNo ySNo uSNo vu < xv < yu * y + x * v < x * y + u * v
L2224
Axiom. (mul_SNo_Le) We take the following as an axiom:
∀x y u v, SNo xSNo ySNo uSNo vu xv yu * y + x * v x * y + u * v
L2227
Axiom. (mul_SNo_SNoL_interpolate) We take the following as an axiom:
∀x y, SNo xSNo y∀uSNoL (x * y), (∃vSNoL x, ∃wSNoL y, u + v * w v * y + x * w) (∃vSNoR x, ∃wSNoR y, u + v * w v * y + x * w)
L2232
Axiom. (mul_SNo_SNoL_interpolate_impred) We take the following as an axiom:
∀x y, SNo xSNo y∀uSNoL (x * y), ∀p : prop, (∀vSNoL x, ∀wSNoL y, u + v * w v * y + x * wp)(∀vSNoR x, ∀wSNoR y, u + v * w v * y + x * wp)p
L2238
Axiom. (mul_SNo_SNoR_interpolate) We take the following as an axiom:
∀x y, SNo xSNo y∀uSNoR (x * y), (∃vSNoL x, ∃wSNoR y, v * y + x * w u + v * w) (∃vSNoR x, ∃wSNoL y, v * y + x * w u + v * w)
L2243
Axiom. (mul_SNo_SNoR_interpolate_impred) We take the following as an axiom:
∀x y, SNo xSNo y∀uSNoR (x * y), ∀p : prop, (∀vSNoL x, ∀wSNoR y, v * y + x * w u + v * wp)(∀vSNoR x, ∀wSNoL y, v * y + x * w u + v * wp)p
L2249
Axiom. (nonpos_nonneg_0) We take the following as an axiom:
∀m nω, m = - nm = 0 n = 0
L2251
Axiom. (mul_minus_SNo_distrR) We take the following as an axiom:
∀x y, SNo xSNo yx * (- y) = - (x * y)
End of Section SurrealMul
Beginning of Section Int
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_SNo.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_SNo.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_SNo.
L2263
L2265
Axiom. (int_SNo_cases) We take the following as an axiom:
∀p : setprop, (∀nω, p n)(∀nω, p (- n))∀xint, p x
L2270
Axiom. (int_3_cases) We take the following as an axiom:
∀nint, ∀p : prop, (∀mω, n = - ordsucc mp)(n = 0p)(∀mω, n = ordsucc mp)p
L2276
Axiom. (int_SNo) We take the following as an axiom:
∀xint, SNo x
L2278
Axiom. (Subq_omega_int) We take the following as an axiom:
L2280
Axiom. (int_minus_SNo_omega) We take the following as an axiom:
∀nω, - n int
L2282
Axiom. (int_add_SNo_lem) We take the following as an axiom:
∀nω, ∀m, nat_p m- n + m int
L2284
Axiom. (int_add_SNo) We take the following as an axiom:
∀x yint, x + y int
L2286
Axiom. (int_minus_SNo) We take the following as an axiom:
∀xint, - x int
L2288
Axiom. (int_mul_SNo) We take the following as an axiom:
∀x yint, x * y int
L2290
Axiom. (nonneg_int_nat_p) We take the following as an axiom:
∀nint, 0 nnat_p n
End of Section Int
Beginning of Section SurrealExp
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_SNo.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_SNo.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_SNo.
L2299
Definition. We define exp_SNo_nat to be λn m : setnat_primrec 1 (λ_ r ⇒ n * r) m of type setsetset.
Notation. We use ^ as an infix operator with priority 342 and which associates to the right corresponding to applying term exp_SNo_nat.
L2302
Axiom. (exp_SNo_nat_0) We take the following as an axiom:
∀x, SNo xx ^ 0 = 1
L2304
Axiom. (exp_SNo_nat_S) We take the following as an axiom:
∀x, SNo x∀n, nat_p nx ^ (ordsucc n) = x * x ^ n
L2306
Axiom. (exp_SNo_nat_1) We take the following as an axiom:
∀x, SNo xx ^ 1 = x
L2308
Axiom. (SNo_exp_SNo_nat) We take the following as an axiom:
∀x, SNo x∀n, nat_p nSNo (x ^ n)
L2310
Axiom. (nat_exp_SNo_nat) We take the following as an axiom:
∀x, nat_p x∀n, nat_p nnat_p (x ^ n)
End of Section SurrealExp