0% found this document useful (0 votes)
57 views15 pages

Propositional and First-Order Logic Resolution

1) Resolution is a sound and complete inference procedure for propositional and first-order logic (FOL) that can be used to deduce logical consequences from a knowledge base (KB). 2) The resolution rule allows deriving a new clause from two clauses that contain complementary literals. When extended to FOL, resolution involves unifying literals and substituting variables. 3) Resolution can be used to show a sentence Q is entailed by a KB by attempting to derive a contradiction between the KB, the negation of Q, and an empty clause representing false. If a contradiction is derived, the KB entails Q.

Uploaded by

suleman11210po
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views15 pages

Propositional and First-Order Logic Resolution

1) Resolution is a sound and complete inference procedure for propositional and first-order logic (FOL) that can be used to deduce logical consequences from a knowledge base (KB). 2) The resolution rule allows deriving a new clause from two clauses that contain complementary literals. When extended to FOL, resolution involves unifying literals and substituting variables. 3) Resolution can be used to show a sentence Q is entailed by a KB by attempting to derive a contradiction between the KB, the negation of Q, and an empty clause representing false. If a contradiction is derived, the KB entails Q.

Uploaded by

suleman11210po
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Resolution in

Propositional and
First-Order Logic
Inference rules
• Logical inference creates new sentences that
logically follow from a set of sentences (KB)
• An inference rule is sound if every sentence X it
produces when operating on a KB logically
follows from the KB
– i.e., inference rule creates no contradictions
• An inference rule is complete if it can produce
every expression that logically follows from (is
entailed by) the KB.
– Note analogy to complete search algorithms
Sound rules of inference
• Here are some examples of sound rules of inference
• Each can be shown to be sound using a truth table
RULE PREMISE CONCLUSION
Modus Ponens A, A → B B
And Introduction A, B A∧B
And Elimination A∧B A
Double Negation ¬¬A A
Unit Resolution A ∨ B, ¬B A
Resolution A ∨ B, ¬B ∨ C A ∨ C
Soundness of modus ponens
A B A→B OK?
True True True

True False False

False True True

False False True

Resolution
• Resolution is a valid inference rule producing a new
clause implied by two clauses containing
complementary literals
– A literal is an atomic symbol or its negation, i.e., P, ~P
• Amazingly, this is the only interference rule you
need to build a sound and complete theorem prover
– Based on proof by contradiction and usually called
resolution refutation
• The resolution rule was discovered by Alan
Robinson (CS, U. of Syracuse) in the mid 60s
Resolution
• A KB is actually a set of sentences all of which are
true, i.e., a conjunction of sentences.
• To use resolution, put KB into conjunctive normal
form (CNF), where each sentence written as a disjunc-
tion of (one or more) literals
Tautologies
Example (A→B)↔(~A∨B)
• KB: [P→Q , Q→R∧S] (A∨(B∧C)) ↔(A∨B)∧(A∨C)
• KB in CNF: [~P∨Q , ~Q∨R , ~Q∨S]
• Resolve KB(1) and KB(2) producing: ~P∨R (i.e., P→R)
• Resolve KB(1) and KB(3) producing: ~P∨S (i.e., P→S)
• New KB: [~P∨Q , ~Q∨~R∨~S , ~P∨R , ~P∨S]
Soundness of the
resolution inference rule

From the rightmost three columns of this truth table, we


can see that
(α ∨ β) ∧ (β ∨ γ) ↔ (α ∨ γ)
is valid (i.e., always true regardless of the truth values
assigned to α, β and γ
Resolution
• Resolution is a sound and complete
inference procedure for unrestricted FOL
• Reminder: Resolution rule for propositional
logic:
– P1 ∨ P2 ∨ ... ∨ Pn
– ¬P1 ∨ Q2 ∨ ... ∨ Qm
– Resolvent: P2 ∨ ... ∨ Pn ∨ Q2 ∨ ... ∨ Qm
• We’ll need to extend this to handle
quantifiers and variables
Resolution covers many cases
• Modes Ponens
– from P and P → Q derive Q
– from P and ¬ P ∨ Q derive Q
• Chaining
– from P → Q and Q → R derive P → R
– from (¬ P ∨ Q) and (¬ Q ∨ R) derive ¬ P ∨ R
• Contradiction detection
– from P and ¬ P derive false
– from P and ¬ P derive the empty clause (=false)
Resolution in first-order logic
•Given sentences in conjunctive normal form:
– P1 ∨ ... ∨ Pn and Q1 ∨ ... ∨ Qm
– Pi and Qi are literals, i.e., positive or negated predicate
symbol with its terms
•if Pj and ¬Qk unify with substitution list θ, then derive
the resolvent sentence:
subst(θ, P1∨…∨Pj-1∨Pj+1…Pn∨ Q1∨…Qk-1∨Qk+1∨…∨Qm)
•Example
– from clause P(x, f(a)) ∨ P(x, f(y)) ∨ Q(y)
– and clause ¬P(z, f(a)) ∨ ¬Q(z)
– derive resolvent P(z, f(y)) ∨ Q(y) ∨ ¬Q(z)
– Using θ = {x/z}
A resolution proof tree
A resolution proof tree
~P(w) v Q(w) ~Q(y) v S(y)

~True v P(x) v R(x)


P(x) v R(x)

~P(w) v S(w)
~R(w) v S(w)

S(x) v R(x)

S(A)
Resolution refutation
• Given a consistent set of axioms KB and goal sentence
Q, show that KB |= Q
• Proof by contradiction: Add ¬Q to KB and try to
prove false, i.e.:
(KB |- Q) ↔ (KB ∧ ¬Q |- False)
• Resolution is refutation complete: it can establish
that a given sentence Q is entailed by KB, but can’t
(in general) generate all logical consequences of a set
of sentences
• Also, it cannot be used to prove that Q is not entailed
by KB
• Resolution won’t always give an answer since
entailment is only semi-decidable
– And you can’t just run two proofs in parallel, one trying
to prove Q and the other trying to prove ¬Q, since KB
might not entail either one
Resolution example
• KB:
– allergies(X) → sneeze(X)
– cat(Y) ∧ allergicToCats(X) → allergies(X)
– cat(felix)
– allergicToCats(mary)
• Goal:
– sneeze(mary)
Refutation resolution proof tree
¬allergies(w) v sneeze(w) ¬cat(y) v ¬allergicToCats(z) ∨ allergies(z)
w/z

¬cat(y) v sneeze(z) ∨ ¬allergicToCats(z) cat(felix)

y/felix
sneeze(z) v ¬allergicToCats(z) allergicToCats(mary)

z/mary

sneeze(mary) ¬sneeze(mary)

Notation
old/new false

negated query

You might also like