Proof
fun X Y Z x y R z' E H1 H2 =>
H2 x y R z' (eq_refl (foo X Y Z) (foo_in X Y Z x y R z'))
(eq_refl (foo X Y Z) (foo_rt X Y Z)).
(** We now prove that for any x:X, y:Y and R:(Rel (Z x y)), the function  (foo_in X Y Z x y R)  :  (Z x y)->(foo X Y Z)  induces a delocation from the graph ((Z x y), R) to the graph ((foo X Y Z), (FOO x y z)).  *)

(* Specifications: *)
Lemma FOO_deloc :
forall (X Y : Typ1) (Z : X -> Y -> Typ1) (x : X) (y : Y) (R : Rel (Z x y)),
deloc (Z x y) R (foo X Y Z) (FOO X Y Z) (foo_in X Y Z x y R).