Download Inference in FOL - Arizona State University

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Propositional calculus wikipedia , lookup

Statistical inference wikipedia , lookup

Mathematical proof wikipedia , lookup

Truth-bearer wikipedia , lookup

Transcript
Inference in FOL
Chapter 9
Fall 2005
Copyright, 1996 © Dale Carnegie & Associates, Inc.
Inference with quantifiers
Previous Rules for propositional logic



Modus Ponens (p 211)
And-Elimination, plus Fig 7.11
Resolution (p 213)
(p 210)
What’s new now are variables and quantifiers

How can we reuse the above rules?
 By introducing more rules to remove V’s and Q’s
More rules with SUBST(,)


 - binding list,  - sentence
SUBST({x/Sam}, …)
 Sibling(x,John)) = Sibling(Sam,John)
CSE 471/598, CBS 598 by H. Liu
2
Inference rules for quantifiers
Universal Instantiation (UI)
For any sentence , variable v, and ground term g,
v

SUBST ({v / g}, )

E.g., for all greedy kings are evil
 {x/John}, {x/Father(Richard)}
Existential Instantiation (EI)
For any , v, and constant k new to KB,
v

SUBST ({v / k}, )

E.g., John has a crown on his head
 {x/C1}
CSE 471/598, CBS 598 by H. Liu
3
UI and EI
The new k in EI is used to name a specific
object and called a Skolem constant in logic

If it’s not new, what would happen?
UI and EI are different in inference


UI can be applied many times
EI can be applied once, then the sentence with EQ
can be removed
 Is the new KB logically equivalent to the old KB?
 They are only inferentially equivalent
Propositionalization – reducing to propositions
CSE 471/598, CBS 598 by H. Liu
4
Generalized Modus Ponens
p1' , p 2' ,, pn' , ( p1  p 2    pn  q)
SUBST ( , q)
It raises Modus Ponens from Prop Logic to
FOL – lifting with n atomic sentences pi’
It takes bigger steps in inference
It’s focused - not randomly trying UIs

If we know King(John) – p1’, Greedy(y) – p2’, and
King(x) ^ Greddy(x) => Evil(x), we can apply
GMP with Θ is {y/John, x/John}, q is Evil(x), and
SUBST(Θ, q) = Evil(John)
CSE 471/598, CBS 598 by H. Liu
5
Unification
UNIFY (p,q)= (unifier - the binding list)
where SUBST(,p) = SUBST(,q)
p, q are two sentences
Some examples: Unifying Knows(Jo,x) with


Knows(Jo,Ja) =? Knows(y,Bi) =? Knows(y,Mother(y)) = ?
Knows(x,Elizabeth) =?
Standardizing apart: Rename one sentence to avoid
name clashes
Most general unifier when more than one sentence can
be unified (e.g., Knows(Jo,x), Knows(y,z))

Finding MGU algorithm in Fig 9.1
CSE 471/598, CBS 598 by H. Liu
6
An example proof
The law says that it is a crime for an American to
sell weapons to hostile nations. The country
Nono, an enemy of America, has some missiles,
and all of its missiles were sold to it by Colonel
West, who is American. (p 280)
To prove (infer) that West is a criminal.

FOL, using these predicates: American(x),
Weapon(y), Sells(x,y,z), Hostile(z), Criminal(x),
Owns(x,y), Missile(y), Enemy(x,America)
 Datalog knowledge bases – FO definite clauses with no
function symbols

How do you prove it?
CSE 471/598, CBS 598 by H. Liu
7
Example (continued)
The proof can be very LONG for such a
simple problem if using UI (substituting with
a ground term).
The branching factor increases as KB grows.
Universal Instantiation has an enormous
branching factor.
We need more principled ways for proofs
Combining atomic sentences to conjunctions,
instantiating universal rules to match, then
applying Generalized Modus Ponens

Two ways to proceed: forward and backward
CSE 471/598, CBS 598 by H. Liu
8
Forward chaining
A first-order definite clause either is atomic or is
an implication p1^p2^…^p3  p

p’s are positive literals
Start with the KB and generate new conclusions
using Modes Ponens
FC is usually used when a new fact is added into
the KB, check if there are any new consequences
An example of answering who is criminal Criminal(x) (Fig 9.4)
Algorithm FOL-FC-ASK (Fig 9.3)


How fast is it?
What are side effects?
CSE 471/598, CBS 598 by H. Liu
9
Backward chaining
Start with something to be proved and find
implication sentences to conclude it

The list of goals is a stack waiting to be worked on
When all goals are satisfied, the proof succeeds

BC is used when there is a goal to be proved

Algorithm FOL-BC-ASK (Fig 9.6)


An example of answering who is criminal -Criminal(x)
(Fig 9.7)
BC is a depth-first search algorithm that suffers from
problems with repeated states and incompleteness
Which chaining method to use?

Any suggestion?
CSE 471/598, CBS 598 by H. Liu
10
Completeness
An incomplete proof procedure

there are sentences entailed by the KB, the
procedure cannot find them (the path examples Fig
9.10)
Significance of completeness (Math)


All conjectures can be established mechanically
We only need a set of fundamental axioms
Significance to AI - a machine can solve any problem
that can be stated in FOL
Looking for a complete proof procedure
CSE 471/598, CBS 598 by H. Liu
11
Completeness theorem
If KB  , then KB R  - Godel’s completeness
theorem

Or any entailed sentence has a finite proof
What’s the procedure R?
“There exists one” does NOT tell us which one
Resolution algorithm is one such procedure

Refutation-complete: if a sentence is unsatisfiable,
resolution will derive a contradiction
Entailment in FOL is semidecidable:
We can show that sentences follow, if they do;
but we can’t always show if they don’t.
CSE 471/598, CBS 598 by H. Liu
12
Resolution
A refutation complete inference procedure


Algorithm (Fig. 7.12): the same for both logics
Resolution proves KB   by proving KB^! unsatisfiable, or
by deriving the empty clause
Conjunctive normal form for FOL
Resolution inference rule
l1  l 2    lk ,
m1  m2    mn
SUBST ( , l1  ...li  1  li  1  lk  m1  ...mj  1  mj  1  mn)
where UNIFY(li, ¬mj) = 
First-order literals are complementary if one unifies with
the negation of the other
CSE 471/598, CBS 598 by H. Liu
13
Canonical forms for resolution
Conjunctive normal form (CNF)




CNF: Conjunction of disjunctions of literals
The KB is one big, implicit conjunctions
Implicative normal form (INF)
CNF and INF are notational variants
Skolemization

Eliminate existential quantifiers
 It is not as straightforward to replace with a new constant

Skolem functions
 The arguments of the Skolem function are all universally
quantified variables
CSE 471/598, CBS 598 by H. Liu
14
Conversion to normal form
1. Eliminate implications
2. Move NOT inwards
3. Standardize variables
4. Skolemize - removing E-Quantifier
introducing a function associated with the variable
5. Drop universal quantifiers
6. Distribute ^ over v
An example
 Everyone is loved by someone
 Everyone loves all animals
 Everyone who loves all animals is loved by someone
CSE 471/598, CBS 598 by H. Liu
15
Proof revisit
Criminal(West)

Negate it first …
CSE 471/598, CBS 598 by H. Liu
16
Another example proof
Everyone who loves all animals is loved
by someone. Anyone who kills an
animal is loved by no one. Jack loves all
animals. Either Jack or Curiosity killed
the cat, who is named Tuna. Did
Curiosity kill the cat?
CSE 471/598, CBS 598 by H. Liu
17
Resolution strategies
To guide the fast proof using refutation

Unit preference
 Prefer inferences that produce shorter sentences

Set of support
 A subset of sentences identified first
 Work on this set


Use the negated query as the set of support
Input resolution
 Combines one of the input sentences (from KB or Q) with
some other sentence (forming a single spine)

Subsumption
 Keeps KB small by eliminating all sentences that are
subsumed by an existing sentence
CSE 471/598, CBS 598 by H. Liu
18
Summary
Simple FOL proofs using UI and EI are
complex and long
Generalized Modus Ponens is natural and
powerful, used in forward or backward
chaining


Forward chaining is complete but slow
Backward chaining is focused but incomplete
Resolution with refutation is complete
There are strategies to guide search
CSE 471/598, CBS 598 by H. Liu
19