(*==========================================================
                 CONNECTIVITY IN HMAPS : 
==========================================================*)

(* Connectivity: Definition in Prop "A� la" Warshall *)

Fixpoint eqc(m:fmap)(x y:dart){struct m}:Prop:=
 match m with
     V => False
  |  I m0 x0 _ _ => x=x0 /\ y=x0 \/ eqc m0 x y
  |  L m0 _ x0 y0 =>
      eqc m0 x y
     \/ eqc m0 x x0 /\ eqc m0 y0 y
     \/ eqc m0 x y0 /\ eqc m0 x0 y
 end.

Lemma eqc_trans: forall(m:fmap)(x y z:dart), eqc m x y -> eqc m y z -> eqc m x z.