intros.
induction  f as [| a f Hrecf].
simpl in |- *.
auto.
generalize H.
simpl in |- *.
elim a.
intro; intro.
elim (Xeq_dec o a0).
intro.
rewrite a1.
intro.
cut False.
intro F; elim F.
unfold not in H0.
apply H0.
apply set_add_intro2.
auto.
intros.
apply Hrecf.
unfold not in H0; unfold not in |- *.
intro; apply H0.
apply set_add_intro1.
auto.
Qed.
Hint Resolve NotInDOMIsUndef.

(* Specifications: *)
Lemma InDOMIsNotUndef :
forall (o : X) (f : set (X * Y)), set_In o (DOM f) -> PARTFUNC f o <> None.