Resolution in First-Order Logic

Goal: Complete Refutation in FOL

Resolution (Ch.7) works on propositional CNF. FOL resolution extends it to handle variables via unification.

Strategy: prove KB ⊨ α by showing KB ∧ ¬α is unsatisfiable using resolution.


Step 1: Conversion to CNF for FOL

Converting a FOL sentence to CNF requires additional steps beyond propositional CNF conversion.

Full FOL → CNF Algorithm

  1. Eliminate implications and biconditionals (same as propositional)
  2. Move ¬ inward (De Morgan, quantifier duality: ¬∀x P∃x ¬P)
  3. Standardize variables apart — rename so each ∀ uses a unique variable name
  4. Skolemize — eliminate existential quantifiers
  5. Drop universal quantifiers — all remaining variables are implicitly universal
  6. Distribute ∨ over ∧ — convert to CNF

Step 2: Skolemization

Skolemization eliminates ∃ by introducing Skolem functions (or Skolem constants).

Simple case: no enclosing ∀

∃x P(x)  →  P(SK1)    -- SK1 is a new constant (Skolem constant)

∃ inside ∀

∀x ∃y Loves(x, y)  →  ∀x Loves(x, F(x))    -- F is a Skolem function

The Skolem function F(x) represents “the object that x loves” — it depends on x because the ∃ is inside ∀x.

Why Skolemization Preserves Satisfiability

Original: there exists some y (possibly depending on x). Skolemized: introduce a function F that names that y.

The two sentences are equisatisfiable (not equivalent — but SAT/UNSAT status is preserved), which is sufficient for refutation.


Step 3: FOL Resolution Rule

After CNF, resolution in FOL applies the standard resolution rule but uses unification to match complementary literals:

Given clauses:
   l₁ ∨ ... ∨ lₖ ∨ p
   m₁ ∨ ... ∨ mₙ ∨ ¬q

If UNIFY(p, q) = θ:
   Resolvent: SUBST(θ, l₁ ∨ ... ∨ lₖ ∨ m₁ ∨ ... ∨ mₙ)

The key difference from propositional: p and q need not be identical — they must unify via θ.

Example

Clauses:
   (1) ¬King(x) ∨ ¬Greedy(x) ∨ Evil(x)
   (2) King(John)
   (3) Greedy(John)
   (4) ¬Evil(John)           -- negated goal

Contradiction — KB ⊨ Evil(John) proved.


FOL Resolution: Properties

Property Value
Sound Yes
Refutation-complete Yes — if KB ⊨ α, resolution will derive the empty clause
Complete for non-theorems No — may loop (FOL undecidable)
Terminates No in general (semi-decidable)

Completeness theorem (Gödel, 1930 / Robinson, 1965): FOL resolution is refutation-complete. If KB ∧ ¬α is unsatisfiable, resolution will eventually derive the empty clause.


Equality

Standard resolution doesn’t handle equality well (needs infinite axioms like ∀x x=x, ∀x,y x=y → y=x).

Paramodulation: special inference rule for equality:

If t₁ = t₂ is in KB and α[t₁] is in KB:
   Derive α[t₂]

Equational reasoning is built into modern FOL theorem provers (E, Vampire, Prover9).


Practical FOL Inference

Modern FOL theorem provers (Prover9, Vampire, E): - CNF + resolution + paramodulation + learning (clause selection heuristics) - Used for: mathematical theorem proving, formal verification, ontology reasoning

FOL inference = the gold standard reasoning framework, with propositional SAT/resolution as a special case.