Goal:
  
  G1 : t
  ext : EdgeSet.t
  x : VSet.elt
  e : EdgeSet.elt
  es : list EdgeSet.elt
  ih : VSet.In x (fold_right fold_fun VSet.empty es) <->
       (exists e : EdgeSet.elt,
          In e es /\ (x = e..s \/ x = e..t) /\ VSet.In x (V G1))
  e0 : EdgeSet.elt
  _a_ : In e0 es
  _b_ : (x = e0..s \/ x = e0..t) /\ VSet.In x (V G1)
  ============================
   ((e = e0 \/ In e0 es) /\ (x = e0..s \/ x = e0..t) /\ VSet.In x (V G1))


DEBUG:Going to execute:
split => //
DEBUG LTAC Evaluated term: e0