Goal:
  
  G : t
  l : labelling
  Gl := relabel G l : t
  sG0 : l (s G) = 0%nat
  edgeG : forall e : EdgeSet.elt,
          EdgeSet.In e (E G) -> VSet.In e..s (V G) /\ VSet.In e..t (V G)
  sG : VSet.In (s G) (V G)
  wG : forall x : VSet.elt,
       VSet.In x (V G) -> ∥ ∑ p : PathOf G (s G) x, ∥ 0 <= weight p ∥ ∥
  e : EdgeSet.elt
  e' : Edge.t
  _b_ : EdgeSet.In e' (E G)
  ============================
   (VSet.In (e'..s, diff l e'..s e'..t, e'..t)..s (V Gl) /\
    VSet.In (e'..s, diff l e'..s e'..t, e'..t)..t (V Gl))


DEBUG:Going to execute:
cbn
DEBUG LTAC Evaluated term: edge_map_spec2
DEBUG LTAC Evaluated term: (iffLR
                              (Q:=exists e0 : Edge.t,
                                    e =
                                    (fun e : Edge.t =>
                                     (e..s, diff l e..s e..t, e..t)) e0 /\
                                    EdgeSet.In e0 (E G))
                              (edge_map_spec2
                                 (fun e : Edge.t =>
                                  (e..s, diff l e..s e..t, e..t)) 
                                 (E G) e) _view_subject_)