(*s [(ad_simple_path_dist x y)] computes the minimum path from x to y *)
Definition ad_simple_path_dist (x y : ad) :=
  ad_simple_path_dist_1 x y nil (MapCard _ cg).

Lemma ad_simple_path_dist_d_3 : forall (x y z : ad) (d d' : D), Ddle (ad_simple_path_dist x y) (Some d) = true -> Ddle (ad_simple_path_dist y z) (Some d') = true -> Ddle (ad_simple_path_dist x z) (Some (Dplus d' d)) = true.