Goal:
    _z_ : VSet.t  x0 : V.t  x1 : V.t  x2 : V.t  a : V.t
  ============================
   ((VSet.In a (VSet.add x0 (VSet.add x1 (VSet.add x2 _z_))) ->
     VSet.In a (VSet.add x2 (VSet.add x0 (VSet.add x1 _z_)))) /\
    (VSet.In a (VSet.add x2 (VSet.add x0 (VSet.add x1 _z_))) ->
     VSet.In a (VSet.add x0 (VSet.add x1 (VSet.add x2 _z_)))))


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