260 likes | 553 Views
Propositional Calculus. Knowledge based agent Knowledge is contained in agents in the form of sentences in a knowledge representation language stored in a Knowledge base
E N D
Propositional Calculus • Knowledge based agent • Knowledge is contained in agents in the form of sentences in a knowledge representation language stored in a Knowledge base • Very simple language consisting of propositional symbols and logical connectives, but still illustrates all the basic concepts of logic • Just facts (true/false/unknown) • Reasonably effective, but Limited expressive power to deal concisely with time, space and universal patterns of relationships among objects • In order to more fully represent we need First order logic for more expressive power.
COMP-4640: Intelligent & Interactive SystemsThe Predicate CalculusFirst Order Logic • FOL or FOPC (true/false/unknown) • More than just facts, objects & relations • We notice that the world is blessed with many objects, some of which are related to other objects, and we endeavor to reason about them
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Language and Syntax The predicate calculus is composed of the following components: -Object Constants ( A, 112, SmallBlock, etc.) -Function Constants (queen_of1, height_of1, mltpy2, etc.) -Relation Constants (K253, Married_to2, etc.) -Logical Connectives and Delimiters (, , , , , , , )
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Terms Any object constant or function constant (with N terms in parentheses where N is the arity of the function) is a term. Ex: queen_of(England), mltpy(5,4). All Predicates have an “arity”, i.e., a fixed number of arguments.
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Sentences (well formed formulas) Atoms are relational constants (with the appropriate number of arguments in parentheses) Ex. Married(Gerry,Jacqui). plus(two, three). likes(George, Kate). likes(George, X). likes(George, Suzie). helps(richard, bill). friends(bill, george). brothers(bill, john). -If w1 and w2 are sentences then so are: w1 w2 (disjunction) w1 w2 (conjunction) w1 w2 (implication) w1 (negation) Logical combinations Ex. Married(Gerry,Jacqui) Loves(Gerry,Jacqui) Brothers(bill, john) brothers(x,y) = brothers(y,x) ¬brothers(Pat, Sue)
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus • Semantics • A world can be composed of an infinite number of objects (individuals) • An interpretation of an expression is a mapping between object, function, and relation constants in predicate calculus to objects, functions, and relations in the real world. • A particular mapping or assignment of an interpretation is called a denotation.
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Models An interpretation satisfies a set of sentences if each of the sentences evaluates to true given the interpretation. A model is an interpretation that satisfies a set of sentences. Valid sentences are true under all interpretations. Any sentence that does not have a model is said to be inconsistent or unstatisfiable. If a sentence, s, is true under all interpretations for which each sentence in is true then ⊨ s (logical entailment).
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus • Knowledge • Sentences written in FOPL can be used to represent knowledge (in the form of facts and rules) about the world. • “Socrates is a man” • “Richard is the brother of John” • “Dave is married to Julie • Richards father is married to John’s mother
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus • Knowledge • Sentences written in FOPL can be used to represent knowledge (in the form of facts and rules) about the world. • “Socrates is a man” • man(socrates). • “Richard is the brother of John” • brother(richard, john) • “Dave is married to Julie • Married (dave, julie) • Richards father is married to John’s mother • Married (father(richard), mother(john)
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus • Quantification • It is only natural to want to express properties of entire collections of objects, • instead of enumerating the objects by name. We need them to help with interpretation. • There are two types of quantification in FOPL: • Universal (“For all x”) • x (Kid(x) likes(x,Candy)) • 2. Existential (“There exists an x”) • x (Kid(x) likes(x,Broccoli))
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus • Quantification (cont.) • Some useful equivalences (based on DeMorgan’s Law) are: • z (w(z)) z (w(z)) • y (q(y)) y (q(y))
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus • Some Practice Problems: • “Everybody loves someone.” • 2. “There is someone who is loved by everybody.” • 3. “There is someone who loves everybody.” • 4. “Everybody has someone who loves them.”
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Some Practice Problems: 1. “Everybody loves someone.” means that for every person, there is someone that person loves x y Loves (x,y) 2. “There is someone who is loved by everybody.” means there is some person, who is loved by everyone x y Loved_by(x,y) 3. “There is someone who loves everybody.” means there is some person x, who loves everyone x y Loves(x,y) 4. “Everybody has someone who loves them.” means that everyone loves someone, x y Loves (x,y) don’t forget the part about who loves them who (y) loves (x) We must also include that somebody y loves them x x y Loves (x, (loves(y,x))
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Some Practice Problems (cont.) 5. “Not all students take both History and Biology.” 6. “Every person who dislikes all vegetarians is smart.”
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Some Practice Problems (cont’d): 5. “Not all students take both History and Biology.” z (take (z, (History Λ Biology))) z take (z, (History Λ Biology)) z (take (z, History) Λ take (z, Biology)) z ((take(z,History) Λ take(z,Biology))) z ( take(z,History V take(z,Biology)) 6. “Every person who dislikes all vegetarians is smart.” x y (likes(x,y) => Smart(x)) x y (dislikes(x,y) => Smart(x))
COMP-4640: Intelligent & Interactive SystemsThe Predicate Calculus Before we can apply resolution refutation to the predicate calculus we must first: 1. introduce the concept of unification and 2. provide a procedure for converting arbitrary sentences in FOPL into CNF. Unification The objective of unification is to find a substitution that will allow two sentences to look the same. Once we make two sentences look the same, it is possible to apply resolution. Consider this example found on page 271 of your textbook. Knows(John, Jane) Knows(y, Leonid) Knows(y, mother(y)) Knows(x, Elizabeth) Now we can unify Knows(John,w) with 1 using the substitution {w/Jane} We can unify Knows(John,w) with 2, 3, and 4.