Resolution in the Predicate
Calculus
Chapter 16.
2
Outline
 Unification
 Predicate-Calculus Resolution
 Completeness and Soundness
 Converting Arbitrary wffs to Clause Form
 Using Resolution to Prove Theorems
 Answer Extraction
 The Equality Predicate
3
16.1 Unification
 Simply dropping the universal quantifiers and assuming universal
quantification of any variables in the
 Clauses: WFFs in the abbreviated form
 If two clauses have matching but complementary literals, it is
possible to resolve them
 Example: ,
221
221221 ))(,,,(






4
16.1 Unification
 Unification: A process that computes the appropriate
substitution
 Substitution instance of an expression is obtained by
substituting terms for variables in that expression.
 Four substitution instances
 The first instance --- alphabetic variant.
 The last of the four different variables is called a ground
instance (A ground term is a term that contains no variables).
]),(,[ ByfxP
]),(,[
]),(),([
]),(,[
]),(,[
BAfCP
BAfzgP
BAfxP
BwfzP
5
16.1 Unification
 Any substitution can be represented by a set of ordered
pairs
 The pair means that term is substituted for every
occurrence of the variable throughout the scope of the
substitution.
 No variable can be replaced by a term containing that same
variable.
}/,,/,/{ 2211 nnS  
ii  / i
i
]),(,[ ByfxP
}/,/{
}/,/)({
}/{
}/,/{
4
3
2
1
yAxCs
yAxzgs
yAs
ywxzs




]),(,[
]),(),([
]),(,[
]),(,[
BAfCP
BAfzgP
BAfxP
BwfzP
6
16.1 Unification
 ws denotes a substitution instance of an expression w,
using a substitution s.
Example
 The composition s1 and s2 is denoted by s1 s2, which is
that substitution obtained by first applying s2 to the
terms of s1 and then adding any pairs of s2 having
variables not occurring among the variables of s1. Thus,
1]),(,[]),(,[ sbyfxpBwfzP 
}/,/,/,/),({
}/,/,/,/}{/),({
wCyBxAzBAg
zDwCyBxAzyxg

7
16.1 Unification
 Associative
 Let w be P(x,y), s1 be {f(y)/x}, and s2 be {A/y}
 Substitutions are not commutative, in general
)()(),()( 3213212121 ssssssssss 
)),((}/,/)()]{,([)(
)),((}/)]{),(([)(
21
21
AAfPyAxAfyxPss
AAfPyAyyfPss




)),((}/)(,/)]{,([)(
)),(()(
12
21
AyfPxAyAyxPss
AAfPss




8
16.1 Unification
 Unifiable: a set of expressions is unifiable if
there exists a substitution s such that
 For Example:
sss n  21
]}),(,[{}/,/{
]}),(,[],),(,[{
BBfAPyBxAs
BBfxPByfxP

9
16.1 Unification
 MGU (Most general (or simplest) unifier) has the property
that if s is any unifier of yielding , then there
exists a substitution such that .
Furthermore, the common instance produced by a most
general unifier is unique except for alphabetic variants.
 UNIFY
 Can find the most general unifier of a finite set of unifiable
expressions and that report failure when the set cannot be unified.
 Basic to UNIFY is the idea of a disagreement set.
 The disagreement set of a nonempty set W of expressions is obtained
by locating the first symbol at which not all the expressions in W have
exactly the same symbol, and then extracting from each expression in W
the subexpression that begins with the symbol occupying that position.
10
UNIFY( ) ( is a set of list-structured expressions.)
1. (Initialization step; is the
empty substitution. )
2. If is a singleton, exit with , the mgu of .
Otherwise, continue.
3. the disagreement set of .
4. If there exists elements and in such
that is a variable that does not occur in ,
continue. Otherwise, exit with failure: is not
Unifiable.
5. {note that }
6. .
7. Go to step 2
16.1 Unification



0, ,k kk      
k k 
kD 
k
kv kt kD
kv kt

1 1{ / }, { / }k k k k k k k kt v t v      1 1k k k   
1k k 
11
Predicate-Calculus Resolution
 are two clauses. Atom in and a literal
in such that and have a most general unifier ,
then these two clauses have a resolvent, . The
resolvent is obtained by applying the substitution to
the union of and , leaving out the complementary
literals.
 Examples:
)},(),(),,({
)},(),(),({
)}(),,({)},(),(),,({
)},(),,({
)},(),({)},,(),({
zAPBRBBP
BQARAQ
BQzAPxRxQxxP
zBRyAQ
zBRAPyxQxP





12
Completeness and Soundness
 Predicate-calculus resolution is sound
 If  is the resolvent of two clauses  and , then {, }|= 
 Completeness of resolution
 It is impossible to infer by resolution alone all the formulas that
are logically entailed by a given set.
 In propositional resolution, this difficulty is surmounted by using
resolution refutation.
13
Converting wffs to Clause Form
1. Eliminate implication signs.
2. Reduce scopes of negation signs.
3. Standardize variables
 Since variables within the scopes of quantifiers are like “dummy
variables”, they can be renamed so that each quantifier has its
own variable symbol.
4. Eliminate existential quantifiers.
14
Converting wffs to Clause Form
 Skolem function, Skolemization:
 Replace each occurrence of its existentially quantified variable by a
Skolem function whose arguments are those universally quantified
variables
 Function symbols used in Skolem functions must be “new”.
))]}}(())(,([))],(()()}[{()(){(
)]}}(),()[())],(()()[{()(){(
))]}},(,,,()()),(,,()[){(()]()[(
)]}},,,()(),,()[{(){()]()[(
xhPxhxQyxfPyPyxPx
wPwxQwyxfPyPyxPx
yxguyxRuyxgyxPyxwQw
zuyxRuzyxPzyxwQw




15
Converting wffs to Clause Form
 Skolem function of no arguments
 Skolem form: To eliminate all of the existentially quantified
variables from a wff, the proceding procedure on each subformula
is used in turn. Eliminating the existential quantifiers from a set of
wffs produces what is called the Skolem form of the set of
formulas.
 The skolem form of a wff is not equivalent to the original wff.
.
 What is true is that a set of formulas,  is satisfiable if and only if
the Skolem form of  is. Or more usefully for purpose of
resolution refutations,  is unsatisfiable if and only if the Skolem
form of  is unsatifiable.
16
Converting wffs to Clause Form
5. Convert to prenex form
 At this stage, there are no remaining existential quantifiers, and
each universal quantifier has its own variable symbol.
 A wff in prenex form consists of a string of quantifiers called a
prefix followed by a quantifier-free formula called a matrix. The
prenex form of the example wff marked with an * earlier is
6. Put the matrix in conjunctive normal form
 The matrix of the preceding example wff is put in conjunctive
normal form
17
Converting Arbitrary wffs to
Clause Form
7. Eliminate universal quantifiers
 Assume that all variables in the matrix are universally
quantified.
8. Eliminate  symbols
 The explicit occurrence of  symbols may be eliminated by
replacing expressions of the form with the set of wffs
.
18
Converting Arbitrary wffs to
Clause Form
9. Rename variables
 Variable symbols may be renamed so that no variable symbol
appears in more than one clause .
19
Example
。.CandCclausestwoofresolvantthefindTo
)()))(((
))(())(()(
21
2
1
,
,
bQagfPC
xgQxfPyPC


 
)()))(((
and
))(())((
/)(:
21
1
1
bQaggQ
CCFor
xgQxfPC
yxfC





20
 To prove wff  from , proceed just as in the propositional
calculus.
1. Negate ,
2. Convert this negation to clause form, and
3. Add it to the clause form set of .
4. Then apply resolution until the empty clause is deduced.
Using Resolution to Prove Theorem
21
Using Resolution to Prove Theorem
 Problem: the package delivery robot.
 Suppose this robot knows that all of the packages in room
27 are smaller than any of the ones in room 28.
1.
2.
 Suppose that the robot knows the following:
3. P(A)
4. P(B)
5. I(A,27)I(A,28) // package A is either in room 27 or in room 28
6. I(B,27) // package B is in room 27
7. S(B,A) // package B is not smaller than package A.
22
Using Resolution to Prove Theorem
23
16.6 Answer Extraction
24
Example
)(:Prove
),()()(
)()(~
),())()()()((
)()),(),()(((
:Problem
zhangHappy
prizexWinxLuckyx
zhangLuckyzhangStudy
yxPassxLuckyxStudyyx
xHappyprizexWincomputerxPassx




)}(),(~
),,()(~
),,())(~),()(~
)()),(~),({~
FormClause
zhangLuckyzhangStudy
prizexWinxLucky
yxPassxLuckyyxPassxStudy
xHappyprizexWincomputerxPass



,
,
25
Example
)(~
),(~
)(~),(~
)),(~),(~
)(~proved:betowffofNegation
)(),(~),,()(~
),,())(~),()(~
)()),(~),(~
zhangLucky
computerzhangPass
zhangLuckycomputerzhangPass
prizezhangWincomputerzhangPass
zhangHappy
zhangLuckyzhangStudyprizexWinxLucky
yxPassxLuckyyxPassxStudy
xHappyprizexWincomputerxPass





,
,
26
16.7 The Equality Predicate
 Equality relation: Equals(A,B) or A=B
 Reflexive (x)Equals(x,x)
 Symmetric (x, y)[Equals(x, y)Equals(y, x)]
 Transitive ( x, y, z)[Equals(x, y)  Equals(y, z) 
Equals(x, z)]
27
16.7 The Equality Predicate
 Paramodulation(调解)
 Equality-specific inference rule to be used in combination with
resolution in cases where the knowledge base contains the equality
predicate .
 1, 2 are two clauses. If and ,
where , ,  are terms, where 1` are clauses, and where  is
a literal containing the term , and if  and  have a most general
unifier , then infer the binary paramodulant of 1 and 2:
where [()] denotes the result of replacing a single occurrence
of  in  by .
28
Example
))(())(())((
R(g(C))A][f(g(B))and)()))(((
clausestwoofntparamodulabinaryThe
CgRBgQAgP
xQxfgP



29
Summary
 Unification
 Predicate-Calculus Resolution
 Converting Arbitrary wffs to Clause Form
 Using Resolution to Prove Theorems
 Answer Extraction
 Problems:
 Search strategy is slow
 Knowledge consistence
 ……
30
Exercises
 Page 266, Ex.16.3; Ex.16.5 – 16.9

16 2 predicate resolution

  • 1.
    Resolution in thePredicate Calculus Chapter 16.
  • 2.
    2 Outline  Unification  Predicate-CalculusResolution  Completeness and Soundness  Converting Arbitrary wffs to Clause Form  Using Resolution to Prove Theorems  Answer Extraction  The Equality Predicate
  • 3.
    3 16.1 Unification  Simplydropping the universal quantifiers and assuming universal quantification of any variables in the  Clauses: WFFs in the abbreviated form  If two clauses have matching but complementary literals, it is possible to resolve them  Example: , 221 221221 ))(,,,(      
  • 4.
    4 16.1 Unification  Unification:A process that computes the appropriate substitution  Substitution instance of an expression is obtained by substituting terms for variables in that expression.  Four substitution instances  The first instance --- alphabetic variant.  The last of the four different variables is called a ground instance (A ground term is a term that contains no variables). ]),(,[ ByfxP ]),(,[ ]),(),([ ]),(,[ ]),(,[ BAfCP BAfzgP BAfxP BwfzP
  • 5.
    5 16.1 Unification  Anysubstitution can be represented by a set of ordered pairs  The pair means that term is substituted for every occurrence of the variable throughout the scope of the substitution.  No variable can be replaced by a term containing that same variable. }/,,/,/{ 2211 nnS   ii  / i i ]),(,[ ByfxP }/,/{ }/,/)({ }/{ }/,/{ 4 3 2 1 yAxCs yAxzgs yAs ywxzs     ]),(,[ ]),(),([ ]),(,[ ]),(,[ BAfCP BAfzgP BAfxP BwfzP
  • 6.
    6 16.1 Unification  wsdenotes a substitution instance of an expression w, using a substitution s. Example  The composition s1 and s2 is denoted by s1 s2, which is that substitution obtained by first applying s2 to the terms of s1 and then adding any pairs of s2 having variables not occurring among the variables of s1. Thus, 1]),(,[]),(,[ sbyfxpBwfzP  }/,/,/,/),({ }/,/,/,/}{/),({ wCyBxAzBAg zDwCyBxAzyxg 
  • 7.
    7 16.1 Unification  Associative Let w be P(x,y), s1 be {f(y)/x}, and s2 be {A/y}  Substitutions are not commutative, in general )()(),()( 3213212121 ssssssssss  )),((}/,/)()]{,([)( )),((}/)]{),(([)( 21 21 AAfPyAxAfyxPss AAfPyAyyfPss     )),((}/)(,/)]{,([)( )),(()( 12 21 AyfPxAyAyxPss AAfPss    
  • 8.
    8 16.1 Unification  Unifiable:a set of expressions is unifiable if there exists a substitution s such that  For Example: sss n  21 ]}),(,[{}/,/{ ]}),(,[],),(,[{ BBfAPyBxAs BBfxPByfxP 
  • 9.
    9 16.1 Unification  MGU(Most general (or simplest) unifier) has the property that if s is any unifier of yielding , then there exists a substitution such that . Furthermore, the common instance produced by a most general unifier is unique except for alphabetic variants.  UNIFY  Can find the most general unifier of a finite set of unifiable expressions and that report failure when the set cannot be unified.  Basic to UNIFY is the idea of a disagreement set.  The disagreement set of a nonempty set W of expressions is obtained by locating the first symbol at which not all the expressions in W have exactly the same symbol, and then extracting from each expression in W the subexpression that begins with the symbol occupying that position.
  • 10.
    10 UNIFY( ) (is a set of list-structured expressions.) 1. (Initialization step; is the empty substitution. ) 2. If is a singleton, exit with , the mgu of . Otherwise, continue. 3. the disagreement set of . 4. If there exists elements and in such that is a variable that does not occur in , continue. Otherwise, exit with failure: is not Unifiable. 5. {note that } 6. . 7. Go to step 2 16.1 Unification    0, ,k kk       k k  kD  k kv kt kD kv kt  1 1{ / }, { / }k k k k k k k kt v t v      1 1k k k    1k k 
  • 11.
    11 Predicate-Calculus Resolution  aretwo clauses. Atom in and a literal in such that and have a most general unifier , then these two clauses have a resolvent, . The resolvent is obtained by applying the substitution to the union of and , leaving out the complementary literals.  Examples: )},(),(),,({ )},(),(),({ )}(),,({)},(),(),,({ )},(),,({ )},(),({)},,(),({ zAPBRBBP BQARAQ BQzAPxRxQxxP zBRyAQ zBRAPyxQxP     
  • 12.
    12 Completeness and Soundness Predicate-calculus resolution is sound  If  is the resolvent of two clauses  and , then {, }|=   Completeness of resolution  It is impossible to infer by resolution alone all the formulas that are logically entailed by a given set.  In propositional resolution, this difficulty is surmounted by using resolution refutation.
  • 13.
    13 Converting wffs toClause Form 1. Eliminate implication signs. 2. Reduce scopes of negation signs. 3. Standardize variables  Since variables within the scopes of quantifiers are like “dummy variables”, they can be renamed so that each quantifier has its own variable symbol. 4. Eliminate existential quantifiers.
  • 14.
    14 Converting wffs toClause Form  Skolem function, Skolemization:  Replace each occurrence of its existentially quantified variable by a Skolem function whose arguments are those universally quantified variables  Function symbols used in Skolem functions must be “new”. ))]}}(())(,([))],(()()}[{()(){( )]}}(),()[())],(()()[{()(){( ))]}},(,,,()()),(,,()[){(()]()[( )]}},,,()(),,()[{(){()]()[( xhPxhxQyxfPyPyxPx wPwxQwyxfPyPyxPx yxguyxRuyxgyxPyxwQw zuyxRuzyxPzyxwQw    
  • 15.
    15 Converting wffs toClause Form  Skolem function of no arguments  Skolem form: To eliminate all of the existentially quantified variables from a wff, the proceding procedure on each subformula is used in turn. Eliminating the existential quantifiers from a set of wffs produces what is called the Skolem form of the set of formulas.  The skolem form of a wff is not equivalent to the original wff. .  What is true is that a set of formulas,  is satisfiable if and only if the Skolem form of  is. Or more usefully for purpose of resolution refutations,  is unsatisfiable if and only if the Skolem form of  is unsatifiable.
  • 16.
    16 Converting wffs toClause Form 5. Convert to prenex form  At this stage, there are no remaining existential quantifiers, and each universal quantifier has its own variable symbol.  A wff in prenex form consists of a string of quantifiers called a prefix followed by a quantifier-free formula called a matrix. The prenex form of the example wff marked with an * earlier is 6. Put the matrix in conjunctive normal form  The matrix of the preceding example wff is put in conjunctive normal form
  • 17.
    17 Converting Arbitrary wffsto Clause Form 7. Eliminate universal quantifiers  Assume that all variables in the matrix are universally quantified. 8. Eliminate  symbols  The explicit occurrence of  symbols may be eliminated by replacing expressions of the form with the set of wffs .
  • 18.
    18 Converting Arbitrary wffsto Clause Form 9. Rename variables  Variable symbols may be renamed so that no variable symbol appears in more than one clause .
  • 19.
  • 20.
    20  To provewff  from , proceed just as in the propositional calculus. 1. Negate , 2. Convert this negation to clause form, and 3. Add it to the clause form set of . 4. Then apply resolution until the empty clause is deduced. Using Resolution to Prove Theorem
  • 21.
    21 Using Resolution toProve Theorem  Problem: the package delivery robot.  Suppose this robot knows that all of the packages in room 27 are smaller than any of the ones in room 28. 1. 2.  Suppose that the robot knows the following: 3. P(A) 4. P(B) 5. I(A,27)I(A,28) // package A is either in room 27 or in room 28 6. I(B,27) // package B is in room 27 7. S(B,A) // package B is not smaller than package A.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
    26 16.7 The EqualityPredicate  Equality relation: Equals(A,B) or A=B  Reflexive (x)Equals(x,x)  Symmetric (x, y)[Equals(x, y)Equals(y, x)]  Transitive ( x, y, z)[Equals(x, y)  Equals(y, z)  Equals(x, z)]
  • 27.
    27 16.7 The EqualityPredicate  Paramodulation(调解)  Equality-specific inference rule to be used in combination with resolution in cases where the knowledge base contains the equality predicate .  1, 2 are two clauses. If and , where , ,  are terms, where 1` are clauses, and where  is a literal containing the term , and if  and  have a most general unifier , then infer the binary paramodulant of 1 and 2: where [()] denotes the result of replacing a single occurrence of  in  by .
  • 28.
  • 29.
    29 Summary  Unification  Predicate-CalculusResolution  Converting Arbitrary wffs to Clause Form  Using Resolution to Prove Theorems  Answer Extraction  Problems:  Search strategy is slow  Knowledge consistence  ……
  • 30.
    30 Exercises  Page 266,Ex.16.3; Ex.16.5 – 16.9