16 2 predicate resolution

30
Resolution in the Predicate Calculus Chapter 16.

Upload: tianlu-wang

Post on 17-Aug-2015

13 views

Category:

Art & Photos


1 download

TRANSCRIPT

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

。.C and C clauses twoofresolvant thefind To

)()))(((

))(())(()(

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

)}(),(~

),,()(~

),,())(~ ),()(~

)()),(~),({~

Form Clause

zhangLuckyzhangStudy

prizexWinxLucky

yxPassxLuckyyxPassxStudy

xHappyprizexWincomputerxPass

25

Example

)(~

),(~

)(~),(~

)),(~),(~

)(~proved: be to wffofNegation

)( ),(~ ),,()(~

),,())(~ ),()(~

)()),(~),(~

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 )()))(((

clauses twoofnt paramodulabinary The

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