Craig interpolation

Source: Wikipedia, the free encyclopedia.

In

propositional logic. A stronger form of Craig's interpolation theorem for first-order logic was proved by Roger Lyndon in 1959;[1][2]
the overall result is sometimes called the Craig–Lyndon theorem.

Example

In

propositional logic
, let

.

Then

tautologically implies
. This can be verified by writing in
conjunctive normal form:

.

Thus, if holds, then holds. In turn, tautologically implies . Because the two propositional variables occurring in occur in both and , this means that is an interpolant for the implication .

Lyndon's interpolation theorem

Suppose that S and T are two first-order theories. As notation, let ST denote the smallest theory including both S and T; the

signature
of ST is the smallest one containing the signatures of S and T. Also let ST be the intersection of the languages of the two theories; the signature of ST is the intersection of the signatures of the two languages.

Lyndon's theorem says that if ST is unsatisfiable, then there is an interpolating sentence ρ in the language of ST that is true in all models of S and false in all models of T. Moreover, ρ has the stronger property that every relation symbol that has a positive occurrence in ρ has a positive occurrence in some formula of S and a negative occurrence in some formula of T, and every relation symbol with a negative occurrence in ρ has a negative occurrence in some formula of S and a positive occurrence in some formula of T.

Proof of Craig's interpolation theorem

We present here a

propositional logic.[3]
Formally, the theorem states:

If ⊨φ → ψ then there is a ρ (the interpolant) such that ⊨φ → ρ and ⊨ρ → ψ, where atoms(ρ) ⊆ atoms(φ) ∩ atoms(ψ). Here atoms(φ) is the set of

semantic entailment relation
for propositional logic.

Proof. Assume ⊨φ → ψ. The proof proceeds by induction on the number of propositional variables occurring in φ that do not occur in ψ, denoted |atoms(φ) − atoms(ψ)|.

Base case |atoms(φ) − atoms(ψ)| = 0: Since |atoms(φ) − atoms(ψ)| = 0, we have that atoms(φ) ⊆ atoms(φ) ∩ atoms(ψ). Moreover we have that ⊨φ → φ and ⊨φ → ψ. This suffices to show that φ is a suitable interpolant in this case.

Let’s assume for the inductive step that the result has been shown for all χ where |atoms(χ) − atoms(ψ)| = n. Now assume that |atoms(φ) − atoms(ψ)| = n+1. Pick a qatoms(φ) but qatoms(ψ). Now define:

φ' := φ[⊤/q] ∨ φ[⊥/q]

Here φ[⊤/q] is the same as φ with every occurrence of q replaced by ⊤ and φ[⊥/q] similarly replaces q with ⊥. We may observe three things from this definition:

⊨φ' → ψ

(1)
|atoms(φ') − atoms(ψ)| = n

(2)
⊨φ → φ'

(3)

From (1), (2) and the inductive step we have that there is an interpolant ρ such that:

⊨φ' → ρ

(4)
⊨ρ → ψ

(5)

But from (3) and (4) we know that

⊨φ → ρ

(6)

Hence, ρ is a suitable interpolant for φ and ψ.

QED

Since the above proof is

μ-calculus
, with similar complexity measures.

Craig interpolation can be proved by other methods as well. However, these proofs are generally

non-constructive
:

Applications

Craig interpolation has many applications, among them

ontologies
.

References

Further reading