ME290M, Spring 1999, Week 5a

ME290M
Expert Systems in Mechanical Engineering

Spring 1999, T-Th 12:30-2:00 pm
1165 Etcheverry Hall, Course Control No. 56369 http://best.me.berkeley.edu/~aagogino/me290m/s99


[ Home | Info | Syllabus | Readings | Students | Homework | Resources | News | Chat]

Logical Implication and Unification Example

Given the following rules concerning coyotes and roadrunners, prove that BEEP-BEEP (or BB for short) is faster than WILEY. First express each rule in prefix predicate calculus form and apply the rules of inference presented in this chapter. So that the class is consistent on the relation terms, use (HRR A) to mean A is a healthy roadrunner, (FASTER x y) to mean x is faster than y, (PDOG B) to mean B is a pedigree dog, (COYOTE C) means that C is a coyote, and (GH D) means that D is a greyhound dog.

  1. Every healthy roadrunner can outrun any pedigree dog.

    (ALL x y (IF (AND (HRR x) (PDOG y)) (FASTER x y)))

  2. There are some greyhounds that can outrun any coyote.

    (EXIST x (AND (GH x ) (ALL y (IF (COYOTE y) (FASTER x y))))

  3. BEEP-BEEP is a healthy roadrunner.

    (HRR BB)

  4. WILEY is a coyote.

    (COYOTE WILEY)

  5. A greyhound is a pedigree dog.

    (ALL x (IF ((GH x) (PDOG x)))

  6. Transitivity of faster. (If A is faster than B, and B is faster than C, then A is faster than C.)

    (ALL x y z (IF (AND (FASTER x y)(FASTER y z)) (FASTER x z)))


Goal: Prove that BEEP-BEEP is faster than Wiley.

(FASTER BB WILEY)

  • You can't use Modus Ponens or Modus Tollens because none of the predicates start with IF.

  • You can't use AND Elimination because none of the predicates start with AND.

  • Damien suggested we use EI on 2. using the subsitution s=[x | (FIDO y)], where FIDO is a new Skolem function.

    7. (AND (GH (FIDO y) ) (ALL y (IF (COYOTE y) (FASTER (FIDO y) y))))

  • Use UI on 1. using the substitution s=[x | BB].

    8. (ALL y (IF (AND (HRR BB) (PDOG y)) (FASTER BB y)))

  • Use UI on 5. using the substitution s=[x | (FIDO y)].

    9. (IF ((GH (FIDO y)) (PDOG (FIDO y)))

  • Use AND Elimination or Simplification on 7.

    10. (GH (FIDO y) )
    11. (ALL y (IF (COYOTE y) (FASTER (FIDO y) y)))

  • Use Modus Ponens on 9. and 10.

    12. (PDOG (FIDO y))

  • Use UI on 11. using the substitution s=[y|WILEY]

    13. (IF (COYOTE WILEY) (FASTER (FIDO WILEY) WILEY))

  • Use MP on 13. and 4. using the substitution s=[y|WILEY]

    14. (FASTER (FIDO WILEY) WILEY)

  • Use UI on 8. using the substitution s=[y|(FIDO WILEY)]

    15. (IF (AND (HRR BB) (PDOG (FIDO WILEY))) (FASTER BB (FIDO WILEY))))

  • Use AI on 3. and 12.

    16. (AND (HRR BB) (PDOG (FIDO y)))

  • Use UI on 16. using the substitution s=[y| WILEY]

    17. (AND (HRR BB) (PDOG (FIDO WILEY)))

  • Apply MP to 15. and 17.

    18. (FASTER BB (FIDO WILEY))

  • Apply AI to 18. and 14.

    19. (AND (FASTER BB (FIDO WILEY)) (FASTER (FIDO WILEY) WILEY) )

  • Use UI on 6. using s=[x|BB, y|(FIDO WILEY), z|WILEY]

    20. (IF (AND (FASTER BB (FIDO WILEY))(FASTER (FIDO WILEY) WILEY)) (FASTER BB WILEY))

  • Use MP to 19. and 20.

    21. (FASTER BB WILEY)
    [ Home | Info | Syllabus | Readings | Students | Homework | Resources | News | Chat]

    Last updated: 16 February 99
    Send Comments to: Alice Agogino, aagogino@me.berkeley.edu
    Copyright © 1999 Alice Agogino; All Rights Reserved.