Thm* b: . b  b = false | [not_assert_imp_eq_bfalse] |
Thm* b: . b  b = true | [assert_imp_eq_btrue] |
Thm* P:(('a 'a  ) Prop).
Thm* P(<eq_pred:( x:'a. y:'a. x = y)>)  ( f:eq('a). P(f)) | [eq_pred_abstraction] |
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,'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* p,q: . (p q)  p & q | [not_or] |
Thm* p,q: . (p & q)  p q | [not_and] |
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* A:Type, b: , x:(b A), y:(( b) A). bif(b; bx.x(bx); by.y(by)) A | [bif_wf] |
Thm* x,y: . (x = y)  (x  y) | [assert_of_bequal_bools] |
Thm* x,y: . x = y  (x  y) | [bequal_bools] |
Thm* false = true  False | [btrue_neq_bfalse_simp_2] |
Thm* true = false  False | [btrue_neq_bfalse_simp_1] |
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* P: . ( P) = P | [prop_to_bool_char_2] |
Thm* P:Prop{2}. ( P)  | [prop_to_bool_2_wf] |
Def eq('a) == {f:('a 'a  )| f = ( x:'a. y:'a. x = y) } | [eq_pred] |