Copyright © 2002 Cycorp Why use logic? CycL Syntax Collections and Individuals (#$isa and #$genls) Microtheories Foundations of Knowledge Representation.

Slides:



Advertisements
Similar presentations
Artificial Intelligence
Advertisements

Copyright © 2002 Cycorp Introduction Fundamental Expression Types Top Level Collections Time and Dates Spatial Properties and Relations Event Types Information.
Multi-Contextual Knowledge Base and Inference Engine
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.
Knowledge Representation
Knowledge Representation (Introduction)
Knowledge Representation Praveen Paritosh CogSci 207: Fall 2003: Week 1 Thu, Sep 30, 2004.
Knowledge Representation Methods
Computability and Complexity 8-1 Computability and Complexity Andrei Bulatov Logic Reminder.
Copyright © 2002 Cycorp Why use logic? CycL Syntax Collections and Individuals (#$isa and #$genls) Microtheories Foundations of Knowledge Representation.
Overview of Cyc Tom O'Hara NMSU AI Seminar 18 February 2002.
Exam #3 is Friday. It will consist of proofs, plus symbolizations in predicate logic.
Copyright © 2002 Cycorp Logical Aspects of Inference Incompleteness in Searching Incompleteness from Resource Bounds and Continuable Searches Inference.
Copyright © 2002 Cycorp Events in Cyc Roles and Event Predicates Actor Slots Sub-events OE Example: Events and Roles.
Copyright © 2002 Cycorp Errors with Constants, Variables, and Reliance on NL Errors with Specialization, Generalization, and Rules Other Errors Errors.
Copyright © 2002 Cycorp Why use logic? CycL Syntax Collections and Individuals (#$isa and #$genls) Microtheories Foundations of Knowledge Representation.
FIRST-ORDER LOGIC FOL or FOPC
Copyright © 2002 Cycorp Introduction Fundamental Expression Types Top Level Collections Time and Dates Spatial Properties and Relations Event Types Information.
March 5: more on quantifiers We have encountered formulas and sentences that include multiple quantifiers: Take, for example: UD: People in Michael’s office.
Cyc Seven Differences between Cyc and Frames Systems.
Copyright © 2002 Cycorp Why use logic? CycL Syntax Collections and Individuals (#$isa and #$genls) Microtheories Foundations of Knowledge Representation.
Let remember from the previous lesson what is Knowledge representation
Copyright © 2002 Cycorp The Basics Arity Argument Types Second-Order Predicates More on Functions Predicates and Denotational Functions.
Copyright © 2002 Cycorp Writing Efficient CycL: Part 2 Part One: General Suggestions –Simpler is Better –Use Rule Macro Predicates –Create Simplifying.
Copyright © 2002 Cycorp Writing Efficient CycL Part 1 Part One –Simpler is Better –Use Rule Macro Predicates –Create Simplifying Vocabulary Part Two –Factor.
1 Knowledge Representation and Reasoning. 2 Knowledge Representation & Reasoning How knowledge about the world can be represented How knowledge about.
Copyright © 2002 Cycorp The Basics Arity Argument Types Second-Order Predicates More on Functions Predicates and Denotational Functions.
PL continued: Quantifiers and the syntax of PL 1. Quantifiers of PL 1. Quantifier symbols 2. Variables used with quantifiers 2. Truth functional compounds.
Agents that Reason Logically Logical agents have knowledge base, from which they draw conclusions TELL: provide new facts to agent ASK: decide on appropriate.
Ontology Mapping with Cyc doug foxvog 14 July 2004
FIRST ORDER LOGIC Levent Tolga EREN.
Predicates & Quantifiers Goal: Introduce predicate logic, including existential & universal quantification Introduce translation between English sentences.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Artificial Intelligence 4. Knowledge Representation Course V231 Department of Computing Imperial College, London © Simon Colton.
Artificial intelligence project
First Order Logic Chapter 7. PL is a Weak Representational Language §Propositional Logic (PL) is not a very expressive language because: §Hard to identify.
Namesys & Cyc. Namesys, Hans Reiser File system development File system is part of operating system File system puts information.
Declarative vs Procedural Programming  Procedural programming requires that – the programmer tell the computer what to do. That is, how to get the output.
Quantifiers, Predicates, and Names Kareem Khalifa Department of Philosophy Middlebury College Universals, by Dena Shottenkirk.
ARTIFICIAL INTELLIGENCE Lecture 3 Predicate Calculus.
1 Introduction to Computational Linguistics Eleni Miltsakaki AUTH Spring 2006-Lecture 8.
Word Problem Consider the following problem: To register, you will need either a yellow card or a note from the Dean. To obtain a note from the Dean you.
Introduction to Prolog. Outline What is Prolog? Prolog basics Prolog Demo Syntax: –Atoms and Variables –Complex Terms –Facts & Queries –Rules Examples.
Artificial Intelligence First-Order Logic (FOL). Outline of this Chapter The need for FOL? What is a FOL? Syntax and semantics of FOL Using FOL.
No new reading for Wednesday. Keep working on chapter 5, section 3. Exam #3 is next Monday.
For Wednesday Read chapter 9, sections 1-3 Homework: –Chapter 7, exercises 8 and 9.
For Friday Read chapter 8 Homework: –Chapter 7, exercises 2 and 10 Program 1, Milestone 2 due.
The Syntax of CycL. CycL is a formal language whose syntax derives from first-order predicate calculus (the language of formal logic) and from Lisp. In.
Computing & Information Sciences Kansas State University Lecture 12 of 42 CIS 530 / 730 Artificial Intelligence Lecture 12 of 42 William H. Hsu Department.
Copyright © Peter Cappello 2011 Predicates & Quantifiers.
PREDICATE CALCULS In Propositional Calculus, each atomic symbol denotes a proposition. But there is no way to access the components of an individual assertion.
Cyc Jaehui Park Summarized by Jaehui Park, IDS Lab., Seoul National University Presented by Jaehui Park, IDS Lab., Seoul National University.
Propositional Logic. Assignment Write any five rules each from two games which you like by using propositional logic notations.
KNOWLEDGE REPRESENTATION Ziyang Lin March 17, 2011.
Knowledge Representation and Reasoning 2
Knowledge Representation using First-Order Logic
First Order Logic.
Predicate Calculus Discussion #14 Chapter 2, Section 1 1/20.
Discussion #14 Predicate Calculus
CS201: Data Structures and Discrete Mathematics I
Ontology.
Knowledge Representation and Inference
Predicate Calculus Discussion #14 Chapter 2, Section 1.
Relational Logic Computational Logic Lecture 5
CS201: Data Structures and Discrete Mathematics I
Predicate Calculus. Predicate Calculus Topics Predicates Variables and instantiation Quantifiers Logical expressions Bound and free variables.
Predicate Logic: Syntax.
Introduction to Computational Linguistics
Presentation transcript:

Copyright © 2002 Cycorp Why use logic? CycL Syntax Collections and Individuals (#$isa and #$genls) Microtheories Foundations of Knowledge Representation in Cyc

Copyright © 2002 Cycorp Syntax: Constants A sampling of some constants: –#$Dog, #$SnowSkiing, #$PhysicalAttribute –#$BillClinton,#$Rover, #$DisneyLand- TouristAttraction –#$likesAsFriend, #$bordersOn, #$objectHasColor, #$and, #$not, #$implies, #$forAll –#$RedColor, #$Soil-Sandy CycLConstants denote specific individuals or collections (relations, people, computer programs, types of cars... ) Each CycLConstant is a character string prefixed by #$ These denote collections These denote individuals : Partially Tangible Individuals Relations Attribute Values

Copyright © 2002 Cycorp Syntax: Formulas CycLFormula: a relation applied to some arguments, enclosed in parentheses Examples: –(#$isa #$GeorgeWBush #$Person) –(#$likesAsFriend #$GeorgeWBush #$AlGore) –(#$BirthFn #$JacquelineKennedyOnassis) A CycL Sentence is a well-formed CycLFormula with a Truth Function, such as a predicate in the arg0 position. Sentences have truth values. A CycL Non-atomic Term is a well-formed CycLFormula with a Function-Denotational in the arg0 position.

Copyright © 2002 Cycorp Syntax: Sentences A TruthFunction: –is a relation that can be used to form sentences. –begins with a lower-case letter. Types of TruthFunctions: Predicates: #$likesAsFriend, #$bordersOn, #$objectHasColor, #$isa Logical Connectives: #$and, #$or, #$not Quantifiers: #$implies#$forAll, #$thereExists Sample CycLSentences: –(#$isa #$GeorgeWBush #$Person) –(#$likesAsFriend #$GeorgeWBush #$AlGore) CycLSentences are used to form assertions and queries.

Copyright © 2002 Cycorp Syntax: Non-atomic Terms A Function-Denotational –is a relation that can be applied to some arguments to pick out something new –usually ends in “Fn” Examples of Function-Denotational: –#$BirthFn, #$GovernmentFn, #$BorderBetweenFn Sample CycL Non-atomic Terms: –(#$GovernmentFn #$France) –(#$BorderBetweenFn #$France #$Switzerland) –(#$BirthFn #$JacquelineKennedyOnassis) CycL Non-atomic Terms are denotational terms. They can be used like any other, as in: (#$residenceOfOrganization (#$GovernmentFn #$France) #$CityOfParisFrance)

Copyright © 2002 Cycorp Well-formedness: Arity Arity constraints are represented in CycL with the predicate #$arity : (#$arity #$performedBy 2) Represents the fact that #$performedBy takes two arguments, e.g.: (#$performedBy #$AssassinationOfPresidentLincoln #$JohnWilkesBooth) (#$arity #$BirthFn 1) Represents the fact that #$BirthFn takes one arguments, e.g.: (#$BirthFn #$JacquelineKennedyOnassis)

Copyright © 2002 Cycorp Well-Formedness: Argument Type Argument type constraints are represented in CycL with the following 2 predicates: 1 #$argIsa (#$argIsa #$performedBy 1 #$Action) means that the first argument of #$performedBy must be an individual #$Action, such as the assassination of Lincoln in: (#$performedBy #$AssassinationOfPresidentLincoln #$JohnWilkesBooth) 2 #$argGenl (#$argGenl #$penaltyForInfraction 2 #$Event) means that the second argument of #$penaltyForInfraction must be a type of #$Event, such as the collection of illegal equipment use events in: (#$penaltyForInfraction #$SportsEvent #$IllegalEquipmentUse #$Disqualification)

Copyright © 2002 Cycorp Complex Formulas CycL also includes logical terms to allow us to stick formulas together and quantify into them Logical Terms Logical Connectives Quantifiers

Copyright © 2002 Cycorp Logical Connectives Logical connectives –truth functions –take sentences as their arguments (#$and (#$performedBy #$GettysburgAddress #$Lincoln) (#$objectHasColor #$Rover #$TanColor)) (#$or (#$objectHasColor #$Rover #$TanColor) (#$objectHasColor #$Rover #$BlackColor)) (#$implies (#mainColorOfObject #$Rover #$TanColor) (#$not (#$mainColorOfObject #$Rover #$RedColor))) (#$not (#$performedBy #$GettysburgAddress #$BillClinton))

Copyright © 2002 Cycorp Variables and Quantifiers (1) By adding variables and quantifiers to the logical connectives, predicates and other CycL components we’ve already covered, we gain the ability to represent many pieces of ordinary knowledge. Sentences involving concepts like “everybody,” “something,” and “nothing” require variables and quantifiers: Everybody loves somebody. Nobody likes spinach. Some people like spinach and some people like broccoli, but no one likes them both.

Copyright © 2002 Cycorp Quantifiers Adding variables and quantifiers, we can represent more general knowledge. Two main quantifiers: 1. Universal Quantifer -- #$forAll Used to represent very general facts, like: All dogs are mammals Everyone loves dogs 2. Existential Quantifier -- #$thereExists Used to assert that something exists, to state facts like: Someone is bored Some people like dogs

Copyright © 2002 Cycorp Quantifiers Universal Quantifier (#$forAll ?THING (#$isa ?THING #$Thing)) Existential Quantifier: (#$thereExists ?JOE (#$isa ?JOE #$Poodle)) Others: (#$thereExistsExactly 12 ?ZOS (#$isa ?ZOS #$ZodiacSign)) (#$thereExistsAtLeast 9 ?PLNT (#$isa ?PLNT #$Planet)) Everything is a thing. Something is a poodle. There are exactly 12 zodiac signs There are at least 9 planets

Copyright © 2002 Cycorp Implicit Universal Quantification All variables occurring “free” in a formula are understood by Cyc to be implicitly universally quantified. So, to CYC, the following two formulas represent the same fact: (#$forAll ?X (#$implies (#$isa ?X #$Dog) (#$isa ?X #$Animal)) (#$implies (#$isa ?X #$Dog) (#$isa ?X #$Animal))

Copyright © 2002 Cycorp Pop Quiz #1 What does this formula mean? (#$thereExists ?PLANET (#$and (#$isa ?PLANET #$Planet) (#$orbits ?PLANET #$Sun)))

Copyright © 2002 Cycorp Pop Quiz #1 What does this formula mean? (#$thereExists ?PLANET (#$and (#$isa ?PLANET #$Planet) (#$orbits ?PLANET #$Sun))) “There is at least one planet orbiting the Sun.”

Copyright © 2002 Cycorp Pop Quiz #2 What does this formula mean? (#$forAll ?PERSON1 (#$implies (#$isa ?PERSON1 #$Person) (#$thereExists ?PERSON2 (#$and (#$isa ?PERSON2 #$Person) (#$loves ?PERSON1 ?PERSON2)))

Copyright © 2002 Cycorp Pop Quiz #2 What does this formula mean? (#$forAll ?PERSON1 (#$implies (#$isa ?PERSON1 #$Person) (#$thereExists ?PERSON2 (#$and (#$isa ?PERSON2 #$Person) (#$loves ?PERSON1 ?PERSON2))) “Everybody loves somebody.”

Copyright © 2002 Cycorp Pop Quiz #3 How about this one? (#$implies (#$isa ?PERSON1 #$Person) (thereExists ?PERSON2 (#$and (#$isa ?PERSON2 #$Person) (#$loves ?PERSON2 ?PERSON1))))

Copyright © 2002 Cycorp Pop Quiz #3 How about this one? (#$implies (#$isa ?PERSON1 #$Person) (thereExists ?PERSON2 (#$and (#$isa ?PERSON2 #$Person) (#$loves ?PERSON2 ?PERSON1)))) “Everyone is loved by someone.”

Copyright © 2002 Cycorp Pop Quiz #4 And this? (#$implies (#$isa ?PRSN #$Person) (#$loves ?PRSN ?PRSN))

Copyright © 2002 Cycorp Pop Quiz #4 And this? (#$implies (#$isa ?PRSN #$Person) (#$loves ?PRSN ?PRSN)) “Everyone loves his (or her) self.”

Copyright © 2002 Cycorp Denotational Functions Denotational Functions can be applied to some arguments to pick out something new. The result of applying a denotational function is a term that denotes something. Function names are always capitalized, and often end in “Fn”. Examples: #$FruitFn #$GovernmentFn #$DeadFn

Copyright © 2002 Cycorp Non-atomic Terms A non-atomic term (NAT) is a denoting term like a constant. NATs are formed by applying a denotational function to a denoting term. (#$FruitFn #$AppleTree) (#$GovernmentFn #$France) (#$DeadFn #$Cockroach) NATs can be used just like atomic terms (i.e., constants). (#$implies (#$isa ?APPLE (#$FruitFn #$AppleTree)) (#$colorOfObject ?APPLE #$RedColor)) The denotation of a NAT is determined by the denotations of the inputs to the denoting function.

Copyright © 2002 Cycorp Why Use NATs? Uniformity –All kinds of fruits, nuts, etc., are represented in the same, compositional way: (#$FruitFn PLANT) * Inferential Efficiency –Forward rules can automatically conclude many useful assertions about NATs as soon as they are created, based on the function and arguments used to create the NAT. what kind of thing that NAT represents how to refer to the NAT in English …

Copyright © 2002 Cycorp Reifiable Functions and NARTS Some functions return concepts that we want to “reify” and keep in the KB. These are reifiable functions, such as: #$GovernmentFn #$BirthFn When a new NAT is created using a reifiable function, that new term is itself reified (kept around separately in the KB) and becomes a Non- Atomic Reified Term, or NART, such as (#$GovernmentFn #$France) (#$BirthFn #$JacquelineKennedyOnassis) Other functions return concepts that we don’t want to store separately in the KB. These are unrefiable functions, such as: #$TimesFn When a new NAT is created using an unrefiable functions, it does not get created as a persistent term in the KB. Unrefiable functions result in Non- Atomic Unreified Terms, such as (#$TimesFn 3 7).

Copyright © 2002 Cycorp CycL components –Constants –Formulas –Sentences (and Truth Functions) –Non-atomic Terms (and Denotational Functions) –Logical Constants –Variables and Quantifiers Well-Formedness –arity –argument constraints Summary