Goal:
  
  G : t
  HG : acyclic_no_loop
  s : VSet.t
  x : V.t
  y1 : V.t
  y2 : V.t
  n : Z
  He : EdgeSet.In (y1, n, y2) (E G)
  Hy : VSet.In y1 s
  p : SPath s x y1
  p1 : SPath (VSet.remove y1 s) x y1
  p2 : SPath s y1 y1
  Hp12 : split' p = (p1, p2)
  H : sweight p1 + sweight p2 = sweight p
  ============================
   (Some (sweight p) + Some n <=
    Some (sweight (add_end p1 (n; He) ?Hs@{m:=sweight p})))%nbar


DEBUG:Going to execute:
rewrite weight_add_end