Skolemization is the process of eliminating existential quantifiers from a formula in predicate logic viapredicate substitution.
Definition
Skolemization ^definition
A formula in predicate logic of the form where is a predicate and are variables can be Skolemized by a predicate substitution:
- is a Skolem function, and must be a fresh function symbol (i.e. a function not already in )
- is known as a Skolem term
- results in the being eliminated from the formula.
If the is in universal/global scope (i.e. outermost), then the substitution:
where is a Skolem constant can be used instead
Skolemization does not preserve semantic properties!
Because Skolemization uses predicate substitution, which only preserves equisatisfiability, the Skolemized form of a formula is not logically equivalent to the original formula. However, if the original formula is satisfiable, so is its Skolem form.
Explanation
We can use substitution to eliminate the existential quantifier () when it is the ‘outermost’ quantifier. Let :
- is a predicate
- are variables
- is a constant
We can ‘fix’ the value of the in . Let us call the new formula .
This elimination by substitution preserves satisfiability:
Take the formula:
We can’t do the eliminating existential quantifiers method, because the is not in the outermost level. Essentially we can’t ‘fix’ a single value of because we need different values of for each value of (since we are ranging over ). But if we have some way of representing in terms of . Like… a function!
Let’s substitute
This method is known as Skolemization.