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


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