VOOZH about

URL: https://en.wikipedia.org/wiki/Skolem_normal_form

⇱ Skolem normal form - Wikipedia


Jump to content
From Wikipedia, the free encyclopedia
Formalism of first-order logic

In mathematical logic, a formula of first-order logic is in Skolem normal form if it is in prenex normal form with only universal first-order quantifiers.

Every first-order formula may be converted into Skolem normal form while not changing its satisfiability via a process called Skolemization (sometimes spelled Skolemnization). The resulting formula is not necessarily equivalent to the original one, but is equisatisfiable with it: it is satisfiable if and only if the original one is satisfiable.[1]

Reduction to Skolem normal form is a method for removing existential quantifiers from formal logic statements, often performed as the first step in an automated theorem prover.

Examples

[edit]

The simplest form of Skolemization is for existentially quantified variables that are not inside the scope of a universal quantifier. These may be replaced simply by creating new constants. For example, πŸ‘ {\displaystyle \exists xP(x)}
may be changed to πŸ‘ {\displaystyle P(c)}
, where πŸ‘ {\displaystyle c}
is a new constant (does not occur anywhere else in the formula).

More generally, Skolemization is performed by replacing every existentially quantified variable πŸ‘ {\displaystyle y}
with a term πŸ‘ {\displaystyle f(x_{1},\ldots ,x_{n})}
whose function symbol πŸ‘ {\displaystyle f}
is new. The variables of this term are as follows. If the formula is in prenex normal form, then πŸ‘ {\displaystyle x_{1},\ldots ,x_{n}}
are the variables that are universally quantified and whose quantifiers precede that of πŸ‘ {\displaystyle y}
. In general, they are the variables that are quantified universally (we assume we get rid of existential quantifiers in order, so all existential quantifiers before πŸ‘ {\displaystyle \exists y}
have been removed) and such that πŸ‘ {\displaystyle \exists y}
occurs in the scope of their quantifiers. The function πŸ‘ {\displaystyle f}
introduced in this process is called a Skolem function (or Skolem constant if it is of zero arity) and the term is called a Skolem term.

As an example, the formula πŸ‘ {\displaystyle \forall x\exists y\forall zP(x,y,z)}
is not in Skolem normal form because it contains the existential quantifier πŸ‘ {\displaystyle \exists y}
. Skolemization replaces πŸ‘ {\displaystyle y}
with πŸ‘ {\displaystyle f(x)}
, where πŸ‘ {\displaystyle f}
is a new function symbol, and removes the quantification over πŸ‘ {\displaystyle y}
.
The resulting formula is πŸ‘ {\displaystyle \forall x\forall zP(x,f(x),z)}
. The Skolem term πŸ‘ {\displaystyle f(x)}
contains πŸ‘ {\displaystyle x}
, but not πŸ‘ {\displaystyle z}
, because the quantifier to be removed πŸ‘ {\displaystyle \exists y}
is in the scope of πŸ‘ {\displaystyle \forall x}
, but not in that of πŸ‘ {\displaystyle \forall z}
; since this formula is in prenex normal form, this is equivalent to saying that, in the list of quantifiers, πŸ‘ {\displaystyle x}
precedes πŸ‘ {\displaystyle y}
while πŸ‘ {\displaystyle z}
does not. The formula obtained by this transformation is satisfiable if and only if the original formula is.

How Skolemization works

[edit]

Skolemization works by applying a second-order equivalence together with the definition of first-order satisfiability. The equivalence provides a way for "moving" an existential quantifier before a universal one.

πŸ‘ {\displaystyle \forall x\exists yR(x,y)\iff \exists f\forall xR(x,f(x))}

where

πŸ‘ {\displaystyle f(x)}
is a function that maps πŸ‘ {\displaystyle x}
to πŸ‘ {\displaystyle y}
.

Intuitively, the sentence "for every πŸ‘ {\displaystyle x}
there exists a πŸ‘ {\displaystyle y}
such that πŸ‘ {\displaystyle R(x,y)}
" is converted into the equivalent form "there exists a function πŸ‘ {\displaystyle f}
mapping every πŸ‘ {\displaystyle x}
into a πŸ‘ {\displaystyle y}
such that, for every πŸ‘ {\displaystyle x}
it holds that πŸ‘ {\displaystyle R(x,f(x))}
".

This equivalence is useful because the definition of first-order satisfiability implicitly existentially quantifies over functions interpreting the function symbols. In particular, a first-order formula πŸ‘ {\displaystyle \Phi }
is satisfiable if there exists a model πŸ‘ {\displaystyle M}
and an evaluation πŸ‘ {\displaystyle \mu }
of the free variables of the formula that evaluate the formula to true. The model contains the interpretation of all function symbols; therefore, Skolem functions are implicitly existentially quantified. In the example above, πŸ‘ {\displaystyle \forall xR(x,f(x))}
is satisfiable if and only if there exists a model πŸ‘ {\displaystyle M}
, which contains an interpretation for πŸ‘ {\displaystyle f}
, such that πŸ‘ {\displaystyle \forall xR(x,f(x))}
is true for some evaluation of its free variables (none in this case). This may be expressed in second order as πŸ‘ {\displaystyle \exists f\forall xR(x,f(x))}
. By the above equivalence, this is the same as the satisfiability of πŸ‘ {\displaystyle \forall x\exists yR(x,y)}
.

At the meta-level, first-order satisfiability of a formula πŸ‘ {\displaystyle \Phi }
may be written with a little abuse of notation as πŸ‘ {\displaystyle \exists M\exists \mu (M,\mu \models \Phi )}
, where πŸ‘ {\displaystyle M}
is a model, πŸ‘ {\displaystyle \mu }
is an evaluation of the free variables, and πŸ‘ {\displaystyle \models }
means that πŸ‘ {\displaystyle \Phi }
is true in πŸ‘ {\displaystyle M}
under πŸ‘ {\displaystyle \mu }
. Since first-order models contain the interpretation of all function symbols, any Skolem function that πŸ‘ {\displaystyle \Phi }
contains is implicitly existentially quantified by πŸ‘ {\displaystyle \exists M}
. As a result, after replacing existential quantifiers over variables by existential quantifiers over functions at the front of the formula, the formula still may be treated as a first-order one by removing these existential quantifiers. This final step of treating πŸ‘ {\displaystyle \exists f\forall xR(x,f(x))}
as πŸ‘ {\displaystyle \forall xR(x,f(x))}
may be completed because functions are implicitly existentially quantified by πŸ‘ {\displaystyle \exists M}
in the definition of first-order satisfiability.

Correctness of Skolemization may be shown on the example formula πŸ‘ {\displaystyle F_{1}=\forall x_{1}\dots \forall x_{n}\exists yR(x_{1},\dots ,x_{n},y)}
as follows. This formula is satisfied by a model πŸ‘ {\displaystyle M}
if and only if, for each possible value for πŸ‘ {\displaystyle x_{1},\dots ,x_{n}}
in the domain of the model, there exists a value for πŸ‘ {\displaystyle y}
in the domain of the model that makes πŸ‘ {\displaystyle R(x_{1},\dots ,x_{n},y)}
true. By the axiom of choice, there exists a function πŸ‘ {\displaystyle f}
such that πŸ‘ {\displaystyle y=f(x_{1},\dots ,x_{n})}
. As a result, the formula πŸ‘ {\displaystyle F_{2}=\forall x_{1}\dots \forall x_{n}R(x_{1},\dots ,x_{n},f(x_{1},\dots ,x_{n}))}
is satisfiable, because it has the model obtained by adding the interpretation of πŸ‘ {\displaystyle f}
to πŸ‘ {\displaystyle M}
. This shows that πŸ‘ {\displaystyle F_{1}}
is satisfiable only if πŸ‘ {\displaystyle F_{2}}
is satisfiable as well. Conversely, if πŸ‘ {\displaystyle F_{2}}
is satisfiable, then there exists a model πŸ‘ {\displaystyle M'}
that satisfies it; this model includes an interpretation for the function πŸ‘ {\displaystyle f}
such that, for every value of πŸ‘ {\displaystyle x_{1},\dots ,x_{n}}
, the formula πŸ‘ {\displaystyle R(x_{1},\dots ,x_{n},f(x_{1},\dots ,x_{n}))}
holds. As a result, πŸ‘ {\displaystyle F_{1}}
is satisfied by the same model because one may choose, for every value of πŸ‘ {\displaystyle x_{1},\ldots ,x_{n}}
, the value πŸ‘ {\displaystyle y=f(x_{1},\dots ,x_{n})}
, where πŸ‘ {\displaystyle f}
is evaluated according to πŸ‘ {\displaystyle M'}
.

Uses of Skolemization

[edit]

One of the uses of Skolemization is within automated theorem proving. For example, in the method of analytic tableaux, whenever a formula whose leading quantifier is existential occurs, the formula obtained by removing that quantifier via Skolemization may be generated. For example, if πŸ‘ {\displaystyle \exists x\Phi (x,y_{1},\ldots ,y_{n})}
occurs in a tableau, where πŸ‘ {\displaystyle x,y_{1},\ldots ,y_{n}}
are the free variables of πŸ‘ {\displaystyle \Phi (x,y_{1},\ldots ,y_{n})}
, then πŸ‘ {\displaystyle \Phi (f(y_{1},\ldots ,y_{n}),y_{1},\ldots ,y_{n})}
may be added to the same branch of the tableau. This addition does not alter the satisfiability of the tableau: every model of the old formula may be extended, by adding a suitable interpretation of πŸ‘ {\displaystyle f}
, to a model of the new formula.

This form of Skolemization is an improvement over "classical" Skolemization in that only variables that are free in the formula are placed in the Skolem term. This is an improvement because the semantics of tableaux may implicitly place the formula in the scope of some universally quantified variables that are not in the formula itself; these variables are not in the Skolem term, while they would be there according to the original definition of Skolemization. Another improvement that may be used is applying the same Skolem function symbol for formulae that are identical up to variable renaming.[2]

Another use is in the resolution method for first-order logic, where formulas are represented as sets of clauses understood to be universally quantified. (For an example see drinker paradox.)

An important result in model theory is the LΓΆwenheim–Skolem theorem, which can be proven via Skolemizing the theory and closing under the resulting Skolem functions.[3]

Skolem theories

[edit]

In general, if πŸ‘ {\displaystyle T}
is a theory and for each formula with free variables πŸ‘ {\displaystyle x_{1},\dots ,x_{n},y}
there is an n-ary function symbol πŸ‘ {\displaystyle F}
that is provably a Skolem function for πŸ‘ {\displaystyle y}
, then πŸ‘ {\displaystyle T}
is called a Skolem theory.[4]

Every Skolem theory is model complete, i.e. every substructure of a model is an elementary substructure. Given a model M of a Skolem theory T, the smallest substructure of M containing a certain set A is called the Skolem hull of A. The Skolem hull of A is an atomic prime model over A.

History

[edit]

Skolem normal form is named after the late Norwegian mathematician Thoralf Skolem.

See also

[edit]

Notes

[edit]
  1. ^ "Normal Forms and Skolemization" (PDF). Max-Planck-Institut fΓΌr Informatik. Retrieved 15 December 2012.
  2. ^ Reiner HΓ€hnle. Tableaux and related methods. Handbook of Automated Reasoning.
  3. ^ Scott Weinstein, The Lowenheim-Skolem Theorem, lecture notes (2009). Accessed 6 January 2023.
  4. ^ "Sets, Models and Proofs" (3.3) by I. Moerdijk and J. van Oosten

References

[edit]

External links

[edit]