Thm* ( f:(A B). Bij(A; B; f))  (A ~~ B) | [bij_iff_1_1_corr] |
Thm* f:(A B), g:(B A). InvFuns(A; B; f; g)  Bij(A; B; f) | [fun_with_inv_is_bij] |
Thm* f:(A B). Bij(A; B; f)  ( g:(B A). InvFuns(A; B; f; g)) | [bij_imp_exists_inv] |
Thm* B:(A Type), Q:(x:A B(x) Type).
Thm* ( x:A. y:B(x). Q(x,y))  ( f:(x:A B(x)). x:A. Q(x,f(x))) | [dep_ax_choice] |
Thm* Q:(A B Prop). ( x:A. y:B. Q(x,y))  ( f:(A B). x:A. Q(x,f(x))) | [ax_choice] |
Thm* f:(A B), g:(B A). SqStable(InvFuns(A; B; f; g)) | [sq_stable__inv_funs] |
Thm* f:(A B). f o Id = f | [comp_id_r] |
Thm* f:(A B). Id o f = f | [comp_id_l] |
Thm* f:(A B), g:(B C), h:(C D). h o (g o f) = (h o g) o f A D | [comp_assoc] |
Thm* f:(A B). ( x.f(x)) = f | [eta_conv] |
Def Surj(A; B; f) == b:B. a:A. f(a) = b | [surject] |
Def Inj(A; B; f) == a1,a2:A. f(a1) = f(a2) B  a1 = a2 | [inject] |