Thm* b: . b  b = false | [not_assert_imp_eq_bfalse] |
Thm* b: . b  b = true | [assert_imp_eq_btrue] |
Thm* t:A. t = t  True | [eq_refl] |
Thm* x:A. ( y:A. x = y)  True | [exists_explicit_2] |
Thm* x:A. ( y:A. y = x)  True | [exists_explicit_1] |
Thm* ( x:A. False)  False | [exists_false] |
Thm* A:S. ( x:A. False)  False | [all_false] |
Thm* ( x:A. True)  True | [all_true] |
Thm* (True  P)  P | [true_imp] |
Thm* (False  P)  True | [false_imp] |
Thm* (P  True)  True | [imp_true] |
Thm* (P  False)  P | [imp_false] |
Thm* P & False  False | [and_false] |
Thm* False & P  False | [false_and] |
Thm* P & True  P | [and_true] |
Thm* True P  True | [true_or] |
Thm* P False  P | [or_false] |
Thm* False P  P | [false_or] |
Thm* P True  True | [or_true] |
Thm* True & P  P | [true_and] |
Thm* P  ( f:eq('a). P) | [add_eq_pred_qf] |
Thm* 'a:S, P:(eq('a) Prop).
Thm* ( f:eq('a). P(f))  P(<eq_pred:( x:'a. y:'a. x = y)>) | [eq_pred_unabstraction] |
Thm* P:(('a 'a  ) Prop).
Thm* P(<eq_pred:( x:'a. y:'a. x = y)>)  ( f:eq('a). P(f)) | [eq_pred_abstraction] |
Thm* 'a:S. <eq_pred:( x:'a. y:'a. x = y)> eq('a) | [eq_pred_marker_wf] |
Thm* f:eq('a). f = ( x:'a. y:'a. x = y) 'a 'a   | [eq_pred_char] |
Thm* eq('a) ('a 'a  ) | [eq_pred_inc] |
Thm* 'a:Type. eq('a) Type | [eq_pred_wf] |
Thm* 'a,'b:S.
Thm* ( p:'a 'b. a:'a. b:'b. (a = 1of(p)) (b = 2of(p)))
Thm* =
Thm* (@ rep:'a 'b 'a 'b 
Thm* (@ (( p',p'':'a 'b. ((rep(p')) = (rep(p'')))  (p' = p''))
Thm* (@ ( x:'a 'b 
Thm* (@ ( ((his_pair('a; 'b)(x)) = ( p':'a 'b. (x = (rep(p')))))))) | [rep_prod_axiom] |
Thm* 'a,'b:S, P:('b  ), rep:('a 'b), abs:('b 'a), a:'a, r:'b.
Thm* iso_pair('a;'b;P;rep;abs)  rep(a) = r  a = abs(r) | [iso_pair_rep_to_abs] |
Thm* 'a,'b:S, P:('b  ), rep:('a 'b), abs:('b 'a).
Thm* iso_pair('a;'b;P;rep;abs)
Thm* 
Thm* ( a:'a. abs(rep(a)) = a) & ( r:'b. P(r) = ((rep(abs(r))) = r)) | [iso_pair_char] |
Thm* p: .  p  p | [not_not] |
Thm* i,j: . i< j  j i | [not_lt_int] |
Thm* i,j: . i j  j< i | [not_le_int] |
Thm* p,q: . (p q)  p & q | [not_or] |
Thm* p,q: . (p & q)  p q | [not_and] |
Thm* T:S, P:(T Prop). ( x:T. P(x))  ( x:T. P(x)) | [not_all] |
Thm* T:S, P:(T Prop). ( x:T. P(x))  ( x:T. P(x)) | [not_exists] |
Thm* T:S, P:(T  ).  ( x:T. P(x)) = ( x:T.  P(x)) | [bnot_ball] |
Thm* T:S, P:(T  ).  ( x:T. P(x)) = ( x:T.  P(x)) | [bnot_bexists] |
Thm* 'a,'b:S, P:('b  ), rep:('a 'b), abs:('b 'a).
Thm* iso_pair('a;'b;P;rep;abs)
Thm* 
Thm* ( rep':('a 'b). type_definition('b;'a;P;rep')) | [type_def_iso] |
Thm* 'a,'b:S, P:('b  ), rep:('a 'b), abs:('b 'a).
Thm* iso_pair('a;'b;P;rep;abs) Prop | [iso_pair_wf] |
Thm* A,B:Type, x:A+B. isr(x)  | [isr_wf] |
Thm* f,g:('a 'b). f = ( x:'a. g(x))  ( x:'a. f(x) = g(x)) | [ext_simp_2] |
Thm* f,g:('a 'b). ( x:'a. f(x)) = ( x:'a. g(x))  ( x:'a. f(x) = g(x)) | [ext_simp_1] |
Thm* A:Type, b: , x:(b A), y:(( b) A). bif(b; bx.x(bx); by.y(by)) A | [bif_wf] |
Thm* 'a,'b:S. 'a+'b S | [union_wf_stype] |
Thm* x,y: . (x = y)  (x  y) | [assert_of_bequal_bools] |
Thm* x,y: . x = y  (x  y) | [bequal_bools] |
Thm* x,y:T. (x = y)  x = y | [assert_of_bequal] |
Thm* T:Type, x,y:T. (x = y)  | [bequal_wf] |
Thm* P:(T  ). ( x:T. P(x))  ( x:T. P(x)) | [assert_of_bexists] |
Thm* T:Type, P:(T  ). ( x:T. P(x))  | [bexists_wf] |
Thm* P:(T  ). ( x:T. P(x))  ( x:T. P(x)) | [assert_of_ball] |
Thm* T:Type, P:(T  ). ( x:T. P(x))  | [ball_wf] |
Thm* 'a:S, P,Q:('a Prop).
Thm* ( x:'a. Q(x)  P(x))  ( x:'a. Q(x))  P(@x:'a. Q(x)) | [choose_elim_pos] |
Thm* 'a:S, P,Q:('a Prop).
Thm* ( x:'a. Q(x)  P(x))
Thm* 
Thm* (( x:'a. Q(x))  ( x:'a. P(x)))  P(@x:'a. Q(x)) | [choose_elim_neg] |
Thm* P:('a Prop), x:'a. P(x)  P(@x:'a. P(x)) | [choose_true] |
Thm* P:('a Type), x:'a. P(x)  ( y:'a. P(y)  x = y)  (@y:'a. P(y)) = x | [choose_unique] |
Thm* T:S, P,Q:(T Type). ( x:T. P(x)  Q(x))  (@x:T. P(x)) = (@x:T. Q(x)) | [choose_functionality_axiom] |
Thm* T:S, P:(T Type). (@x:T. P(x)) T | [choose_wf] |
Thm* T:S. arb(T) T | [arb_wf] |
Thm* 'a:S, P:('a Prop). lem('a) = lem({x:'a| True }) 'a | [lem_extensionality_axiom] |
Thm* P: . ( P) = P | [prop_to_bool_char_2] |
Thm* P:Prop{2}. ( P)  P | [prop_to_bool_2_char] |
Thm* ( P)  P | [prop_to_bool_char] |
Thm* P:Prop{2}. ( P)  | [prop_to_bool_2_wf] |
Thm* A = B  A  B & B  A | [ext_axiom] |
Def iso_pair('a;'b;P;rep;abs)
Def == ( r:'b. abs(r) = (@a:'a. (r = rep(a)))) & type_definition('b;'a;P;rep) | [iso_pair] |
Def type_definition('a;'b;P;rep)
Def == ( x',x'':'b. rep(x') = rep(x'') 'a  x' = x'')
Def == & ( x:'a. (P(x))  ( x':'b. x = rep(x'))) | [type_definition] |
Def  x:T. P(x) ==  ( x:T. P(x)) | [ball] |