Resolution Proofs  Requires axioms to be in clause form  To do harder proofs, we convert their axioms to clause form  Clause form is a disjunctions.

Slides:



Advertisements
Similar presentations
Resolution Proof System for First Order Logic
Advertisements

PROOF BY CONTRADICTION
Biointelligence Lab School of Computer Sci. & Eng.
Inference Rules Universal Instantiation Existential Generalization
1 A formula in predicate logic An atom is a formula. If F is a formula then (~F) is a formula. If F and G are Formulae then (F /\ G), (F \/ G), (F → G),
Knowledge & Reasoning Logical Reasoning: to have a computer automatically perform deduction or prove theorems Knowledge Representations: modern ways of.
CS.462 Artificial Intelligence SOMCHAI THANGSATHITYANGKUL Lecture 06 : First Order Logic Resolution Prove.
Standard Logical Equivalences
First-Order Logic (FOL) aka. predicate calculus. First-Order Logic (FOL) Syntax User defines these primitives: – Constant symbols (i.e., the "individuals"
Resolution.
Automated Reasoning Systems For first order Predicate Logic.
Artificial Intelligence
First Order Logic Resolution
Inference and Reasoning. Basic Idea Given a set of statements, does a new statement logically follow from this. For example If an animal has wings and.
We have seen that we can use Generalized Modus Ponens (GMP) combined with search to see if a fact is entailed from a Knowledge Base. Unfortunately, there.
For Friday No reading Homework: –Chapter 9, exercise 4 (This is VERY short – do it while you’re running your tests) Make sure you keep variables and constants.
Converting formulas into a normal form Consider the following FOL formula stating that a brick is an object which is on another object which is not a pyramid,
13 Automated Reasoning 13.0 Introduction to Weak Methods in Theorem Proving 13.1 The General Problem Solver and Difference Tables 13.2 Resolution.
F22H1 Logic and Proof Week 7 Clausal Form and Resolution.
Artificial Intelligence Chapter 14. Resolution in the Propositional Calculus Artificial Intelligence Chapter 14. Resolution in the Propositional Calculus.
Resolution Theorem Prover in First-Order Logic
Prolog IV Logic, condensed. 2 Propositional logic Propositional logic consists of: The logical values true and false ( T and F ) Propositions: “Sentences,”
Outline Recap Knowledge Representation I Textbook: Chapters 6, 7, 9 and 10.
Computability and Complexity 9-1 Computability and Complexity Andrei Bulatov Logic Reminder (Cnt’d)
Formal Logic Proof Methods Direct Proof / Natural Deduction Conditional Proof (Implication Introduction) Reductio ad Absurdum Resolution Refutation.
CSE (c) S. Tanimoto, 2008 Propositional Logic
AI - Week 16 Logic and Reasoning in AI: Resolution Refutation Lee McCluskey, room 2/07
1 Automated Reasoning Introduction to Weak Methods in Theorem Proving 13.1The General Problem Solver and Difference Tables 13.2Resolution Theorem.
All rights reservedL. Manevitz Lecture 41 Artificial Intelligence Logic L. Manevitz.
Inference and Resolution for Problem Solving
Chapter 3 Propositional Logic
Artificial Intelligence
Artificial Intelligence Chapter 14 Resolution in the Propositional Calculus Artificial Intelligence Chapter 14 Resolution in the Propositional Calculus.
The Semantic Web – WEEK 8: An automatic Proof technique.. The “Layer Cake” Model – [From Rector & Horrocks Semantic Web cuurse] You are here!
Knowledge & Reasoning Logical Reasoning: to have a computer automatically perform deduction or prove theorems Knowledge Representations: modern ways of.
Proof Systems KB |- Q iff there is a sequence of wffs D1,..., Dn such that Dn is Q and for each Di in the sequence: a) either Di is in KB or b) Di can.
Inference in First-Order logic Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
Conjunctive normal form: any formula of the predicate calculus can be transformed into a conjunctive normal form. Def. A formula is said to be in conjunctive.
1 Chapter 8 Inference and Resolution for Problem Solving.
Advanced Topics in Propositional Logic Chapter 17 Language, Proof and Logic.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
CSE S. Tanimoto Horn Clauses and Unification 1 Horn Clauses and Unification Propositional Logic Clauses Resolution Predicate Logic Horn Clauses.
CS344: Introduction to Artificial Intelligence Lecture: Herbrand’s Theorem Proving satisfiability of logic formulae using semantic trees (from Symbolic.
1CS3754 Class Notes 14B, John Shieh, Figure 2.5: Further steps in the unification of (parents X (father X) (mother bill)) and (parents bill.
Unification Algorithm Input: a finite set Σ of simple expressions Output: a mgu for Σ (if Σ is unifiable) 1. Set k = 0 and  0 = . 2. If Σ  k is a singleton,
CS Introduction to AI Tutorial 8 Resolution Tutorial 8 Resolution.
Automated Reasoning Early AI explored how to automated several reasoning tasks – these were solved by what we might call weak problem solving methods as.
Automated Reasoning Early AI explored how to automate several reasoning tasks – these were solved by what we might call weak problem solving methods as.
Reasoning using First-Order Logic
The Law of Resolution Formal Aspects of Computer Science - Week 7 The Law of Resolution Lee McCluskey, room 2/07
Propositional Logic Predicate Logic
第 1 6 章 谓词演算中的归结. 2 Outline Unification Predicate-Calculus Resolution Completeness and Soundness Converting Arbitrary wffs to Clause Form Using Resolution.
Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri CS 440 / ECE 448 Introduction to Artificial Intelligence.
For Wednesday Finish reading chapter 10 – can skip chapter 8 No written homework.
Knowledge Repn. & Reasoning Lec. #5: First-Order Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004.
 Conjunctive Normal Form: A logic form must satisfy one of the following conditions 1) It must be a single variable (A) 2) It must be the negation of.
Introduction to Logic for Artificial Intelligence Lecture 2
Propositional Logic Resolution
Horn Clauses and Unification
Knowledge & Reasoning Logical Reasoning: to have a computer automatically perform deduction or prove theorems Knowledge Representations: modern ways of.
Biointelligence Lab School of Computer Sci. & Eng.
Lecture 2: Distributed Programs and their Correctness
Horn Clauses and Unification
Prolog IV Logic, condensed.
Horn Clauses and Unification
Horn Clauses and Unification
Horn Clauses and Unification
Inference in FOL All PL inference rules hold in FOL, as well as the following additional ones: Universal elimination rule: x, A ===> Subst({x / g}, A).
RESOLUTION.
Resolution Proof System for First Order Logic
Presentation transcript:

Resolution Proofs  Requires axioms to be in clause form  To do harder proofs, we convert their axioms to clause form  Clause form is a disjunctions of literals  How do we convert a set of axioms into clause form

Steps 1.Eliminate implications 2.Move negations down to the atomic formula 3.Eliminate existential quantifiers 4.Rename variables so that no two variables are the same 5.Move Universal quantifiers to the left 6.Move disjunctions down to the literals 7.Eliminate conjunctions 8.Rename all variables so that no two variables are the same 9.Eliminate Universal quantifiers

Example  A(x)[Brick(x)  (E(y) [On (x, y) & !Pyramid(y)] & !E(y)[On(x, y) & On(y, x)] &A(y)[!Brick(y)  !Equal(x, y)])]

Step 1  Eliminate Implication  A(x)[!Brick(x) V (E(y)[On(x, y) &!Pyramid(y)] & !E(y)[On(x, y) & On(y, x)] & A(y)[Brick(y) V !Equal(x, y)])]

Step 2  Move negation down to the atomic formulas  !A(x) [Exp(x)]  E(x)[!Exp(x)]  !E(x) [Exp(x)]  A(x)[!Exp(x)]  A(x)[!Brick(x) V (E(y)[On(x, y) &!Pyramid(y)] & A(y)[!(On(x, y) & On(y, x))] & A(y)[Brick(y) V !Equal(x, y)])]

Step 2 cont’d  A(x)[!Brick(x) V (E(y)[On(x, y) &!Pyramid(y)] & A(y)[!On(x, y) V !On(y, x)] & A(y)[Brick(y) V !Equal(x, y)])]

Step 3  Eliminate existential quantifiers  E(x)[On(x, y) & !Pyramid(y)]  On(x, Magic(x)) & !Pyramid(Magic(x))  Magic is a Skolem function,  On(x, Support(x)) & !Pyramid(Support(x))

Step 4  Rename variables – because next step is to move all universal quantifiers to the left  A(x)[!Brick(x) V ((On(x, Support(x) &!Pyramid(Support(x))& A(y)[!On(x, y) V !On(y, x)] & A(z)[Brick(z) V !Equal(x, z)])]

Step 5  Move universal quantifiers to the left  A(x)A(y)A(z)[!Brick(x) V ((On(x, Support(x) &!Pyramid(Support(x))& !On(x, y) V !On(y, x) & Brick(z) V !Equal(x, z) )]

Step 6  Move disjunctions down to the literals  A(x)A(y)A(z)[ ( !Brick(x) V (On(x, Support(x)) & !Pyramid(Support(x)) ) & (!Brick(x) V !On(x, y) V !On(y, x)) & (!Brick(x) V Brick(z) V !Equal(x, z)) ]

Step 6 cont’d  A(x)A(y)A(z)[ ( !Brick(x) V On(x, Support(x)) ) & (!Brick(x) V !Pyramid(Support(x)) ) & (!Brick(x) V !On(x, y) V !On(y, x)) & (!Brick(x) V Brick(z) V !Equal(x, z)) ]

Step 7  Eliminate Conjunctions by writing each part as a separate axiom  A(x) [!Brick(x) V On(x, Support(x))]  A(x) [!Brick(x) V !Pyramid(Support(x))]  A(x)A(y)[!Brick(x) V !On(x, y) V !On(y, x)]  A(x)A(z)[!Brick(x) V Brick(z)V !Equal(x,z)]

Step 8  Rename variables  A(x) [!Brick(x) V On(x, Support(x))]  A(w) [!Brick(w) V !Pyramid(Support(w))]  A(u)A(y)[!Brick(u) V !On(u, y) V !On(y, u)]  A(v)A(z)[!Brick(v) V Brick(z)V !Equal(v,z)]

Step 9  Eliminate universal quantifiers – assume all variables are universally quantified  !Brick(x) V On(x, Support(x))  !Brick(w) V !Pyramid(Support(w))  !Brick(u) V !On(u, y) V !On(y, u)  !Brick(v) V Brick(z) V !Equal(v, z)

Example  On (B, A)  On (A, Table)  Let us show/prove that B is above the table  Above (B, Table)  We need a couple more relations

Example  A(x)A(y)[On(x,y)  Above(x, y)]  A(x)A(y)A(z)[Above(x,y) & Above(y, z)  Above(x, z)]  !On(u, v) V Above(u, v)  !Above(x,y) V !Above(y,z) V Above(x,z)

Example 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table)

Resolve 2 and 5 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table)  Specialize x to B Z to Table  !Above(B,y) V !Above(y,Table) V Above(B,Table)  !Above(B, Table)

Result of Resolve(2,5) 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table)

Resolve 1 and 6 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table)  Specialize u to y (replace) v to Table 1.!On(y, Table) V Above(y, Table) 2.!Above(B,y) V !Above(y,Table)

Result of Resolve(1,6) 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table) 7.!On(y, Table) V !Above(B,y)

Resolve 1 and 7 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table) 7.!On(y, Table) V !Above(B,y)  Specialize u to B v to y (replace) 1.!On(B, y) V Above(B, y) 2.!On(y, Table) V !Above(B,y)

Result of Resolve(1,7) 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table) 7.!On(y, Table) V !Above(B,y) 8.!On(B, y) V !On(y, Table)

Resolve 3 and 8 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table) 7.!On(y, Table) V !Above(B,y) 8.!On(B, y) V !On(y, Table)  Specialize y to A 1.On(B, A) 2.!On(B, A) V !On(A, Table)

Result of Resolve (3,8) 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table) 7.!On(y, Table) V !Above(B,y) 8.!On(B, y) V !On(y, Table) 9.!On(A, Table)

Resolve 4 and 9 1.!On(u, v) V Above(u, v) 2.!Above(x,y) V !Above(y,z) V Above(x,z) 3.On(B, A) 4.On(A, Table) 5.!Above(B, Table) 6.!Above(B,y) V !Above(y,Table) 7.!On(y, Table) V !Above(B,y) 8.!On(B, y) V !On(y, Table) 9.!On(A, Table)  On (A, Table)  !On(A, Table)  Resolves to Nil  You must be finished since you have arrived at a contradiction.  Thus !Above(B, Table) must be false  Thus Above(B, Table) must be true

Issues  Proof is exponential  Resolution requires Unification (Consistent substitutions) Rule: You can replace a variable by any term that does not contain the variable Finding such substitutions is called UNIFICATION  Theorem Provers make take too long  Theorem Provers may not help you to solve practical problems even if they finish quickly  Logic is weak as a representation for certain kinds of knowledge