first order logic
play

First-order logic C h a p t e r 8 1 Outline Why FOL? Syntax and - PowerPoint PPT Presentation

First-order logic C h a p t e r 8 1 Outline Why FOL? Syntax and semantics of FOL Fun with sentences Wumpus world in FOL 2 Thinking about formal languages Programming languages = formal languages. Most widely used type


  1. First-order logic C h a p t e r 8 1

  2. Outline ♦ Why FOL? ♦ Syntax and semantics of FOL ♦ Fun with sentences ♦ Wumpus world in FOL 2

  3. Thinking about formal languages • Programming languages = formal languages. Most widely used type … – Have “facts” = data structures and contents – But! • The manipulation of facts is “hard-wired” in domain-specific procedures • They are procedural , not declarative . – Declarative: Facts and rules for manipulating stated independently. • à Domain- independent reasoning system … could be applied to any facts. • Propositional Logic: Pros and cons ü Propositional logic is declarative: pieces of syntax correspond to facts ü Propositional logic allows partial/disjunctive/negated information (unlike most data structures and databases) ü Propositional logic is compositional: – meaning of B1,1 ∧ P1,2 is derived from meaning of B1,1 and of P1,2 ü Meaning in propositional logic is context-independent – (unlike natural language, where meaning depends on context) u Propositional logic has very limited expressive power (unlike natural language) – E.g., cannot say “pits cause breezes in adjacent squares” except by writing one sentence for each square

  4. First Order Logics • Propositional Logics: Assumes the world contains facts (only) – Individual propositional symbols. May be true or false. Not parameterized. – P 1,1 ¬B 1,2 B 1,1 => P 1,2 ∨ P 2,1 • First Order Logic: More like natural language. Contains: – Objects: people, houses, numbers, theories, Ronald McDonald, colors, baseball games, wars, centuries . . . – Relations: • Propositions: Facts about one object. – red, round, bogus, prime, multistoried . . ., • Many to many relations: Relate whole groups of objects – brother of, bigger than, inside, part of, has color, occurred after, owns, comes between, . . . – Functions: • Subset of relations: relate multiple “inputs” to a single “output” • father of, best friend, third inning of, one more than, end of • And there are other logics as well: – Temporal, Probabilistic, Fuzzy

  5. Logics: Quick Big Picture Overview Language Ontological Epistemological Commitment Commitment Proposi'onal logic facts true/false/unknown First-order logic facts, objects, rela'ons true/false/unknown Temporal logic facts, objects, rela'ons, 'mes true/false/unknown Probability theory facts degree of belief Fuzzy logic facts + degree of truth known interval value 5

  6. Syntax of FOL: Basics • Models in propositional logics: Link symbols to truth values • Models in FOLs: Objects! – Domain of a FOL model: the set of objects it contains. (must be >0) – Objects represent entities that exist in the world. • Kings, swords, big toes, wind, rain, etc. – Objects can be related in various ways • This is the “1 st order” aspect of the logic! Reason about relationships... – E.g. “Brother” relation={ <john,doug>, <john, ben>, etc. ... tuples } • Unary relations = properties – Person(john), hungry(jack) • Some relations are functions: only one value. – Father(son, papa). – Sqrt(16,4)

  7. Syntax of FOL: Closer look • Three kinds of symbols on FOL: – Constant symbols: Stand for objects • MyCar, Richard, Kittycat – Predicate symbols: stand for relations • Brother, ParkedAt, Sparkly, Fat – Function symbols: stand for functions • Leftleg, Father • Where does “truth” come from? – Propositional logic: simpler à Symbols refer to world features. T/F – FOL: Model must provide necessary information to determine truth value • Has its set of Constant (Object), Predicate (relations), and function symbols • Also has interpretation : what world objects/relations specified by above symbols. – Example interpretations: • “John” refers to John Georgas, “Brother” refers to Brotherhood relation • “John” refers to a donor liver in Chad, “Brother” refers to “smaller than”. – Logics are not truth! Always dependent on human interpretation! – Concept of “intended interpretation” = “the obvious one”

  8. Syntax of FOL: Making Sentences • Logical symbols can be combined into sentences • Just like propositional logic. To describe a possible world (model). • Anatomy of sentences in FOL: – Term: Logical expression that refers to an object • Constant symbols are terms à named reference to object • Could also have descriptive reference to object (we don’t name everything!) – LeftLeg(John) refers to an (anonymous) object that is John’s left leg. • Generally: complex terms = functor(term1, term2, term3...) – Functor refers to some function in model, terms refer to objects related by function – The interpretation of model clarifies/fixes the referent of each term. – Atomic Sentences: state facts in the model • Brother (John, Richard) à intended interpretation = “Richard is brother of John” • Could be more complex/nested: Married( Father(John), Mother(John) ). • Sentence is true in a given model, if the specified relation holds in that model – Complex Sentences: Can use the usual logical connectives to compound • ¬King(Richard) ⇒ King(John) • ¬Brother(LeftLeg(Richard), John) • King(Richard) ∨ King(John)

  9. Entailment in FOL • Our goal remains to show/prove/compute entailment. – KB |= α à show that statement α is true in all models where KB is true. – Model checking in propositional logic: generate all possible models, check em. – Technically still works perfect in FOL...except model space is HUGE. • How many models exist for a give world in FOL? – By definition: every possible combination of every possible assignment. – So: Model space = all permutations of all factors in an FOL world: • For each number of domain elements n from 1 to ∞ • For each k-ary predicate P k in the vocabulary For each possible k-ary relation on n objects • For each constant symbol C in the vocabulary • For each choice of referent for C from n objects . . . • Computing entailment by enumerating FOL models is not feasible! – Model-checking is not an option to compute entailment – Need more focused inference-based reasoning!

  10. Universal Quantification • FOL power! We can make broad statements about the world! – State that a logical sentence holds for all possible instantiations of referents! • Format: ∀ (variables) (logical sentence, with variables) – States: sentences is true for all possible bindings of given variables. – ∀ x EnrolledIn(cs470, x) ⇒ Smart(x) • Truth: ∀ x P is true in model m iff P is true with x bound to every possible object in the model. – So wait: Above statement true only if it evaluates to true with x bound to “Frank”...and with x bound to “projector” holds? Huh? • Yes. Note that it’s an implication à true except when premise false and RHS true. • Caution: – Typically ‘ ⇒ ‘ is the main connective with ∀ – Common mistake: Using ∧ as the main connective • ∀ x EnrolledIn(cs470, x) ∧ Smart(x) • “Everyone is enrolled in CS470” and “everyone is smart”

  11. Existential Quantification • State: a sentence holds for at least one instantiation of referents! • Format: ∃ (variables) (logical sentence, with variables) – States: sentence is true for at least one binding of given variables. – ∃ x EnrolledIn(cs470, x) ∧ Smart(x) • Truth: ∃ x P is true in model m iff P is true with x bound to every possible object in the model. – So wait: Above statement true only if it evaluates to true with x bound to some possible object in the model. • Caution: – Typically ‘ ∧ ‘ is the main connective with ∀ – Common mistake: Using ⇒ as the main connective instead • ∃ x EnrolledIn(cs470, x) ⇒ Smart(x) • “The existence of someone enrolled in cs470 implies that someone is smart” • Ok, but: implication is false only if LHS false and RHS true. True all other times. • Above is also true if there is anyone who is NOT enrolled in cs470!

  12. Properties of Quantifiers • Quantifiers can be nested...but be careful of meaning! • ∀ x ∀ y is the same as ∀ y ∀ x – Usually we just write ∀ x , y • ∃ x ∃ y is the same as ∃ y ∃ x – Usually write ∃ x,y • ∃ x ∀ y is not the same as ∀ y ∃ x !! – ∃ x ∀ y Loves(x,y) • “There is a person who loves everyone in the world” – ∀ y ∃ x Loves(x,y) • “Everyone in the world is loved by at least one person” • Often good to parenthesize to emphasize quantifier meaning – ∀ x ( ∃ y Loves(x,y) ) • “Everyone loves at least one person” • Note: there’s nothing saying that x and y can’t be bound to same object!

  13. Fun with logic sentences... • Brothers are siblings 13

  14. Fun with sentences Brothers are siblings ∀ x, y Brother ( x, y ) ⇒ Sibling ( x, y ). “Sibling” is symmetric 14

  15. Fun with sentences Brothers are siblings ∀ x, y Brother ( x, y ) ⇒ Sibling ( x, y ). “Sibling” is symmetric ∀ x, y Sibling ( x, y ) ⇔ Sibling ( y, x ). One’s mother is one’s female parent 15

  16. Fun with sentences Brothers are siblings ∀ x, y Brother ( x, y ) ⇒ Sibling ( x, y ). “Sibling” is symmetric ∀ x, y Sibling ( x, y ) ⇔ Sibling ( y, x ). One’s mother is one’s female parent ∀ x, y Mother ( x, y ) ⇔ ( Female ( x ) ∧ Parent ( x, y )). A first cousin is a child of a parent’s sibling 16

Recommend


More recommend