Top Banner
Knowledge Representatio n and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea http://turing.cs.pub.ro/krr_11 curs.cs.pub.ro r of Science in Artificial Intelligence, 2011-2013
44

Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Dec 16, 2015

Download

Documents

Tatyana Dorcas
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Knowledge Representation and Reasoning

University "Politehnica" of BucharestDepartment of Computer Science

Fall 2011

Adina Magda Floreahttp://turing.cs.pub.ro/krr_11

curs.cs.pub.ro

Master of Science in Artificial Intelligence, 2011-2013

Page 2: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Lecture 2

Lecture outline Predicate logic Herbrand theorem Powerful inference rules

Page 3: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

1. Predicate logic

Page 4: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

PrL, FOPLExtend PrL, PL

Sentential logicof beliefsUses beliefs atoms BA()Index PL with agents

Modal logicModal operators

Logics of knowledgeand beliefModal operators B and K

Dynamic logicModal operatorsfor actions

Temporal logicModal operators for timeLinear timeBranching time

CTL logicBranching timeand action BDI logic

Adds agents, B, D, I

Linear model

Structured models

Situation calculusAdds states, actions

Symbol levelSymbol level

Knowledge levelKnowledge level

Description LogicsSubsumption relationships

Page 5: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

1. Predicate logic - Syntax

variables function symbols terms predicate symbols atoms Boolean connectives quantifiers The function symbols and predicate symbols,

each of given arity, comprise a signature . A ground term is a term without any variables

13

Page 6: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Predicate logic - Semantics

Universe (aka Domain) : Set U Variables – values in U Function symbols – (total) functions over U Predicate symbols – relations over U Terms – values in U Formulas – Boolean truth values Interpretation of a formula

14

Page 7: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Algorithmic problems

F – a well formed formula, A – an interpretation Validity(F): |= F ? (is F true in every

interpretation?) Satisfiability (F): F satisfiable? Entailment (F, G): F |= G? (does F entail G?) Model(A,F): A |=F ? Solve (A,F): find an assignment such that

A, |=F Solve (F): find a substitution such that |=F Abduce(F): find G with certain properties: such

that G |= F

15

Page 8: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

How can we do it?

Suppose we want to prove H |= G (entailment). Equivalently, we can prove that

• F := H → G is valid.

Equivalently, we can prove that

• ~F, i.e., H ~G is unsatisfiable.

This principle of “refutation theorem proving” is the basis of almost all automated theorem proving methods. 16

Page 9: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

How can we do it?

Use normal forms Find a way to prove refutation – Herbrand

model and theorems

16

Page 10: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Normal forms

Study of normal forms is motivated by:

• reduction of logical concepts

• efficient data structures for theorem proving.

The main problem in first-order logic is the treatment of quantifiers. The normal form transformations are intended to eliminate many of them.

17

Page 11: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Normal forms

Prenex normal form

CNF Eliminate existential quantifiers and

conjunctions => Normal form

(Q x )... (Q x ) M1 1 n n (Q x ) , i = 1, ... , n,i i

( x )i( x )i

matrixprefix

18

Page 12: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Herbrand universe

Herbrand universe

Herbrand base

Ground instances of a clause (set of clauses) S

H = H f ( t , ... , t )| t H ,1 j n}i+1 i 1 n j i {

iilim H

A = {P(t ,..., t )|t H,1 i n,P apare în S}1 n i belongs to

H = {a}0H0

H =

19

Page 13: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Examples

S = {P(a),~ P(x) P(f (x))}{a}=H0

H = {a , f (a )}1

H = {a , f (a ) , f ( f (a ))}2

S = {P( f ( x) , a , g( y) , b)}

H = {a,b}0

H = {a , b, f (a ) , f ( b) , g(a ) , g( b)}1

H = {a,b, f (a), f (b),g(a),g(b), f (f (a)), f (f (b)), f (g(a)), f (g(b)),g(g(a)),g(g(b)),g(f (a)),g(f (b))}2

20

Page 14: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Herbrand interpretation

H-interpretationS = {P( x) Q( x) , R( f ( y))}

H = {a , f (a ) , f ( f (a )) , ...}

A = {P(a ) , Q(a ) , R(a ) , P( f (a )) , Q( f (a )) , R( f (a )) , ...}

I = {P(a ) , Q(a ) , R(a ) , P( f (a )) , Q( f (a )) , R( f (a )) , ...}1

I = {~ P(a ) , ~ Q(a) , ~ R(a) , ~ P( f (a )) , ~ Q( f (a )) , ~ R( f (a )) , ...}2

21

Page 15: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Herbrand interpretation

H-interpretation I* correspinding to an interpretation I for a set of clauses S

S = {P( x) , Q( y, f ( y, a ))}

a f (1,1) f (1,2) f (2,1) f (2,2)

2 1 2 2 1

P(1) P(2) Q(1,1) Q(1,2) Q(2,1) Q(2,2)

a f f a f a

A = {P(a),Q(a,a),P(f (a,a)),Q(a, f (a,a)),Q(f (a,a),a),Q(f (a,a), f (a,a))}

P(a) = P(2) = f Q(a,a) = Q(2,2) = a P(f (a,a)) = P(f (2,2)) = P(1) = a

Q(a, f (a,a)) = Q(2, f (2,2)) = Q(2,1) = f Q(f (a,a),a) = Q(f (2,2),2) = Q(1,2) = a

Q(f (a,a), f (a,a)) = Q(f (2,2), f (2,2)) = Q(1,1) = f

I ~ P(a),Q(a,a),P(f (a,a)),~ Q(a, f (a,a)),Q(f (a,a),a),~ Q(f (a,a), f (a,a)),...}* {22

Page 16: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Herbrand theorem

Lemma. If an interpretation I over a domain D satisfies the set of clauses S (i.e., the set S is satisfiable under that interpretation), then any H-interpretation I* corresponding to I also satisfies S

Theorem. A set of clauses S is inconsistent iff S is false for any H-interpretation of S

23

Page 17: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Semantic Trees

Semantic trees Complete semantic trees

Herbrand base of S is

A = {P, Q, R}P ~P

Q ~Q Q ~Q

R R R R~R ~R ~R ~R

P ~P,~Q

R R R~R ~R ~R

Q

P ~P R~R

Q~Q

Q R~Q,~R

24

Page 18: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Semantic Trees

Herbrand base of S is

Complete semantic tree

S = {P( x) , Q( f ( x))}

A = {P(a),Q(a),P(f (a)),Q(f (a)),P(f (f (a))),Q(f (f (a))),...}

P(a) ~P(a)

Q(f(a))

~Q(f(a))

Q(f(a))

~Q(f(a))

P(f(a)) ~P(f(a))

25

Page 19: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Closed semantic trees

S = {P, Q R, ~ P ~ Q, ~ P ~ R} A = {P, Q, R}

P ~P

Q ~Q Q ~Q

R R R R~R ~R ~R ~R

P ~P

Q ~Q

R~R

26

Page 20: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Closed semantic trees

S = {P( x) , ~ P( x) Q( f ( x)) , ~ Q( f (a ))}

A = {P(a),Q(a),P(f (a)),Q(f (a)),P(f (f (a))),Q(f (f (a))),...}

P(a) ~P(a)

Q(f(a)) ~Q(f(a))

Failure nodes

Inference nodes

27

Page 21: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Review of definitions

Basic instance of a clause C in S = an instance C' of a clause C from S obtained by replacing the variables it contains with elements of the Herbrand universe

Complete semantic tree (CST) = for any leaf of the tree, I(N) contains either Ai or ~Ai (i.e., any path from the root to a leaf contains all elements of the Herbrand base either in positive or negative form)

Failure node in a ST = I(N) falsifies a basic instance of a clause in S and I(N') does not falsify any instance of a clause in S, with N' the immediate predecesor of N

Closed semantic tree = any branch has (ends in) a failure nod

Inference node in a ST = all the node's successors are failure nodes

28

Page 22: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Herbrand's theorem

Idea: to test if a set S of clauses is unsatisfiable we have to test if S is unsatisfiable only for H-interpretations (interpretations over the Herbrand universe)

First version of HT A set of clauses S is unsatisfiable iff for

any semantic tree of S there exists a finite closed semantic tree

(any complete semantic tree of S is a closed semantic tree)

29

Page 23: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Herbrand's theorem

Second version of HT A set of clauses S is unsatisfiable iff there

exists a finite set S' of ground instances of S which is unsatisfiable

(the Herbrand base of S is unsatisfiable)

30

Page 24: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Powerful inference rules - Resolution

Resolution Binary resolution Factorization General resolution Paramodulation

31

Page 25: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Resolution

Theorem. Resolution is sound. That is, all derived formulas are entailed by the given ones

Theorem: Resolution is refutationally complete.

That is, if a clause set is unsatisfiable, then Resolution will derive the empty clause eventually.

If a clause set is unsatisfiable and closed under the application of resolution inference rule then it contains the empty clause.

35

Page 26: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Completeness of Resolution

P ~P

Q ~Q Q ~QT

P ~P

Q ~Q

(1)

(2) (3)

(4) (5)

P

~P V ~ Q ~P V Q

T'

Q}~P~Q,P~{P,=S

A = {P,Q}

complete semantic tree

closed semantic tree

inference node

failure nodefailure node

S {~ P}

36

Page 27: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Completeness of Resolution

P ~P

Q ~Q

(1)

(2) (3)

(4) (5)

P

~P V ~ Q ~P V Q

T'

Q}~P~Q,P~{P,=S

A = {P,Q}

closed semantic tree

inference node

failure nodefailure nodeS {~ P}

P ~P(1)

(2) (3)

P~P

T"

(1)T"'

S {~ P}

inference node

37

Page 28: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Completeness of Resolution

Lifting lemma If C1' si C2' are basic instances of C1 and C2 and then there is a clause C such that C' is an instance of C

Theorem: Resolution is refutationally complete.

A set of clauses S is unsatisfiable iff there is a deduction of the empty clause from S.

C'= rez(C ',C ')1 2

C = rez(C ,C )1 2

38

Page 29: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Factorization

Resolution si not complete without factorization

32

Page 30: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Factorization – Russell's antinomy

A barber shaves men if and only if they do not shave themselves. Should the barber shave himself or not?

(A1) ~Shaves(x,x) Shaves(barber,x)(A2) Shaves(barber,y) ~Shaves (y,y)

(C1) Shaves(x,x) Shaves (barber,x)(C2) ~Shaves (barber,y) ~Shaves (y,y)

(Res1) ~Shaves (barber,x) Shaves (barber,x)(Res2) Shaves(barber,barber) ~Shaves (barber,barber)

(FC1): Shaves (barber,barber)(FC2): ~Shaves (barber,barber)

See alsohttp://en.wikipedia.org/wiki/Russell%27s_paradox

32

Page 31: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Prover9 and Mace4

Prover9 is an automated theorem prover for first-order and equational logic

Mace4 searches for finite models and counterexamples

Prover9 is the successor of the Otter prover. http://www.cs.unm.edu/~mccune/prover9/

33

Page 32: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Factorization – Russell's antinomy

Prover 9-Shaves(x,x) -> Shaves(barber,x).Shaves(barber,y) -> - Shaves (y,y).

1 -Shaves(x,x) -> Shaves(barber,x) # label(non_clause). [assumption].

2 Shaves(barber,x) -> -Shaves(x,x) # label(non_clause). [assumption].

3 Shaves(x,x) | Shaves(barber,x). [clausify(1)].4 -Shaves(barber,x) | -Shaves(x,x). [clausify(2)].5 Shaves(barber,barber). [factor(3,a,b)].6 $F. [factor(4,a,b),unit_del(a,5)].

34

Page 33: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Resolution strategies

Level resolution Unit resolution Set of support Linear resolution Linear input resolution Hiper-resolution Ordered resolution Framed literal resolution

39

Page 34: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

The Boolean Satisfiability Problem

Given: A Boolean formula Can F evaluate to 1 (true)? – Is F satisfiable? – If yes, return values to xi’s (satisfying assignment) that make F true 3-SAT – S.A. Cook 1971 NP-complete problem 2-SAT – polynomial time Horn-SAT

39

Page 35: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

The Boolean Satisfiability Problem

Why is SAT important?Theoretical importance: – First NP-complete problem (Cook, 1971)Many practical applications: – Model Checking – Automatic Test Pattern Generation – Combinational Equivalence Checking – Planning in AI – Automated Theorem Proving – Software Verification – …

39

Page 36: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Powerful inference rule: Paramodulation

C1: P(a) C2: a=b If C1 contains a term t and there is a unity

clause C2: t=s then we can infer a new clause from C1 by the substitution of a single occurrence of t in C1 with s.

Paramodulation is a generalisation of that rule

39

Page 37: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Paramodulation

Be C1 and C2 two clauses, which have no variables in common. If

C1: L[t] C1'

C2: r = s C2' where L[t] is a literal containing t , C1' and C2'

are clauses, and = mgu(t,r), then we can infer by paramodulation

L [s] C1' C2' where L [s] is obtained by replacing only one

single occurrence of t in L with s. Binary paramodulant 40

Page 38: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

Paramodulation

Paramodulation with factorization – general paramodulation

Paramodulation with resolution is sound and refutationally complete

41

Page 39: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

ExampleGroup axioms

% Associativity

(x * (y * z)) = ((x * y) * z).

% Identity element

((x * e) = x) & ((e * x) = x).

% Inverse element

((x * i(x)) = e) & ((i(x) * x)=e).

Prove % Right regular element

((f1 * f2) = (f0 * f2)) -> (f1 = f0).42

Page 40: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

1 x * e = x & e * x = x [assumption]. 2 x * i(x) = e & i(x) * x = e [assumption]. 3 f1 * f2 = f0 * f2 -> f1 = f0 [goal]. 4 x * (y * z) = (x * y) * z. [assumption]. 5 (x * y) * z = x * (y * z). [copy(4),flip(a)]. 6 x * e = x. [clausify(1)]. 7 e * x = x. [clausify(1)]. 8 x * i(x) = e. [clausify(2)]. 9 i(x) * x = e. [clausify(2)]. 10 f0 * f2 = f1 * f2. [deny(3)]. 11 f1 * f2 = f0 * f2. [copy(10),flip(a)]. 12 f0 != f1. [deny(3)]. 13 f1 != f0. [copy(12),flip(a)]. 14 x * (i(x) * y) = y. [para(8(a,1),5(a,1,1)),rewrite([7(2)]),flip(a)]. e * z = x * (i(x) * z) [8,5] z = x * (i(x) * z) [7] y = x * (i(x) * y) x * (i(x) * y) = y [flip]

Page 41: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

15 x * (y * i(x * y)) = e. [para(8(a,1),5(a,1)),flip(a)]. 17 i(x) * (x * y) = y. [para(9(a,1),5(a,1,1)),rewrite([7(2)]),flip(a)]. 22 i(f1) * (f0 * f2) = f2. [para(11(a,1),17(a,1,2))]. 27 i(f1) * f0 = e.

[para(22(a,1),15(a,1,2,2,1)),rewrite([5(8),8(7),6(5)])]. 29 f1 = f0. [para(27(a,1),14(a,1,2)),rewrite([6(3)])]. 30 $F. [resolve(29,a,13,a)].

Page 42: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

SAT Solvers

Davis-Putnam-Logemann-Loveland (DPLL) algorithm was one of the first SAT search algorithms (Davis and Putnam 1960; Davis, Logemman and Loveland 1962) 

P & ~Q & (~P  Q  R) & (P  ~S) ~Q & (Q  R) R (P ← true, Q ← false, R ← true, S ← false)

proving that the original formula is satisfiable.

39

Page 43: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

SAT Solvers

A formula may cause the algorithm to branch

the search through a branch reaches a dead end the moment a clause is deemed false—a conflicting clause—and all variations of the assignment that has been partially constructed up to this point can be discarded.

39

Page 44: Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea .

SAT Solvers

39

1  R & (P Q) & (~P  Q) & (~P  ~Q) Given

2 (P  Q) & (~P  Q) & (~P  ~Q) By letting R ← true

3 Q & ~Q By letting P ← true

4 ? Conflict: Q and ~Q cannot both be true

5 (P  Q) & (~P  Q) & (~P  ~Q) Backtrack to (2): R ← true still holds

6 ~P By letting Q ← true

7 true By letting ~P be true, i.e., P ← false

The formula is satisfiable by the existence of (P ← false, Q ← true, R ← true).