Title: What do you mean, What do I mean continued...
 1What do you mean, What do I mean? continued...
- Lecture 10-1 
- November 30th, 1999 
- CS250
2Steps in Building
- Decide what to talk about 
- Decide on a vocabulary 
- Encode general rules 
- Encode an instance 
- Pose queries
3General Ontologies
- Categories 
- Measures 
- Composite Objects 
- Time, Space and Change 
- Events and Processes 
- Physical Objects 
- Substances 
- Mental Objects and Beliefs
4Categories
- Categories 
- Reification 
- How many people live on Earth? 
- Inheritance 
- Creating taxonomies 
- Kentucky Fried Chicken 
- Dewey decimal 
- LoC 
- MeSh
5Measures
- Examples Height, mass, cost 
- Measure  Units function  a Number
6Composite Objects
- Not inheritance 
- Difference between subclass and member 
- Schema 
- Script
7Composite Objects
- Not inheritance 
- Difference between subclass and member 
- General event descriptions 
- Schema 
- Script
8Using Events to Represent Change
- Whats the problem? 
- Continuous time 
- Multiple agents 
- Actions of different durations 
- Event calculus - Reify events
9Event Calculus Vocabulary
- Events are splotches in the space-time continuum 
- Events have subevents 
- Some events are intervals
10Examples
- Suppose we wish to represent facts about market 
 manias
?f f?BulbEating ? SubEvent(f,TulipMania) ? 
PartOf(Location(f), Holland)
?s s?StockFrenzy ? SubEvent(s,USBullMarket) ? 
PartOf(Location(f), ??)
?s s?StockFrenzy ? SubEvent(s,USBullMarket) ? 
TradedOn(Exchange(s), NASDAQ) 
 11Place
- How are places like intervals? 
- Relation In holds among places 
- Location function Maps an object to the smallest 
 place that contains it
12Processes
Kurt D. Fenstermacher Sonnenfeld directed Men 
in Black (1997) Get Shorty (1995) The Addams 
Family (1991) 
- Why do we need processes when we have events?
- How can we say 
- Barry Sonnenfeld was flying some time yesterday 
- Barry was flying all day yesterday
E(Flying(Barry), Yesterday)
T(Flying(Barry), Yesterday) 
 13A Logical Blender
- Suppose Bill is accused of killing a zucchini, 
 and when the cold, but efficient, Detective
 Frigerator (known to his pals as simply Re)
 questions the orange juice pitcher in FOPL, the
 orange juice has no idea how to say
- Bill was in the kitchen with the tomato all day 
 yesterday
14Composite Events
- Use And to combine two events with the usual 
 semantics
- And isnt so bad, but disjunction is a bit more 
 complicated -- how do we say
- I saw the whole thing, the beef or the broccoli 
 stabbed the zucchini all afternoon.
? p,q,e T(And(p, q), e) ? T(p, e) ? T(q, e) 
 15Time  Intervals
- Time is pretty important 
- Divvy up time into Moments and ExtendedIntervals 
- Define a couple handy functions 
- Start 
- End 
- Time 
- Date
16When Intervals Get Together
- Meet 
- Before 
- After 
- During 
- Overlap
17Objects in the Space-Time Continuum
- Remember that events are splotches of space-time 
- Some events have coherence through time 
- Need to capture the idea of an object existing 
 through time
18Roman Empire
- Roman Empire spread across much of Eurasia, 
 expanding and contracting, from 753 B.C. until
 the 5th century A.D.
19Roman Empire at 218 B.C. 
 20Roman Empire at 117 A.D. 
 21Roman Empire at 395 A.D. 
 22Fluents
- Roman Empire is an event 
- Subevents include 
- First, Second and Third Punic Wars 
- One of the first known hammer and anvil movements 
 in battle (216 BC _at_ Cannae)
- A fluent allows us to capture the notion of the 
 Roman Empire throughout time
T(In(Gaul, Roman Empire), AD12)
T(Male(Emperor(RomanEmpire)), 1stCenturyAD) 
 23Fluent Flavors
- Fluent is a function, fSituations Fvalues 
- Domain is the set of all situations (states of 
 the world)
- If Fvalues is TRUE, FALSE then its a 
 Propositional fluent
- If Fvalues is All situations then its a 
 Situational fluent
24Substances
- Less vs. fewer 
- Intrinsic vs. extrinsic properties 
- Substances are those things that are fungible
25Going, Like, Totally Mental
- What are other agents know, and what are they 
 thinking?
- Everybodys looking at me 
- Theyre trying to kill me 
- You look like someone who knows where I can find 
 extra virgin olive oil
- Start with a Believes predicate
Believes(Agent, x) 
 26Reification  You
- A good first pass 
- Treat Flies(Superman) as a propositional fluent 
- Relationships like Believes, Know and When 
 between agents and propositions are propositional
 attitudes
- The problem Can Clark fly?
Believes(Agent, Flies(Superman)) 
 27It is clear.
- Referential transparency 
- Any term can be substituted for an equal term 
- FOL is referentially transparent 
28Knowing for Action
- Knowing preconditions What do you need to know 
 to do action a?
- Knowledge effects What effect does performing 
 action a have on an agents knowledge?
29Replacing that Zucchini
- Grocery shopping 
- Percepts 
- Actions 
- Goals 
- Environment
30You say you wanna resolution? 
 31Chain of Fools
American(x) ?????????
- Forward chaining 
- Start with sentences, apply SdMP (GMP) to derive 
 new conclusions
- Good when adding new facts 
- Backward chaining 
- Start from sentences and derive premises 
- Got goal? 
32Forward Chaining
for each rule that p unifies with a premise if 
the other premises are known then add 
conclusion to KB keep on chainin
- Renaming 
- Two sentences are renamings of one another if 
 they are the same except for variable names
33Composition
- Define COMPOSE(T1, T2) to apply two substitutions 
 in a row
- SUBST(COMPOSE(T1, T2), p)  
-  SUBST(T2, SUBST(T1, p)) 
34Forward Chaining in Action
1) American(x) ? Weapon(y) ? Nation(z) ? 
Hostile(z) ? Sells(x, y, z) ? Criminal(x) 2) 
Owns(Nono, x) ? Missile(x) ? Sells(West, Nono, 
x) 3) Missile(x) ? Weapon(x) 4) Enemy(x, 
America)? Hostile(x)
ForwardChain(KB, American(West)) ForwardChain(KB, 
Nation(Nono)) ForwardChain(KB, Enemy(Nono, 
America)) ForwardChain(KB, Hostile(Nono)) Forward
Chain(KB, Owns(Nono, M1)) ForwardChain(KB, 
Missile(M1)) ForwardChain(KB, Sells(West, Nono, 
M1)) ForwardChain(KB, Weapon(M1)) ForwardChain(
KB, Criminal(West)) 
 35Whats the Problem?
  36Backward Chaining
- Start from what youre trying to prove, and look 
 for support
- When a query q is asked
If a matching fact q is known return the 
unifier for each rule whose consequent q matches 
q attempt to prove each premise of rule by 
backward chaining 
 37Revisiting Unification
- Can we unify 
- Knows(John, x)  Knows(x, Elizabeth)
38Now whats wrong?
- Is this complete? 
- Inference procedure i is complete iff 
- KB i ? whenever KB  ?
PhD(x) ? HighlyQualified(x) ?PhD(x) ? 
EarlyEarnings(x) HighlyQualified(x) ? 
Rich(x) EarlEarnings(x) ? Rich(x) 
 39Does a Complete Algorithm Exist?
- Kurt says yes 
- Any sentence that is entailed by another set of 
 sentences can be proved from that set
- In other words We can find a complete inference 
 procedure
- What is it?
40Resolution
  41Resolution Procedure
- Resolution is a refutation procedure To prove KB 
 ?, show KB ? ?? is unsatisfiable
42Resolution Procedure 
 43Canonical Forms
- CNF 
- Start with a bunch of disjunctions 
- Pretend all of them are joined with one big 
 conjunct
- INF 
- Each sentence is an implication with a 
 conjunction of atoms on the left, and a
 disjunction of atoms on the right
44Out of the Frying Pan?
- Created GMP, needed Horn clauses 
- But cant always transform sentences into Horn 
 clauses!
- Find another procedure 
- Stumble upon resolution, which needs CNF or INF 
- Can we always transform into CNF or INF?
45CNF vs. Horn
- The diff 
- In Horn, RHS must be an atom 
- In CNF, RHS is a disjunction 
- MP can derive atomic conclusions, what about 
 resolution?
- Recast terms as implications of TRUE
46Conversion to CNF
- Can convert any FOL KB into CNF
47Skolemization
- Remove existential quantifiers by elimination 
- Like EE, but more general 
- Replace existentially quantified variables with 
 unique constants
- What happens if theres a universal 
 quantification hiding inside?
- Example Everyone has a heart
48Resolution Proof
- To prove ? 
- Negate it, ?? 
- Convert it to CNF 
- Add to a CNF KB 
- Infer a contradiction
49Da Proof