| Some definitions of interest. |
|
eqfun_p | Def IsEqFun(T;eq) == x,y:T. (x eq y)  x = y |
| | Thm* T:Type, eq:(T T  ). IsEqFun(T;eq) Prop |
|
assert | Def b == if b True else False fi |
| | Thm* b: . b Prop |
|
injection_type | Def A inj B == {f:(A B)| Inj(A; B; f) } |
| | Thm* A,B:Type. A inj B Type |
|
inject | Def Inj(A; B; f) == a1,a2:A. f(a1) = f(a2) B  a1 = a2 |
| | Thm* A,B:Type, f:(A B). Inj(A; B; f) Prop |
|
int_seg | Def {i..j } == {k: | i k < j } |
| | Thm* m,n: . {m..n } Type |
|
least | Def least i: . p(i) == if p(0) 0 else (least i: . p(i+1))+1 fi (recursive) |
| | Thm* k: , p:{p:( k  )| i: k. p(i) }. (least i: . p(i)) k |
| | Thm* p:{p:(   )| i: . p(i) }. (least i: . p(i))  |
|
nat | Def == {i: | 0 i } |
| | Thm* Type |
|
surjection_type | Def A onto B == {f:(A B)| Surj(A; B; f) } |
| | Thm* A,B:Type. A onto B Type |
|
surject | Def Surj(A; B; f) == b:B. a:A. f(a) = b |
| | Thm* A,B:Type, f:(A B). Surj(A; B; f) Prop |