Automated Reasoning in Propositional Logic - PowerPoint PPT Presentation

About This Presentation
Title:

Automated Reasoning in Propositional Logic

Description:

Automated Reasoning in Propositional Logic Russell and Norvig: Chapters 6 and 9 Chapter 7, Sections 7.5 7.6 CS121 Winter 2003 Problem Given: KB: a set of ... – PowerPoint PPT presentation

Number of Views:111
Avg rating:3.0/5.0
Slides: 45
Provided by: JeanClaud80
Category:

less

Transcript and Presenter's Notes

Title: Automated Reasoning in Propositional Logic


1
Automated Reasoning in Propositional Logic
  • Russell and Norvig
  • Chapters 6 and 9Chapter 7, Sections 7.57.6
  • CS121 Winter 2003

2
Problem
  • Given
  • KB a set of sentence
  • ? a sentence
  • Answer
  • KB ? ?

3
Deduction vs. Satisfiability Test
KB ? iff KB,?? is unsatisfiable
  • Hence
  • Deciding whether a set of sentences entails
    another sentence, or not
  • Testing whether a set of sentences is
    satisfiable, or not
  • are closely related problems

4
Computational Approaches
  • Enumeration of models
  • Construction of a proof
  • Battery-OK ? Bulbs-OK ? Headlights-Work
  • Battery-OK ? Starter-OK ? ?Empty-Gas-Tank ?
    Engine-Starts
  • Engine-Starts ? ?Flat-Tire ? Car-OK
  • Headlights-Work
  • Battery-OK
  • Starter-OK
  • ?Empty-Gas-Tank
  • ?Car-OK
  • Battery-OK ? Starter-OK ? (56)
  • Battery-OK ? Starter-OK ? ?Empty-Gas-Tank ?
    (97)
  • Engine-Starts ? (210)
  • ?Engine-Starts ? Flat-Tire ? (38)
  • Flat-Tire ? (1112)

5
Enumeration of Models
  • P Set of propositional symbols in KB,??
  • n Size of P
  • ENTAILS?(KB,?)
  • For each of the 2n models on P do
  • If it is a model of KB,?? then return no
    Return yes

6
Satisfiability Test as CSP
  • Each propositional symbol is a variable
  • The domain of each variable is True, False
  • Each sentence in KB,?? is a constraint on the
    value(s) taken by one or several variables
  • Recursive backtracking CSP techniques and
    heuristics are applicable

7
Construction of a Proof
  1. Battery-OK ? Bulbs-OK ? Headlights-Work
  2. Battery-OK ? Starter-OK ? ?Empty-Gas-Tank ?
    Engine-Starts
  3. Engine-Starts ? ?Flat-Tire ? Car-OK
  4. Headlights-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. Battery-OK ? Starter-OK ? (56)
  10. Battery-OK ? Starter-OK ? ?Empty-Gas-Tank ?
    (97)
  11. Engine-Starts ? (210)
  12. ?Engine-Starts ? Flat-Tire ? (38)
  13. Flat-Tire ? (1112)

8
Construction of a Proof
  1. Battery-OK ? Bulbs-OK ? Headlights-Work
  2. Battery-OK ? Starter-OK ? ?Empty-Gas-Tank ?
    Engine-Starts
  3. Engine-Starts ? ?Flat-Tire ? Car-OK
  4. Headlight-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. Battery-OK ? Starter-OK ? (56)
  10. Battery-OK ? Starter-OK ? ?Empty-Gas-Tank ?
    (97)
  11. Engine-Starts ? (210)
  12. ?Engine-Starts ? Flat-Tire ? (38)
  13. Flat-Tire ? (1112)
  • What do we need?
  • A complete set of sound inference rules
  • A complete search algorithm to decide which
    rule to apply next and to which sentences

9
Complementary Literals
  • A literal is a either an atomic sentence or the
    negated atomic sentence, e.g.
    P or ?P
  • Two literals are complementary if one is the
    negation of the other, e.g.
    P and ?P

10
Unit Resolution Rule
  • Given two sentences L1 ? ? Lp and
    M where Li,, Lp and M are all literals,
    and M and Li are complementary literals
  • Infer L1 ? ? Li-1 ? Li1 ? ? Lp

11
Examples
  • From?Engine-Starts ? Car-OK
  • Engine-Starts
  • InferCar-OK

Modus ponens
  • From?Engine-Starts ? Car-OK
  • ?Car-OK
  • Infer ?Engine-Starts

Modus tolens
12
Another Example
  1. ?Engine-Starts ? Flat-Tire ? Car-OK
  2. Engine-Starts
  3. ?Flat-Tire
  4. Flat-Tire ? Car-OK
  5. Car-OK

13
Detection of Unsatisfiability
  1. Car-OK
  2. ?Car-OK
  3. False

14
Soundness of Unit Resolution
  • Let m be a model of L1 ? ? Lp and
    M where M and Li are complementary
    literals
  • Li must be False in m, hence L1 ? ? Li-1 ?
    Li1 ? ? Lp must be True

15
Shortcoming of Unit Resolution
  • From
  • ?Engine-Starts ? Flat-Tire ? Car-OK
  • Engine-Starts ? Empty-Gas-Tank
  • we can infer nothing!

16
Full Resolution Rule
  • Given two sentences L1 ? ? Lp and
    M1 ? ? Mq where L1,, Lp, M1,, Mq are all
    literals, and Li and Mj are complementary
    literals
  • Infer L1? ? Li-1?Li1??Lk?M1? ?
    Mj-1?Mj1??Mk in which only one copy of each
    literal is retained (factoring)

17
Example
  • From
  • ?Engine-Starts ? Flat-Tire ? Car-OK
  • Engine-Starts ? Empty-Gas-Tank
  • Infer
  • Empty-Gas-Tank ? Flat-Tire ? Car-OK

18
Example
  • From
  • ?P ? Q (? P ? Q)
  • ?Q ? R (? Q ? R)
  • Infer
  • ?P ? R (? P ? R)

19
Not All Inferences are Useful!
  • From
  • ?Engine-Starts ? Flat-Tire ? Car-OK
  • Engine-Starts ? ?Flat-Tire
  • Infer
  • ?Flat-Tire ? Flat-Tire ? Car-OK

20
Not All Inferences are Useful!
  • From
  • ?Engine-Starts ? Flat-Tire ? Car-OK
  • Engine-Starts ? ?Flat-Tire
  • Infer
  • ?Flat-Tire ? Flat-Tire ? Car-OK

tautology
21
Not All Inferences are Useful!
  • From
  • ?Engine-Starts ? Flat-Tire ? Car-OK
  • Engine-Starts ? ?Flat-Tire
  • Infer
  • ?Flat-Tire ? Flat-Tire ? Car-OK ? True

tautology
22
Soundness of Full Resolution
Left as an exercise
23
Full Resolution Rule
  • Given two sentences L1 ? ? Lp and
    M1 ? ? Mq
  • Infer L1? ? Li-1?Li1??Lk?M1? ?
    Mj-1?Mj1??Mk

24
Sentence ? Clause Form
Example (A ? ?B) ? (C ? D)
25
Sentence ? Clause Form
Example (A ? ?B) ? (C ? D) 1. Eliminate ?
?(A ? ?B) ? (C ? D)
26
Sentence ? Clause Form
Example (A ? ?B) ? (C ? D) 1. Eliminate ?
?(A ? ?B) ? (C ? D)2. Reduce scope of ? (?A ?
B) ? (C ? D)
27
Sentence ? Clause Form
Example (A ? ?B) ? (C ? D) 1. Eliminate ?
?(A ? ?B) ? (C ? D)2. Reduce scope of ? (?A ?
B) ? (C ? D)3. Distribute ? over ? (?A ? (C ?
D)) ? (B ? (C ? D)) (?A ? C) ? (?A ? D) ? (B ?
C) ? (B ? D)
28
Sentence ? Clause Form
Example (A ? ?B) ? (C ? D) 1. Eliminate ?
?(A ? ?B) ? (C ? D)2. Reduce scope of ? (?A ?
B) ? (C ? D)3. Distribute ? over ? (?A ? (C ?
D)) ? (B ? (C ? D)) (?A ? C) ? (?A ? D) ? (B ?
C) ? (B ? D) Set of clauses ?A ? C , ?A ? D ,
B ? C , B ? D
29
Resolution Refutation Algorithm
  • RESOLUTION-REFUTATION(KB,a)
  • clauses ? set of clauses obtained from KB and ?a
  • new ?
  • Repeat
  • For each C, C in clauses do res ?
    RESOLVE(C,C) If res contains the empty clause
    then return yes
  • new ? new U resIf new ? clauses then return no
  • clauses ? clauses U new

30
Completeness of Resolution Refutation
Left as an exercise
31
Example
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlights-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire
  10. ?Starter-OK ? Empty-Gas-Tank ? Engine-Starts
  11. ?Battery-OK ? Empty-Gas-Tank ? Engine-Starts
  12. ?Battery-OK ? ?Starter-OK ? Engine-Starts
  13. ?Engine-Starts ? Flat-Tire
  14. ?Engine-Starts ? Car-OK

32
Example
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlight-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire
  10. ?Starter-OK ? Empty-Gas-Tank ? Engine-Starts
  11. ?Battery-OK ? Empty-Gas-Tank ? Engine-Starts
  12. ?Battery-OK ? ?Starter-OK ? Engine-Starts
  13. ?Engine-Starts ? Flat-Tire
  14. ?Engine-Starts ? Car-OK

33
Example
Battery-OK Starter-OK ?Empty-Gas-Tank ?Car-OK
?Flat-Tire ?Battery-OK ? ?Starter-OK ?
Engine-Starts ?Engine-Starts ? Flat-Tire
34
Example
Battery-OK Starter-OK ?Empty-Gas-Tank ?Car-OK
?Flat-Tire ?Battery-OK ? ?Starter-OK ?
Engine-Starts ?Engine-Starts ? Flat-Tire
?Battery-OK ? ?Starter-OK ? Flat-Tire ?Starter-
OK ? Flat-Tire Flat-Tire False (empty clause)
35
Resolution Heuristics
  • Set-of-support heuristics At least one
    ancestor of every inferred clause comes from a
  • Shortest-clause heuristics Generate a clause
    with the fewest literals first
  • Simplifications heuristics
  • Remove any clause containing two complementary
    literals (tautology)
  • Remove any clause C that contains all the
    literals of another clause C
  • If a symbol always appears with the same sign,
    remove all the clauses that contain it (pure
    symbol)

36
Example (Set-of-Support)
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlight-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire

37
Example (Set-of-Support)
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlight-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire
  10. ?Engine-Starts ? Car-OK
  11. ?Engine-Starts
  12. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank
  13. ?Starter-OK ? Empty-Gas-Tank
  14. Empty-Gas-Tank
  15. False

Note the goal-directed flavor
38
Resolution Heuristics
  • Set-of-support heuristics At least one
    ancestor of every inferred clause comes from a
  • Shortest-clause heuristics Generate a clause
    with the fewest literals first
  • Simplifications heuristics
  • Remove any clause containing two complementary
    literals (tautology)
  • Remove any clause C that contains all the
    literals of another clause C
  • If a symbol always appears with the same sign,
    remove all the clauses that contain it (pure
    symbol)

39
Example (Shortest-Clause)
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlight-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire

40
Example (Shortest-Clause)
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlight-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire
  10. ?Engine-Starts ? Car-OK
  11. ?Engine-Starts
  12. ?Bulbs-OK ? Headlights-Work
  13. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank
  14. ?Starter-OK ? Empty-Gas-Tank
  15. Empty-Gas-Tank
  16. False

41
Resolution Heuristics
  • Set-of-support heuristics At least one
    ancestor of every inferred clause comes from a
  • Shortest-clause heuristics Generate a clause
    with the fewest literals first
  • Simplifications heuristics
  • Remove any clause containing two complementary
    literals (tautology)
  • Remove any clause C that contains all the
    literals of another clause C
  • If a symbol always appears with the same sign,
    remove all the clauses that contain it (pure
    symbol)

42
Example (Pure Literal)
  1. ?Battery-OK ? ?Bulbs-OK ? Headlights-Work
  2. ?Battery-OK ? ?Starter-OK ? Empty-Gas-Tank ?
    Engine-Starts
  3. ?Engine-Starts ? Flat-Tire ? Car-OK
  4. Headlights-Work
  5. Battery-OK
  6. Starter-OK
  7. ?Empty-Gas-Tank
  8. ?Car-OK
  9. ?Flat-Tire

43
When to Use Logic?
  • When the knowledge base is large and can be made
    explicit
  • When formulating a problem as a CSP problem
    would yield complex constraints
  • When the agents environment is conveniently
    described by true or false sentences

44
Summary
  • Entailment problem
  • Resolution rule
  • Clause form of a set of sentences
  • Resolution refutation algorithm
  • Resolution heuristics
Write a Comment
User Comments (0)
About PowerShow.com