Goal:
    x : V.t  y : V.t  p : VSet.t  H : x <> y  a : V.t
  ============================
   ((VSet.In a (VSet.add x (VSet.remove y p)) ->
     VSet.In a (VSet.remove y (VSet.add x p))) /\
    (VSet.In a (VSet.remove y (VSet.add x p)) ->
     VSet.In a (VSet.add x (VSet.remove y p))))


DEBUG:Going to execute:
repeat
            match goal with
            | H:context [ ?P -> False ] |- _ => fold (~ P) in H
            | |- context [ ?P -> False ] => fold (~ P)
            end