When using skolemization to replace existentially quantified variables in an expression, any existential bound at the top level can be replaced by a new globally unique constant, however if the existential is under a universal quantification it cannot be replaced by a constant. It must be replaced instead by a new globally unique predicate symbol which is applied to all the universally quantified variables in scope.
I don't understand why this must be so, since the uniqueness of the new predicate symbol must surely prevent it from unifying with any other object but itself.
Each step in Skolemization preserves the satisfiability of the formula. If all existentially-bound variables are replaced by constants instead of functions, the modified formula may be unsatisfiable even if the original formula was satisfiable.
Consider the formula
, where
is logically stronger, as
Pis a first-order formula with free variablesxandy. If you simply replaceywith a new constantc, the resulting formulayis allowed to depend onx, butcis not.In other words, Skolemization relies on the (second-order) logical equivalence
, and that
is satisfiable iff
is. Your suggestion breaks down because
is not equivalent to
.
For a specific counter-example, suppose that
Pencodes the following:*and identity1,yis the inverse ofx:x*y = 1.Then
is satisfiable, since it says "every element of the group has an inverse." But
is not satisfiable, since it says "the element
cis the inverse to every group element."