| Some definitions of interest. |
|
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 |
|
not | Def A == A  False |
| | Thm* A:Prop. ( A) Prop |