eq1: equivalence_relation1 carr1
}.
+unification hint 0 ≔ R : setoid1;
+ MR ≟ (carr1 R),
+ lock ≟ mk_lock2 Type[1] MR setoid1 R
+(* ---------------------------------------- *) ⊢
+ setoid1 ≡ force2 ? MR lock.
+
ndefinition setoid1_of_setoid: setoid → setoid1.
#s; @ (carr s); @ (eq0…) (refl…) (sym…) (trans…);
nqed.
fun11 ?? R ≡ (composition1 … f g).
ndefinition comp1_binary_morphisms:
- ∀o1,o2,o3.
- (unary_morphism1_setoid1 o2 o3) ⇒_1
- (unary_morphism1_setoid1 (unary_morphism1_setoid1 o1 o2) (unary_morphism1_setoid1 o1 o3)).
+ ∀o1,o2,o3. (o2 ⇒_1 o3) ⇒_1 ((o1 ⇒_1 o2) ⇒_1 (o1 ⇒_1 o3)).
#o1; #o2; #o3; napply mk_binary_morphism1
- [ #f; #g; napply (comp1_unary_morphisms … f g) (*CSC: why not ∘?*)
+ [ #f; #g; napply (comp1_unary_morphisms … f g)
| #a; #a'; #b; #b'; #ea; #eb; #x; #x'; #Hx; nnormalize; /3/ ]
nqed.