red in |- *.
simpl in |- *.
unfold app_rel, cart_eq in |- *; intuition.
Qed.
Hint Resolve proj1_comp proj2_comp: algebra.
Definition proj1_map : MAP (cart E F) E := Build_Map proj1_comp.
Definition proj2_map : MAP (cart E F) F := Build_Map proj2_comp.
Definition couple (x : E) (y : F) : cart E F := Build_cart_type x y.

(* Specifications: *)
Lemma couple_comp :
forall (x x' : E) (y y' : F),
Equal x x' -> Equal y y' -> Equal (couple x y) (couple x' y').