#s; napply mk_setoid1
[ napply (carr s)
| napply (mk_equivalence_relation1 s)
- [ napply eq
+ [ napply eq0
| napply refl
| napply sym
| napply trans]##]
(*prefer coercion Type_OF_setoid.*)
interpretation "setoid1 eq" 'eq t x y = (eq_rel1 ? (eq1 t) x y).
-interpretation "setoid eq" 'eq t x y = (eq_rel ? (eq t) x y).
+interpretation "setoid eq" 'eq t x y = (eq_rel ? (eq0 t) x y).
notation > "hvbox(a break =_12 b)" non associative with precedence 45
for @{ eq_rel2 (carr2 (setoid2_of_setoid1 ?)) (eq2 (setoid2_of_setoid1 ?)) $a $b }.
notation > "hvbox(a break =_0 b)" non associative with precedence 45
-for @{ eq_rel ? (eq ?) $a $b }.
+for @{ eq_rel ? (eq0 ?) $a $b }.
notation > "hvbox(a break =_1 b)" non associative with precedence 45
for @{ eq_rel1 ? (eq1 ?) $a $b }.
(* -------------------------------------------------------------------- *) ⊢
fun11 ?? R ≡ (composition1 … f g).
-(*
-ndefinition comp_binary_morphisms:
+ndefinition comp1_binary_morphisms:
∀o1,o2,o3.
- binary_morphism1 (unary_morphism1_setoid1 o2 o3) (unary_morphism1_setoid1 o1 o2)
- (unary_morphism1_setoid1 o1 o3).
-#o1; #o2; #o3; @
+ unary_morphism1 (unary_morphism1_setoid1 o2 o3)
+ (unary_morphism1_setoid1 (unary_morphism1_setoid1 o1 o2) (unary_morphism1_setoid1 o1 o3)).
+#o1; #o2; #o3; napply mk_binary_morphism1
[ #f; #g; napply (comp1_unary_morphisms … f g) (*CSC: why not ∘?*)
- | #a; #a'; #b; #b'; #ea; #eb; #x; nnormalize;
- napply (.= †(eb x)); napply ea.
+ | #a; #a'; #b; #b'; #ea; #eb; #x; #x'; #Hx; nnormalize; /3/ ]
nqed.
-*)