#[local]
Hint Resolve set_add_intro1 set_add_intro2 : core.

(* Specifications: *)
Lemma set_add_intro :
forall (a b:A) (x:set), a = b \/ set_In a x -> set_In a (set_add b x).
Lemma set_add_elim :
forall (a b:A) (x:set), set_In a (set_add b x) -> a = b \/ set_In a x.
Lemma set_add_elim2 :
forall (a b:A) (x:set), set_In a (set_add b x) -> a <> b -> set_In a x.