In A Course on Basic Model Theory ( Haimanti Sarbadhikari, Shashi Mohan Srivastava, pp. 27-28) and other textbooks, I have found the following distinction:
- A theory T has Built-in Skolem Functions iff $T\models \forall x \exists y \varphi(x,y) \rightarrow \varphi (x,f(x))$
- A theory T has Definable Skolem Functions iff
$T \models ∀w∀u∀v ((ψ(w, u) ∧ψ(w, v)) → u = v),$
$T \models ∀w (∃vφ(w, v) →∃u (ψ(w, u) ∧φ(w, u)).$
Moreover, in this latter case we can introduce an anxiom such as: $x=f_{\varphi }(w) \iff \psi (w,u)$
I have few questions about this distinction:
1) Why we have this distinction?
2) It can be proved that every model has built-in Skolem functions, but not every model has definable Skolem functions. Is that correct? Why so?
3) If point (2) is correct, then having Built-in Skolem functions is enough to prove the equisatisfiability of a first-order formula and its Skolem Normal Form (SNF). Then I would say that, due to the fact that not every model has definable Skolem functions, we cannot prove the logical equivalence between a first-order formula and its SNF. Is this argument sound? Is so, why we need definable Skolem functions to prove the logical equivalence of a first-order formula and its SNF?