intros.
cut (x = y \/ set_In x B).
intro.
elim H1.
intro.
absurd (x = y).
auto.
auto.
intro.
auto.
eapply (set_add_elim (A:=A) (Aeq_dec:=Aeq_dec) (a:=x) (b:=y) (x:=B)).
auto.
Qed.

(* Specifications: *)
Lemma Set_add2 :
forall (B : set A) (x y : A),
x <> y -> ~ set_In x B -> ~ set_In x (set_add Aeq_dec y B).