intros a b x H; case (set_add_elim _ _ _ H); intros; trivial.
case H1; trivial.
Qed.
#[local]
Hint Resolve set_add_intro set_add_elim set_add_elim2 : core.

Lemma set_add_not_empty : forall (a:A) (x:set), set_add a x <> empty_set.