10-30 - UCSB Computer Science

advertisement
Artificial Intelligence
CS 165A
Tuesday, October 30, 2007
 Knowledge and reasoning (Ch 7)
• Propositional logic
 First-order logic (Ch 8)
1
Notes
• HW#2 due today
• HW#3 due Thursday, November 8th
– Posted tonight
• Midterm on Tuesday, November 13th
• Just in case there’s any confusion, in the slides:
 is the same as  (implies)
↔ is the same as  (equivalence)
2
Implication and entailment
• What is the difference between implication and
entailment?
Implication
Entailment
PQ
(P  Q)  P
P is a proposition (“It is raining”)
Q is a proposition (“The grass is
wet”)
P and Q are variables – they can
stand for any propositions in the
KB
This sentence has a specific
semantic interpretation – it’s not
a general rule
This sentence has no specific
semantic interpretation – it is a
general rule
It may be true or false, depending
on the values of P and Q
It is always true, independent of
the values of P and Q
Q
3
Implication and entailment
• What is the difference between implication and
entailment?
(  )  

Implication
Entailment
PQ
(  )  
P is a proposition (“It is raining”)
Q is a proposition (“The grass is
wet”)
 and  are variables – they can
stand for any propositions in the
KB
This sentence has a specific
semantic interpretation – it’s not
a general rule
This sentence has no specific
semantic interpretation – it is a
general rule
It may be true or false, depending
on the values of P and Q
It is always true, independent of
the values of  and 

4
Implication and entailment
• What is the difference between implication and
entailment?
(  ), 

Implication
Entailment
PQ
(  )  
P is a proposition (“It is raining”)
Q is a proposition (“The grass is
wet”)
 and  are variables – they can
stand for any propositions in the
KB
This sentence has a specific
semantic interpretation – it’s not
a general rule
This sentence has no specific
semantic interpretation – it is a
general rule
It may be true or false, depending
on the values of P and Q
It is always true, independent of
the values of  and 

5
Important Inference Rules for Propositional Logic
Issues?
6
Example
KB
R  S
P  W
What can we infer ( ) if we add this sentence
with no inference rules?
PQ
Nothing
S
R
P
PQ
What can we infer ( ) if we then add this
inference procedure:
(  )  
(  ), 

Q and S

7
false  Q
Why is false  Q
always true?
• Answer #1: Since P  Q ↔ P  Q , so
false  Q ↔ true  Q , which is always true
• Answer #2: That is how the symbol  is defined and
interpreted. (We could invent another logical symbol that
is interpreted differently.)
8
Precedence of operators (logical connectives)
•
Levels of precedence, evaluating left to right
1.  (NOT)
2.  (AND, conjunction)
3.  (OR, disjunction)
4.  (implies, conditional)
5.  (equivalence, biconditional)
•
PQR
– (P  (Q))  R
•
Corrections
PQR
– P  (Q  R)
•
PQ  RS
– P  ((Q  R)  S)
9
Things to know!
• What is a sound inference procedure?
– The procedure only generates entailed sentences
• What is a complete inference procedure?
– The procedure can find a proof for any sentence that is entailed
• What is a satisfiable sentence?
– There are some interpretations for which it is true
• What is an unsatisfiable sentence?
– There is no interpretation for which it is true
• What is a valid sentence?
– It is true under all possible interpretations
10
Resolution Rule: one rule for all inferences
p  q, q  r
p r
Propositional calculus resolution
Remember: p  q  p  q, so let’s rewrite it as:
p  q, q  r
p  r
or
a  b, b  c
ac
Resolution is really the “chaining” of implications.
Would like to show that resolution is sound and (essentially)
complete (use Deduction Rule for proof)
11
Soundness:
Show that (α  β)  (β  γ)  (α  γ)
α
β
γ
αβ
β  γ
αβ  βγ
αγ
0
0
0
0
1
0
0
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
1
1
1
1
1
1
1
0
0
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
0
0
1
1
1
1
1
1
1
1
12 rule
This is always true for all propositions α, β, and γ, so we can make it an inference
Soundness:
Show that (α β )  (β  γ)  (α  γ)
α
β
γ
α  β
βγ
α β  β  γ
α  γ
0
0
0
0
1
0
0
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
1
1
1
1
1
1
1
0
0
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
0
0
1
1
1
1
1
1
1
1
13 rule
This is always true for all propositions α, β, and γ, so we can make it an inference
Conversion to Conjunctive Normal Form: CNF
• Resolution rule is stated for conjunctions of disjunctions
• Question:
– Can every statement in PC be represented this way?
• Answer: Yes
– Can show every sentence in propositional logic is equivalent to
conjunction of disjunctions
 Conjunctive normal form (CNF)
• Procedure for obtaining CNF
Replace (P  Q) with (P  Q) and (Q  P)
Eliminate implications: Replace (P  Q) with (P  Q)
Move  inwards: , (P  Q), (P  Q)
Distribute  over , e.g.: (P  Q)  R becomes (P  R)  (Q  R)
[What about (P  Q)  R ?]
– Flatten nesting: (P  Q)  R becomes P  Q  R
–
–
–
–
14
Propositional logic is quite limited
• Propositional logic has simple syntax and semantics, and
limited expressiveness
– Though it is handy to illustrate the process of inference
• However, it only has one representational device, the
proposition, and cannot generalize
– Input: facts; Output: facts
– Result: Many, many rules are necessary to represent any nontrivial world
– It is impractical for even very small worlds
• The solution?
– First-order logic, which can represent propositions, objects, and
relations between objects
– Worlds can be modeled with many fewer rules
15
First-Order Logic
Chapter 8
16
First-Order Logic (FOL)
A method of analysis or
calculation using a
special symbolic
notation
• Also known as First-Order Predicate Calculus
– Propositional logic is also known as Propositional Calculus
• An extension to propositional logic in which quantifiers
can bind variables in sentences
– Universal quantifier (  )
– Existential quantifier (  )
– Variables: x, y, z, a, joe, table…
• Examples
– x Beautiful(x)
– x Beautiful(x)
17
Propositional logic vs. FOL
• Propositional logic:
– P stands for “All men are mortal”
– Q stands for “Socrates is a man”
– What can you infer from P and Q?
 Nothing!
• First-order logic:
– x Man(x)  Mortal(x)
– Man(Socrates)
– What can you infer from these?
 Can infer Mortal(Socrates)
18
First-Order Logic (cont.)
• FOL can express anything that can be programmed
• It is by far the most studied and best understood logic in
use
• It does have limits, however
– Quantifiers ( and ) can only be applied to objects, not to
functions or predicates
 Cannot write P P(mom) = good
 This is why it’s called first-order
– This limits its expressiveness
• Let’s look at the syntax of first-order logic
– I.e., what logical expressions can you legally construct?
19
FOL Syntax
• Symbols
– Object symbols (constants): P, Q, Fred, Desk, True, False, …

These refer to things
– Predicate symbols: Heavy, Smart, Mother, …

These are true or false statements about objects: Smart(rock)
– Function symbols: Cosine, IQ, MotherOf, …

These return objects, exposing relations: IQ(rock)
– Variables: x, y, , …

These represent unspecified objects
– Logical connectives to construct complex sentences: , , , , 
– Quantifiers:  (universal),  (existential)
– Equality: =
• Usually variables will be lower-case, other symbols capitalized
20
FOL Syntax (cont.)
• Terms
– Logical expressions that refer to objects (evaluates to an object)
– Can be constants, variables, functions
• Examples
–
–
–
–
–
–
–
P
2001
Richard
x
y
BrotherOf(Richard)
Age(NephewOf(x))
[Why not AgeOf( ) ? (No reason...!)]
Remember – syntax and semantics are different, and separate!!
21
FOL Syntax
• Note on predicates and functions: typical usage
–
–
–
–
Beautiful(y)  “y is beautiful”
Mother(x)  “x is a Mother”
BrotherOf(x, y)  “x is a brother of y”
NextTo(x, y)  “x is next to y”
– BrotherOf(x)  “the brother of x”
– NextTo(y)  “a thing next to y”
– SquareRoot(x)  “the square root of x”
Predicates
Functions
22
FOL Sentences
•
Sentences state facts
– Just like in propositional logic…
•
3 types of sentences:
– Atomic sentences (atoms)
– Logical (complex) sentences
– Quantified sentences –  (universal),  (existential)
23
Sentences
1. Atomic sentence
Constant, variable, or
function – evaluates to an
object
– A predicate applied to some terms
 Brothers(Bill, FatherOf (John))
[Does the reverse follow?]
 LessThan(3, 5)
– Equality – states that two terms refer to the same object
 x = MotherOf (y)
 Instructor(cs165a) = Turk
 This is equivalent to the predicate: Equal(Instructor(cs165a), Turk)
2. Logical (complex) sentence – logical combination of other sentences
– Brothers(Bill, HusbandOf (Sue))
– Above (Sky, Ground)  Below(Ground, Sky)
– Brothers(Bill, John)  Brothers(John, Bill)
3. Quantified sentence – sentences with quantified variables
–  x,y ParentOf(x, y)  ChildOf(y, x)
–  x US-President(x)
24
Universal Quanitifer (“For all…”)
•  <variables> <sentence>
–  x – “For all x…”
–  x, y – “For all x and y…”
• Examples
– “Everything is beautiful”
  x Beautiful(x)
 Equivalent to: i Beautiful(xi)
– Beautiful(Joe)  Beautiful(Mary)  Beautiful(apple) 
Beautiful(dirt)  Beautiful(death)  …
– “All men are mortal”
  x Man(x)  Mortal(x)
– “Everyone in the class is smart”
  x Enrolled(x, cs165a)  Smart (x)
– What does this mean:
  x Enrolled(x, cs165a)  Smart (x)
 “Everything is enrolled in cs165a and is smart” !!
25
Expansion of universal quantifier
•  x Enrolled(x, cs165a)  Smart(x)
• This is equivalent to
– Enrolled(Tom, cs165a)  Smart (Tom) 
Enrolled(Mary, cs165a)  Smart (Mary) 
Enrolled(Chris, cs165a)  Smart (Chris) 
Enrolled(chair, cs165a)  Smart (chair) 
Enrolled(dirt, cs165a)  Smart(dirt) 
Enrolled(surfboard, cs165a)  Smart (surfboard) 
Enrolled(tooth, cs165a)  Smart (tooth) 
Enrolled(Mars, cs165a)  Smart (Mars)  …
– Everything!
• So,  x Enrolled(x, cs165a)  Smart (x) is equivalent to
– Enrolled(Tom, cs165a)  Smart(Tom) 
Enrolled(chair, cs165a)  Smart(chair)  …
26
Existential Quantifier (“There exists…”)
•  <variables> <sentence>
–  x – “There exists an x such that…”
–  x, y – “There exist x and y such that…”
• Examples
– “Somebody likes me”
  x Likes(x, Me) ???
 Equivalent to: i Likes(xi, Me)
– Likes(Joe, Me)  Likes(Mary, Me)  Likes(apple, Me) 
Likes(dirt, Me)  Likes(death, Me)  …
 Really “Something likes me”
–  x Person(x)  Likes(x, Me)
–  x Enrolled(x, cs165a)  WillReceiveAnA+(x)
27
Download