Goal:
  
  G1 : t
  ext : EdgeSet.t
  x : VSet.elt
  xs : V.t
  _b_ : Z
  xt : V.t
  ys : V.t
  _b1_ : Z
  yt : V.t
  _z_ : VSet.t
  x0 : V.t
  ============================
   (VSet.Equal
      (VSet.add x0
         (VSet.add (xs, _b_, xt)..t
            (VSet.add (ys, _b1_, yt)..s (VSet.add (ys, _b1_, yt)..t _z_))))
      (VSet.add (ys, _b1_, yt)..s
         (VSet.add (ys, _b1_, yt)..t
            (VSet.add x0 (VSet.add (xs, _b_, xt)..t _z_)))))


DEBUG:Going to execute:
fun t =>
             tryif Ltac.is_var t then fail "no need to abstract a variable"
               else (let x := fresh "x" in
                     set (x := t) in *; try clearbody x)