| apply orelation_of_relation_preserves_composition; ]
qed.
-theorem POW_faithful:
- ∀S,T.∀f,g:arrows2 (category2_of_category1 REL) S T.
- POW⎽⇒ f =_2 POW⎽⇒ g → f =_2 g.
- intros; unfold POW in e; simplify in e; cases e;
+theorem POW_faithful: faithful2 ?? POW.
+ intros 5; unfold POW in e; simplify in e; cases e;
unfold orelation_of_relation in e3; simplify in e3; clear e e1 e2 e4;
intros 2; cases (e3 {(x)});
split; intro; [ lapply (s y); | lapply (s1 y); ]
|*: cases Hletin; cases x1; change in f3 with (x =_1 w); apply (. f3‡#); assumption;]
qed.
-
+(*
lemma currify: ∀A,B,C. (A × B ⇒_1 C) → A → (B ⇒_1 C).
intros; constructor 1; [ apply (b c); | intros; apply (#‡e);]
qed.
+*)
-theorem POW_full: ∀S,T.∀f: (POW S) ⇒_\o2 (POW T) . exT22 ? (λg. POW⎽⇒ g = f).
- intros; exists;
+theorem POW_full: full2 ?? POW.
+ intros 3 (S T); exists;
[ constructor 1; constructor 1;
[ apply (λx:carr S.λy:carr T. y ∈ f {(x)});
| intros; unfold FunClass_1_OF_carr2; lapply (.= e1‡#);