Goal:
    G1 : t  ext : EdgeSet.t  x : VSet.elt
  ============================
   ((exists e : EdgeSet.elt,
       In e (EdgeSet.elements ext) /\
       (x = e..s \/ x = e..t) /\ VSet.In x (V G1)) <->
    (exists e : EdgeSet.elt,
       EdgeSet.In e ext /\ (x = e..s \/ x = e..t) /\ VSet.In x (V G1)))


DEBUG:Going to execute:
fun => <coq-core.plugins.ltac::split@0>

Goals:
    G1 : t  ext : EdgeSet.t  x : VSet.elt
  ============================
   ((exists e : EdgeSet.elt,
       In e (EdgeSet.elements ext) /\
       (x = e..s \/ x = e..t) /\ VSet.In x (V G1)) ->
    exists e : EdgeSet.elt,
      EdgeSet.In e ext /\ (x = e..s \/ x = e..t) /\ VSet.In x (V G1))

    G1 : t  ext : EdgeSet.t  x : VSet.elt
  ============================
   ((exists e : EdgeSet.elt,
       EdgeSet.In e ext /\ (x = e..s \/ x = e..t) /\ VSet.In x (V G1)) ->
    exists e : EdgeSet.elt,
      In e (EdgeSet.elements ext) /\
      (x = e..s \/ x = e..t) /\ VSet.In x (V G1))


DEBUG:Going to execute:
move  =>[e [? ?]]