Some Thoughts to Consider 1
Document Sample


Some Thoughts to Consider 7
• What is the difference between
Knowledge Engineering and
Programming?
• What is the difference between
Knowledge Engineering and
Ontological Engineering?
• Is there a difference between what a
software system should do and how a
software system should do it?
English to FOL Examples
• Every skier likes the snow.
(x) skier(x) likes(x, snow)
• You can fool some of the people all of the time.
(x) (person(x) (t) (time(t) canFool(x, t)))
• You can fool all of the people some of the time.
(x) ((person(x) (t) (time(t) canFool(x, t)))
• All purple plants are poisonous.
(x) (plant(x) purple(x)) poisonous(x)
• No purple plant is poisonous.
¬ (x) purple(x) plant(x) poisonous(x)
or
(x) (plant(x) purple(x)) ¬ poisonous(x)
• There are exactly two purple plants.
(x)(y) plant(x) purple(x) plant(y) purple(y) ¬ (x = y)
(z) (plant(z) purple(z)) ((x = z) (y = z))
• Mortimer is not tall.
¬ tall(Mortimer)
• X is above Y if X is directly on top of Y or else there is a pile
of one or more other objects directly on top of one another
starting with X and ending with Y.
(x)(y) above(x,y) (on(x,y) (z) (on(x,z) above(z,y)))
FOL Example: Nono (RN p.280)
Statement of Problem:
The law says that it is a crime for an American to sell weapons to
hostile nations. The country, Nono, an enemy of America, has
some missiles, and all of its missiles were sold to it by Colonel
West, who is American.
Pseudo First Order Logic:
American(West)
Enemy(Nono, America)
Owns(Nono, M1)
Missile(M1)
Missile(x) Weapon(x)
Enemy(x, America) Hostile(x)
Missile(x) Owns(Nono, x) Sells(West, x, Nono)
American(x) Weapon(y) Sells(x, y, z) Hostile(z) Criminal(x)
Prolog Statements:
american(west).
enemy(nono, america).
owns(nono, m1).
missile(m1).
weapon(X) :- missile(X).
hostile(X) :- enemy(X, america).
sells(west, X, nono) :- missile(X), owns(nono, X).
criminal(X) :- american(X), weapon(Y), sells(X, Y, Z), hostile(Z).
FOL Example: Hoofers Club
Statement of Problem:
Tony, Shi-Kuo, and Ellen belong to the Hoofers Club. Every
member of the Hoofers Club is either a skier or a mountain
climber or both. No mountain climber likes rain, and all
skiers like snow. Ellen dislikes whatever Tony likes and
likes whatever Tony dislikes. Tony likes rain and snow.
Query:
Is there a member of the Hoofers Club who is a mountain
climber but not a skier?
Semantics:
Let S(x) mean x is a skier, M(x) mean x is a mountain climber,
and L(x,y) mean x likes y, where the domain of the first
variable is Hoofers Club members, and the domain of the
second variable is snow and rain.
FOL Statements:
(x) S(x) M(x)
¬ (x) M(x) L(x, Rain)
(x) S(x) L(x, Snow)
(y) L(Ellen, y) ¬ L(Tony, y)
L(Tony, Rain)
L(Tony, Snow)
Query and Negation of Query:
(x) M(x) ¬ S(x)
¬ (x) M(x) ¬ S(x)
Knowledge Principles
• A good knowledge representation
language is:
• expressive
• concise
• unambiguous
• context insensitive
• effective
• A knowledge base should be:
• clear
• correct
A Recipe for Knowledge Engineering
• Identify the task.
• Assemble the relevant knowledge.
• Decide on a vocabulary of predicates,
functions, and constants.
• Encode general knowledge about the
domain.
• Encode a description of the specific
problem instance.
• Pose queries to the inference
procedure and get answers.
• Debug the knowledge base.
The Ontology of an Ontology
• Categories (Natural Kinds)
• Measures
• Composite Objects
• Time, Space, and Change
• Events and Processes
• Physical Objects
• Substances (Stuff)
• Mental Objects and Beliefs