∀P,Q. arrows1 BP P Q → relation_pair_setoid P Q ≝ λP,Q,x.x.
coercion relation_pair_setoid_of_arrows1_BP.
-definition BPext: ∀o: BP. form o ⇒ Ω \sup (concr o).
+definition BPext: ∀o: BP. (form o) ⇒_1 Ω^(concr o).
intros; constructor 1;
[ apply (ext ? ? (rel o));
| intros;
apply refl1]
qed.
-definition BPextS: ∀o: BP. Ω \sup (form o) ⇒ Ω \sup (concr o).
+definition BPextS: ∀o: BP. Ω^(form o) ⇒_1 Ω^(concr o).
intros; constructor 1;
[ apply (minus_image ?? (rel o));
| intros; apply (#‡e); ]
qed.
-definition fintersects: ∀o: BP. binary_morphism1 (form o) (form o) (Ω \sup (form o)).
+definition fintersects: ∀o: BP. (form o) × (form o) ⇒_1 Ω^(form o).
intros (o); constructor 1;
[ apply (λa,b: form o.{c | BPext o c ⊆ BPext o a ∩ BPext o b });
intros; simplify; apply (.= (†e)‡#); apply refl1
interpretation "fintersects" 'fintersects U V = (fun21 ??? (fintersects ?) U V).
definition fintersectsS:
- ∀o:BP. binary_morphism1 (Ω \sup (form o)) (Ω \sup (form o)) (Ω \sup (form o)).
+ ∀o:BP. Ω^(form o) × Ω^(form o) ⇒_1 Ω^(form o).
intros (o); constructor 1;
- [ apply (λo: basic_pair.λa,b: Ω \sup (form o).{c | BPext o c ⊆ BPextS o a ∩ BPextS o b });
+ [ apply (λo: basic_pair.λa,b: Ω^(form o).{c | BPext o c ⊆ BPextS o a ∩ BPextS o b });
intros; simplify; apply (.= (†e)‡#); apply refl1
| intros; split; simplify; intros;
[ apply (. #‡((†e^-1)‡(†e1^-1))); assumption
interpretation "fintersectsS" 'fintersects U V = (fun21 ??? (fintersectsS ?) U V).
-definition relS: ∀o: BP. binary_morphism1 (concr o) (Ω \sup (form o)) CPROP.
+definition relS: ∀o: BP. (concr o) × Ω^(form o) ⇒_1 CPROP.
intros (o); constructor 1;
- [ apply (λx:concr o.λS: Ω \sup (form o).∃y:form o.y ∈ S ∧ x ⊩⎽o y);
+ [ apply (λx:concr o.λS: Ω^(form o).∃y:form o.y ∈ S ∧ x ⊩⎽o y);
| intros; split; intros; cases e2; exists [1,3: apply w]
[ apply (. (#‡e1^-1)‡(e^-1‡#)); assumption
| apply (. (#‡e1)‡(e‡#)); assumption]]