End CGConsistent.
(*s We assume that any cycle has a positive weight *)
Section CGNoBadCycles.
Variable
no_bad_cycles :
forall (x : ad) (d : D) (l : list ad),
CG_path x d (x :: l) -> Dle Dz d = true.
(*s The edges are in the domain of the graph *)

(*s The elements of a path are in the domain of the graph extended with the last element *)
Lemma CG_path_in_cg_1 :
forall (l : list ad) (last : ad) (d : D),
CG_path last d l -> MapSubset _ _ (Elems l) (MapPut _ (MapDom _ cg) last tt).