Intelligent Systems Lecture 9 Inference in FOL: Chapter 9 - PowerPoint PPT Presentation

1 / 41
About This Presentation
Title:

Intelligent Systems Lecture 9 Inference in FOL: Chapter 9

Description:

Short recapitulation of the features of FOL. Automated inference in FOL: effective procedures for answering questions posed in FOL ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 42
Provided by: axe74
Category:

less

Transcript and Presenter's Notes

Title: Intelligent Systems Lecture 9 Inference in FOL: Chapter 9


1
Intelligent Systems Lecture 9Inference in FOL
Chapter 9
  • WS 2009

2
Overview
  • Short recapitulation of the features of FOL
  • Automated inference in FOL effective procedures
    for answering questions posed in FOL
  • Reducing first-order inference to propositional
    inference
  • Unification
  • Generalized Modus Ponens
  • Forward chaining
  • Backward chaining
  • Resolution

3
First-order logic (FOL)
  • FOL (like propositional logics) is declarative,
    compositional, and the meaning of its sentences
    is context-independent
  • Propositional logic assumes the world contains
    facts
  • FOL (like natural language) assumes the world
    contains (ontological commitment)
  • Objects people, houses, numbers, colors,
    baseball games, wars,
  • Relations red, round, prime, brother of, bigger
    than, part of, comes between,
  • Functions father of, best friend, one more than,
    plus,
  • FOL can express facts about some or all the
    objects in the universe
  • Every sentence in FOL is either true, false or
    unknown to an agent (epistemological commitment)

4
Truth in first-order logic
  • Sentences are true with respect to a model and an
    interpretation
  • A model contains objects (domain elements) and
    relations among them
  • Interpretation specifies referents for
  • constant symbols ? objects
  • predicate symbols ? relations
  • function symbols ? functions
  • An atomic sentence predicate(term1,...,termn) is
    true
  • iff the objects referred to by term1,...,termn
    are in the relation referred to by predicate
  • Complex sentences use connectives (like
    propositional logic) and quantified sentences
    allow the expression of general rules

5
Universal instantiation (UI)
  • Every instantiation of a universally quantified
    sentence is entailed by it
  • ?v aSubst(v/g, a)
  • for any variable v and ground term g
  • ?x King(x) ? Greedy(x) ? Evil(x) yields
  • King(John) ? Greedy(John) ? Evil(John)
  • King(Richard) ? Greedy(Richard) ? Evil(Richard)
  • King(Father(John)) ? Greedy(Father(John)) ?
    Evil(Father(John))

Instantiation is infinite as soon as function
symbols (like Father) appear!
6
Existential instantiation (EI)
  • For any sentence a, variable v, and constant
    symbol k that does not appear elsewhere in the
    knowledge base
  • ?v a
  • Subst(v/k, a)
  • ?x Crown(x) ? OnHead(x,John) yields
  • Crown(C1) ? OnHead(C1,John)
  • provided C1 is a new constant symbol, called a
    Skolem constant.
  • EI can be applied once

7
Reduction to propositional inference
  • Suppose the KB contains just the following
  • ?x King(x) ? Greedy(x) ? Evil(x)
  • King(John)
  • Greedy(John)
  • Brother(Richard,John)
  • Instantiating the universal sentence in all
    possible ways we obtain
  • King(John) ? Greedy(John) ? Evil(John)
  • King(Richard) ? Greedy(Richard) ? Evil(Richard)
  • King(John)
  • Greedy(John)
  • Brother(Richard,John)
  • The new KB is propositionalized - proposition
    symbols are
  • King(John), Greedy(John), Evil(John),
    King(Richard), etc.

8
Reduction (cont.)
  • Every FOL KB can be propositionalized so as to
    preserve entailment - a ground sentence is
    entailed by new KB iff entailed by original KB.
  • Idea propositionalize KB and query, apply
    resolution, return result.
  • Problem with function symbols, there are
    infinitely many ground terms
  • Father(Father(Father(John)))

9
Reduction (cont.)
  • Theorem (Herbrand, 1930)
  • If a sentence a is entailed by a FOL KB, it is
    entailed by a finite subset of the
    propositionalized KB
  • Idea For n 0 to 8 do
  • create a propositional KB by instantiating
    with depth-n terms
  • see if a is entailed by this KB
  • Problem works if a is entailed, does not
    terminate if a is not entailed
  • Theorem (Turing, 1936 Church, 1936)
  • Entailment for FOL is semi-decidable - algorithms
    exist that say yes to every entailed sentence,
    but no algorithm exists that also says no to
    every non-entailed sentence.

10
Problems with propositionalization
  • Propositionalization seems to generate lots of
    irrelevant sentences.
  • From
  • ?x King(x) ? Greedy(x) ? Evil(x)
  • King(John)
  • ?y Greedy(y)
  • Brother(Richard,John)
  • it seems obvious that Evil(John), but
    propositionalization produces lots
  • of facts such as Greedy(Richard) that are
    irrelevant.
  • With p k-ary predicates and n constants, there
    are pnk instantiations.

11
Unification
  • We can infer this fact immediately if we can find
    a substitution ? such that King(x) and Greedy(x)
    match King(John) and Greedy(y)
  • A substitution provides a binding list
  • ? x/John,y/John works
  • Unify(a,ß) ? if a? ß?
  • a ß ?
  • Knows(John,x) Knows(John,Jane)
  • Knows(John,x) Knows(y,OJ)
  • Knows(John,x) Knows(y,Mother(y))
  • Knows(John,x) Knows(x,OJ)
  • Standardizing apart eliminates overlap of
    variables, e.g., Knows(z17,OJ)

x/Jane
x/OJ,y/John
y/John,x/Mother(John)
Fail!
12
Unification (cont.)
  • To unify Knows(John,x) and Knows(y,z),
  • ? y/John, x/z or ? y/John, x/John,
    z/John
  • The first unifier is more general than the
    second.
  • There is a single most general unifier (MGU) that
    is unique up to renaming of variables.
  • MGU y/John, x/z

13
The unification algorithm
14
The unification algorithm (cont.)
15
Generalized Modus Ponens (GMP)
  • p1', p2', , pn', ( p1 ? p2 ? ? pn ? q)
  • q?
  • p1' is King(John) p1 is King(x)
  • p2' is Greedy(y) p2 is Greedy(x) q is
    Evil(x)
  • ? is x/John,y/John
  • q? is Evil(John)
  • GMP used with KB which contain only definite
    clauses (exactly one positive literal)
  • All variables are assumed to be universally
    quantified

where pi'? pi ? for all i
16
Example knowledge base
  • 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.
  • Prove that Col. West is a criminal

17
Example knowledge base contd.
  • ... it is a crime for an American to sell weapons
    to hostile nations
  • American(x) ? Weapon(y) ? Sells(x,y,z) ?
    Hostile(z) ? Criminal(x)
  • Nono has some missiles, i.e., ?x Owns(Nono,x) ?
    Missile(x)
  • Owns(Nono,M1) ? Missile(M1)
  • all of its missiles were sold to it by Colonel
    West
  • Missile(x) ? Owns(Nono,x) ? Sells(West,x,Nono)
  • Missiles are weapons
  • Missile(x) ? Weapon(x)
  • An enemy of America counts as "hostile
  • Enemy(x,America) ? Hostile(x)
  • West, who is American
  • American(West)
  • The country Nono, an enemy of America
  • Enemy(Nono,America)

18
Forward chaining algorithm
19
Forward chaining proof
20
Forward chaining proof
21
Forward chaining proof
22
Properties of forward chaining
  • Sound and complete for first-order definite Horn
    clauses, which means that it computes all
    entailed facts correctly.
  • Datalog first-order definite clauses no
    functions
  • FC terminates for Datalog in finite number of
    iterations
  • May not terminate in general if a is not entailed
  • This is unavoidable entailment with definite
    clauses is semi-decidable

23
Efficiency of forward chaining
  • Incremental forward chaining no need to match a
    rule on iteration k if a premise wasn't added on
    iteration k-1
  • match each rule whose premise contains a newly
    added positive literal
  • Magic Sets rewriting the rule set, using
    information from the goal, so that only relevant
    bindings are considered during forward chaining
  • Magic_Criminal(x) ? American(x) ? Weapon(y) ?
    Sells(x,y,z) ? Hostile(z) ? Criminal(x)
  • add Magic_Criminal(West) to the KB
  • Matching itself can be expensive
  • Database indexing allows O(1) retrieval of known
    facts for a given fact it is possible to
    construct indices on all possible queries that
    unify with it
  • Subsumption lattice can get very large the costs
    of storing and maintaining the indices must not
    outweigh the cost for facts retrieval.
  • Forward chaining is widely used in deductive
    databases

24
Backward chaining algorithm
  • SUBST(COMPOSE(?1, ?2), p) SUBST(?2, SUBST(?1,
    p))

25
Backward chaining example
26
Backward chaining example
27
Backward chaining example
28
Backward chaining example
29
Backward chaining example
30
Backward chaining example
31
Backward chaining example
32
Properties of backward chaining
  • Depth-first recursive proof search space is
    linear in size of proof
  • Incomplete due to infinite loops
  • can be fixed by applying breadth-first search
  • Inefficient due to repeated sub-goals (both
    success and failure)
  • can be fixed using caching of previous results
    (extra space)
  • Widely used for logic programming

33
Logic programming Prolog
  • Algorithm Logic Control (Kowalski)
  • PROLOG
  • Basis backward chaining with Horn clauses
  • Widely used in Europe, Japan
  • Program set of clauses head - literal1,
    literaln.
  • criminal(X) - american(X), weapon(Y),
    sells(X,Y,Z), hostile(Z).
  • Depth-first, left-to-right backward chaining
  • Built-in predicates for arithmetic etc., e.g., X
    is YZ3
  • Built-in predicates that have side effects (e.g.,
    input and output predicates, assert/retract
    predicates)
  • the occur check is omitted
  • Closed-world assumption ("negation as failure")
  • e.g., given alive(X) - not dead(X).
  • alive(joe) succeeds if dead(joe) fails

34
Resolution Some considerations
  • Propositional resolution
  • Refutation complete inference procedure for
    propositional logic
  • Gödels completeness theorem (1930) for FOL
  • Any entailed sentence has a proof
  • FOL Resolution (Robinson, 1965)
  • Refutation complete inference procedure for FOL
  • Gödels incompleteness theorem (1931)
  • Any logical system that includes the principle of
    induction is incomplete

35
FOL Resolution
  • l1 ? ? lk, m1 ? ? mn
  • (l1 ? ? li-1 ? li1 ? ? lk ? m1 ? ?
    mj-1 ? mj1 ? ? mn)?
  • where Unify(li, ?mj) ?.
  • The two clauses are assumed to be standardized
    apart so that they share no variables.
  • For example,
  • Rich(Ken) ?Rich(x) ? Unhappy(x)
  • Unhappy(Ken)
  • with ? x/Ken
  • Apply resolution steps to CNF(KB ? ?a) complete
    for FOL

36
Conversion to CNF
  • Everyone who loves all animals is loved by
    someone
  • ?x ?y Animal(y) ? Loves(x,y) ? ?y Loves(y,x)
  • 1. Eliminate biconditionals and implications
  • ?x ??y ?Animal(y) ? Loves(x,y) ? ?y
    Loves(y,x)
  • 2. Move ? inwards ??x p ?x ?p, ? ?x p ?x ?p
  • ?x ?y ?(?Animal(y) ? Loves(x,y)) ? ?y
    Loves(y,x)
  • ?x ?y ??Animal(y) ? ?Loves(x,y) ? ?y
    Loves(y,x)
  • ?x ?y Animal(y) ? ?Loves(x,y) ? ?y Loves(y,x)

37
Conversion to CNF (cont.)
  • Standardize variables each quantifier should use
    a different one
  • ?x ?y Animal(y) ? ?Loves(x,y) ? ?z Loves(z,x)
  • Skolemize a more general form of existential
    instantiation each existential variable is
    replaced by a Skolem function of the enclosing
    universally quantified variables
  • ?x Animal(F(x)) ? ?Loves(x,F(x)) ?
    Loves(G(x),x)
  • Drop universal quantifiers
  • Animal(F(x)) ? ?Loves(x,F(x)) ? Loves(G(x),x)
  • Distribute ? over ?
  • Animal(F(x)) ? Loves(G(x),x) ? ?Loves(x,F(x))
    ? Loves(G(x),x)

38
Resolution proof
  • - In each resolution step unification is applied!
  • green goal
  • red KB rules

39
Resolution strategies
  • Unit preference
  • clauses with just one literal are preferred
  • Unit resolution
  • incomplete in general, complete for Horn KB
  • Set of support
  • at least one of the clauses makes part from the
    set of support
  • complete if the remainder of the sentences are
    jointly satisfiable
  • Using the negated query as set-of-support
  • Input resolution
  • at least one of the clauses makes part from the
    initial KB or the query
  • Complete for Horn, incomplete in the general case
  • Linear resolution P and Q can be resolved if P
    is in the original KB or P is an ancestor of Q in
    the proof tree complete
  • Subsumption all sentences subsumed by others in
    the KB are eliminated

40
Summary
  • Proof algorithms, are only semi-decidable i.e.,
    might not terminate for non-entailed queries
  • Propositionalization instantiating quantifiers
    slow
  • Unification makes the instantiation step
    unnecessary
  • GMP complete for definite clauses
    semi-decidable
  • Forward-chaining
  • Backward-chaining
  • decidable for Datalog
  • Generalized resolution CNF KB, unification
  • Strategies for reducing the search space of a
    resolution system

41
  • Thank you for your attention...
  • Questions?
Write a Comment
User Comments (0)
About PowerShow.com