The Predicate Calculus - PowerPoint PPT Presentation

1 / 71
About This Presentation
Title:

The Predicate Calculus

Description:

If the sun shines on the screen on a particular day, the blinds are brought down. The blinds are not down today. Is it sunny today? 21. Represent in predicate ... – PowerPoint PPT presentation

Number of Views:109
Avg rating:3.0/5.0
Slides: 72
Provided by: nilufe
Learn more at: http://web.cs.ucla.edu
Category:

less

Transcript and Presenter's Notes

Title: The Predicate Calculus


1
The Predicate Calculus
2
2.0 Introduction 2.1 The Propositional
Calculus 2.2 The Predicate Calculus 2.3 Using
Inference Rules to Produce Predicate Calculus
Expressions
2.4 Application A Logic- Based Financial
Advisor 2.5 Epilogue and References 2.6 Exercis
es
Additional references for the slides Robert
Wilenskys CS188 slides www.cs.berkeley.edu/7wil
ensky/cs188/lectures/index.html
2
Chapter Objectives
  • Learn the basics of knowledge representation
  • Learn the basics of inference using
    propositional logic and predicate logic
  • The agent model Has a knowledge base of logical
    statements and can draw inferences.

3
Knowledge Representation (KR)
  • Given the world
  • Express the general facts or beliefs using a
    language
  • Determine what else we should (not) believe

4
Example
  • Given
  • The red block is above the blue block
  • The green block is above the red block
  • Infer
  • The green block is above the blue block
  • The blocks form a tower

5
Example
  • Given
  • If it is sunny today, then the sun shines on
    the screen. If the sun shines on the screen, the
    blinds are brought down. The blinds are not
    down.
  • Find out
  • Is it sunny today?

6
A KR language needs to be
  • expressive
  • unambiguous
  • flexible

7
The inference procedures need to be
  • Correct (sound)
  • Complete
  • Efficient

8
Candidates (for now)
  • English (natural language)
  • Java (programming language)
  • Logic (special KR language)

9
Logic consists of
  • A language which tells us how to build up
    sentences in the language (i.e., syntax),
    and and what the sentences mean (i.e.,
    semantics)
  • An inference procedure which tells us which
    sentences are valid inferences from other
    sentences

10
Propositional logic
  • The symbols of propositional calculus are
  • the propositional symbols
  • P, Q, R, S,
  • the truth symbols
  • true, false
  • and connectives
  • ?, ?, ?, ?, ?

11
Propositional Calculus Sentences
  • Every propositional symbol and truth symbol is a
    sentence.
  • Examples true, P, Q, R.
  • The negation of a sentence is a sentence.
  • Examples ?P, ? false.
  • The conjunction, or and, of two sentences is a
    sentence.
  • Example P ? ?P

12
Propositional Calculus Sentences (contd)
  • The disjunction, or or, of two sentences is a
    sentence.
  • Example P ? ?P
  • The implication of one sentence from another is a
    sentence.
  • Example P ? Q
  • The equivalence of two sentences is a sentence.
  • Example P ? Q ? R
  • Legal sentences are also called well-formed
    formulas or WFFs.

13
Propositional calculus semantics
  • An interpretation of a set of propositions is the
    assignment of a truth value, either T or F to
    each propositional symbol.
  • The symbol true is always assigned T, and the
    symbol false is assigned F.
  • The truth assignment of negation, ?P, where P is
    any propositional symbol, is F if the assignment
    to P is T, and is T is the assignment to P is F.
  • The truth assignment of conjunction, ?, is T only
    when both conjuncts have truth value T otherwise
    it is F.

14
Propositional calculus semantics (contd)
  • The truth assignment of disjunction, ?, is F only
    when both disjuncts have truth value F otherwise
    it is T.
  • The truth assignment of implication, ?, is F only
    when the premise or symbol before the implication
    is T and the truth value of the consequent or
    symbol after the implication F otherwise it is
    T.
  • The truth assignment of equivalence, ?, is T only
    when both expressions have the same truth
    assignment for all possible interpretations
    otherwise it is F.

15
For propositional expressions P, Q, R
16
Fig. 2.1 Truth table for the operator ?
17
Fig. 2.2 Truth table demonstrating the
equivalence of ?P?Q and P?Q
18
Proofs in propositional calculus
  • If it is sunny today, then the sun shines on the
    screen. If the sun shines on the screen, the
    blinds are brought down. The blinds are not down.
  • Is it sunny today?
  • P It is sunny today.
  • Q The sun shines on the screen.
  • R The blinds are down.
  • Premises P?Q, Q?R, ?R
  • Question P

19
Prove using a truth table
20
Propositional calculus is cumbersome
  • If it is sunny today, then the sun shines on the
    screen. If the sun shines on the screen, the
    blinds are brought down. The blinds are not down.
  • Is it sunny today?
  • - - -
  • If it is sunny on a particular day, then the sun
    shines on the screen. If the sun shines on the
    screen on a particular day, the blinds are
    brought down. The blinds are not down today.
  • Is it sunny today?

21
Represent in predicate calculus
  • If it is sunny on a particular day, then the sun
    shines on the screen on that day. If the sun
    shines on the screen on a particular day, the
    blinds are down on that day.The blinds are not
    down today.
  • Is it sunny today?
  • Premises
  • ?D sunny (D)? screen-shines (D)
  • ?D screen-shines(D) ? blinds-down(D)
  • ? blinds-down (today)
  • Question sunny(today)

22
Can also use functions
  • A persons mother is that persons parent.
  • ?X person (X)? parent(mother-of(X),X)
  • There are people who think this class is cool.
  • ?X person (X) ? T (X)
  • Some computers have mouses connected on the USB.
  • ? X computer (X) ? USB_conn (X, mouse_of(X))

23
Predicate calculus symbols
  • The set of letters (both uppercase and
    lowercase) A Z, a Z.
  • The set of digits 0 9
  • The underscore _
  • Needs to start with a letter.

24
Symbols and terms
  • 1. Truth symbols true and false (these are
    reserved symbols)
  • 2. Constant symbols are symbol expressions having
    the first character lowercase.
  • E.g., today, fisher
  • 3. Variable symbols are symbol expressions
    beginning with an uppercase character.
  • E.g., X, Y, Z, Building
  • 4. Function symbols are symbol expressions having
    the first character lowercase. Arity number of
    elements in the domain
  • E.g., mother-of (bill) maximum-of (7,8)

25
Symbols and terms (contd)
  • A function expression consists of a function
    constant of arity n, followed by n terms, t1 ,t2
    ,, tn, enclosed in parentheses and separated by
    commas.
  • E.g., mother-of(mother-of(joe))
  • maximum(maximum(7, 18), add_one(18))
  • A term is either a constant, variable, or
    function expression.
  • E.g. color_of(house_of(neighbor(joe)))
  • house_of(X)

26
Predicates and atomic sentences
  • Predicate symbols are symbols beginning with a
    lowercase letter. Predicates are special
    functions with true/false as the range.Arity
    number of arguments
  • An atomic sentence is a predicate constant of
    arity n, followed by n terms, t1 ,t2 ,, tn,
    enclosed in parentheses and separated by commas.
  • The truth values, true and false, are also atomic
    sentences.

27
Examples
  • greater_than(2, 3)
  • mother_of(joe, susan)
  • mother_of(sister_of(joe), susan)

Predicate symbol
term (constant)
28
Predicate calculus sentences
  • Every atomic sentence is a sentence.
  • 1. If s is a sentence, then so is its negation,
    ?s.
  • If s1 and s2 are sentences, then so is their
  • 2. Conjunction, s1 ? s2 .
  • 3. Disjunction, s1 ? s2 .
  • 4. Implication, s1 ? s2 .
  • 5. Equivalence, s1 ? s2 .

29
Predicate calculus sentences (contd)
  • If X is a variable and s is a sentence, then so
    are
  • 6. ?X s.
  • 7. ?X s.
  • Remember that logic sentences evaluate to true or
    false, therefore only such objects are atomic
    sentences. Functions are not atomic sentences.

30
verify_sentence algorithm
31
A logic-based Knowledge Base (KB)
Contains Facts (quantified or not) Function imp
lementations
Add more facts
Delete existing facts
Result
Pose queries
32
Interpretation
  • Let the domain D be a nonempty set.
  • An interpretation over D is an assignment of the
    entities of D to each of the constant, variable,
    predicate, and function symbols of a predicate
    calculus expression
  • 1. Each constant is assigned an element of D.
  • 2. Each variable is assigned to a nonempty subset
    of D (allowable substitutions).
  • 3. Each function f of arity m is defined (Dm to
    D).
  • 4. Each predicate of arity n is defined (Dn to
    T,F).

33
How to compute the truth value of predicate
calculus expressions
  • Assume an expression E and an interpretation I
    over E over a nonempty domain D. The truth value
    for E is determined by
  • 1. The value of a constant is the element of D it
    is assigned to by I.
  • 2. The value of a variable is the set of elements
    of D it is assigned to by I.
  • 3. The value of a function expression is that
    element of D obtained by evaluating the function
    for the parameter values assigned by the
    interpretation.

34
How to compute the truth value of predicate
calculus expressions (contd)
  • 4. The value of the truth symbol true is T, and
    false is F.
  • 5. The value of an atomic sentence is either T or
    F, as determined by the interpretation I.
  • 6. The value of the negation of a sentence is T
    if the value of the sentence is F, and F if the
    value of the sentence is T.
  • 7. The value of the conjunction of two sentences
    is T, if the value of both sentences is T and F
    otherwise.
  • 8-10. The truth value of expressions using ?,?,
    and ? is determined as defined in Section 2.1.2.

35
How to compute the truth value of predicate
calculus expressions (contd)
  • Finally, for a variable X and a sentence S
    containing X
  • 11. The value of ?X S is T if S is T for all
    assignments to X under I, and it is F otherwise.
  • 12. The value of ?X S is T if there is an
    assignment to X under I such that S is T, and it
    is F otherwise

36
Revisit ? and ?
  • A persons mother is that persons parent.
  • ?X person (X)? parent(mother-of(X),X)
  • vs.
  • ?X person (X) ? parent(mother-of(X),X)
  • I joe, jane are people
  • fido is a dog
  • person (joe) is T, person (jane) is T
  • person (fido) is F, dog (fido) is T
  • mother-of (joe) is jane

37
Revisit ? and ? (contd)
  • There are people who think this class is cool.
  • ?X person (X) ? T (X)
  • vs.
  • ?X person (X) ? T (X)
  • I joe, jane are people
  • fido is a dog
  • person (joe) is T, person (jane) is T
  • person (fido) is F, dog (fido) is T
  • mother-of (joe) is jane

38
First-order predicate calculus
  • First-order predicate calculus allows quantified
    variables to refer to objects in the domain of
    discourse and not to predicates or functions.
  • John likes to eat everything.
  • ?X food(X) ? likes (john,X)
  • John likes at least one dish Jane likes.
  • ?F food(F) ? likes (jane, F) ? likes (john, F)
  • John does everything Jane does.
  • ?P P(Jane) ? P(john) This is not first-order.

39
Order of quantifiers matters
  • Everybody likes some food.
  • There is a food that everyone likes.
  • Whenever someone likes at least one spicy dish,
    theyre happy.

40
Order of quantifiers matters
  • Everybody likes some food.
  • ?X ?F food(F) ? likes (X,F)
  • There is a food that everyone likes.
  • ?F ?X food(F) ? likes (X,F)
  • Whenever someone eats a spicy dish, theyre
    happy.
  • ?X ?F food(F) ? spicy(F) ? eats (X,F) ?
  • happy(X)

41
Examples
  • Johns meals are spicy.
  • Every city has a dogcatcher who has been bitten
    by every dog in town.
  • For every set x, there is a set y, such that the
    cardinality of y is greater than the cardinality
    of x.

42
Examples
  • Johns meals are spicy.
  • ?X meal-of(John,X) ? spicy(X)
  • Every city has a dogcatcher who has been bitten
    by every dog in town.
  • ?T ?C ?D city(C) ? ( dogcatcher(C,T) ?
  • (dog(D) ? lives-in (D, T) ? bit (D, C)) )

43
Examples (contd)
  • For every set x, there is a set y, such that the
    cardinality of y is greater than the cardinality
    of x.
  • ?X ?Y ?U ?V set(X) ? (set(Y) ? cardinality(X,U)
  • ? cardinality(Y, V) ? greater-than(V,U))

44
The role of the knowledge engineer
  • fisher-hall-is-a-building
  • ee-is-a-building
  • building (fisher)
  • building (ee)
  • white-house-on-the-corner-is-a-building
  • green (fisher)
  • color (fisher, green)
  • holds (color, fisher, green)
  • holds (color, fisher, green, jan-2003)
  • holds (color, fisher, blue, jul-2003)

45
Blocks world
  • on (c,a)
  • on(b,d)
  • ontable(a)
  • ontable(d)
  • clear(b)
  • clear(c)
  • hand_empty

c
b
a
d
46
Blocks world example
  • All blocks on top of blocks that have been moved
    or that are attached to blocks that have been
    moved have also been moved.
  • ?X ?Y (block(X) ? block(Y) ?
  • (on(X,Y) ? attached (X,Y)) ? moved (Y)) ?
  • moved(X)

47
Satisfy, model, valid, inconsistent
  • For a predicate calculus expression X and an
    interpretation I
  • If X has a value of T under I and a particular
    variable assignment, then I is said to satisfy X.
  • If I satisfies X for all variable assignments,
    then I is a model of X.
  • X is satisfiable iff there is an interpretation
    and variable assignment that satisfy it
    otherwise it is unsatisfiable.

48
Satisfy, model, valid, inconsistent (contd)
  • A set of expressions is satisfiable iff there is
    an interpretation and variable assignment that
    satisfy every element.
  • If a set of expressions is not satisfiable, it is
    said to be inconsistent.
  • If X has a value T for all possible
    interpretations, X is said to be valid.

49
Proof procedure
  • A proof procedure is a combination of an
    inference rule and an algorithm for applying that
    rule to a set of logical expressions to generate
    new sentences.
  • (Proof by resolution inference rule is described
    in Chapter 13.)

50
Logically follows, sound, and complete
  • A predicate calculus expression X logically
    follows from a set S of predicate calculus
    expressions if every interpretation and variable
    assignment that satisfies S also satisfies X.
  • An inference rule is sound if every predicate
    calculus expression produced by the rule from a
    set S of predicate calculus expressions also
    logically follows from S.
  • An inference rule is complete if, given a set S
    of predicate calculus expressions, the rule can
    infer every expression that logically follows
    from S.

51
Modus ponens and modus tollens
  • If the sentences P and P ? Q are known to be
    true, then modus ponens lets us infer Q.
  • If the sentence P ? Q is known to be true, and
    the sentence Q is known to be false, modus
    tollens lets us infer ?P.

52
And elimination / and introduction
  • And elimination lets us infer the truth of either
    of the conjuncts from the truth of a conjunctive
    sentence. For instance, P ? Q lets us conclude
    both P and Q are true.
  • And introduction allows us to infer the truth of
    a conjunction from the truth of its conjuncts.
    For instance, if P and Q are true, then P ? Q is
    true.

53
Universal instantiation
  • Universal instantion states that if any
    universally quantified variable in a true
    sentence is replaced by any appropriate term from
    the domain, the result is a true sentence. Thus,
    if a is from the domain of X,? X P(X) lets us
    infer P(a).

54
Revisit the sunny day example
  • ?D sunny (D)? screen-shines (D)
  • ?D screen-shines (D) ? blinds-down (D)
  • ? blinds-down (today)
  • Question sunny (today)
  • Use unification and modus tollens
  • sunny (today) ? screen-shines (today)
  • screen-shines (today)? blinds-down (today)
  • ? blinds-down (today)

55
Unification
  • Make sentences look alike.
  • Unify p(a,X) and p(a,b)
  • Unify p(a,X) and p(Y,b)
  • Unify p(a,X) and p(Y, f(Y))
  • Unify p(a,X) and p(X,b)
  • Unify p(a,X) and p(Y,b)
  • Unify p(a,b) and p(X, X)

56
Unification examples
  • Unify p(a,X) and p(a,b)
  • answer b/X p(a,b)
  • Unify p(a,X) and p(Y,b)
  • answer a/Y, b/X p(a,b)
  • Unify p(a,X) and p(Y, f(Y))
  • answer a/Y, f(a)/X p(a,f(a))

57
Unification examples (contd)
  • Unify p(a,X) and p(X,b)
  • failure
  • Unify p(a,X) and p(Y,b)
  • answer a/Y, b/X p(a,b)
  • Unify p(a,b) and p(X,X)
  • failure
  • Unify p(X, f(Y), b) and P(X, f(b), b)
  • answer b/Y this is an mgu
  • b/X, b/Y this in not an mgu

58
Most general unifier (mgu)
  • If s is any unifier of expressions E and g is the
    most general unifier of that set of expressions,
    then for s applied to E there exists another
    unifier s such that Es Egs, where Es and Egs
    are the composition of unifiers applied to the
    expression E.
  • Basic idea Commit to a substitution only if you
    have to keep it as general as possible.

59
Unification algorithm
  • Basic idea can replace variables by
  • other variables
  • constants
  • function expressions
  • High level algorithm
  • Represent the expression as a list
  • Process the list one by one
  • Determine a substitution (if necessary)
  • Apply to the rest of the list before proceeding

60
Examples with the algorithm
  • Unify p(a,X) and p(a,b)
  • (p a X) (p a b)
  • Unify p(a,X) and p(Y, f(Y))
  • (p a X) (p Y (f Y))
  • Unify parents(X, father(X), mother(bill)) and
  • parents(bill, father(bill), Y)
  • (parents X (father X) (mother bill))
  • (parents bill (father bill) Y)

61
function unify code
62
The books example
63
Processed example
  • (parents X (father X) (mother bill)), (parents
    bill (father bill) Y)
  • parents ? parents yes
  • return nil
  • (X (father X) (mother bill)), (bill (father bill)
    Y)
  • X ? bill no, substitute
  • return bill/X
  • (bill (father bill) (mother bill)), (bill (father
    bill) Y)
  • bill ? bill yes
  • return nil

64
Processed example (contd)
  • ( (father bill) (mother bill)), ( (father bill)
    Y)
  • (father bill), (father bill)
  • father ? father yes
  • return nil
  • (bill) (bill)
  • bill ? bill yes
  • return nil

65
Processed example (contd)
  • (mother bill), Y
  • (mother bill) ? Y no, substitute
  • return (mother bill) / Y
  • The set of unifying substitutions for
  • (parents X (father X) (mother bill)), (parents
    bill (father bill) Y)
  • is
  • bill / X, (mother bill) / Y.
  • The result is
  • (parents bill (father bill) (mother bill))

66
A Logic-Based Financial Advisor
  • Gives investment advice (savings account, or the
    stock market, or both).
  • Example rule
  • If the amount in the savings account is
    inadequate, increasing this amount should be the
    first priority.

67
Sentences
  • 1. savings_account (inadequate) ?
    investment(savings)
  • 2. savings_account (adequate) ?
    income(adequate) ? investment (stocks)
  • 3. savings_account (adequate) ?
    income(inadequate) ? investment (combination)
  • 4. ? X amount_saved(X) ? ? Y (dependents (Y) ?
    greater(X, minsavings(Y))) ?
    savings_account(adequate)
  • Y is the number of dependents, minsavings is
    the number of dependents multiplied by 5000.

68
Sentences (contd)
  • 5. ? X amount_saved(X) ? ? Y (dependents (Y) ?
    ? greater (X, minsavings(Y))) ?
    savings_account(inadequate)
  • 6. ? X earnings(X, steady) ? ? Y (dependents (Y)
    ? greater (X, minincome(Y))) ?
    income(adequate)
  • 7. ? X earnings(X, steady) ? ? Y (dependents (Y)
    ? ? greater (X, minincome(Y))) ?
    income(inadequate)
  • Minimum income is 15,000 (4000 number
    of dependents)
  • 8. ? X earnings(X, unsteady) ? income(inadequate)

69
Sentences (contd)
  • 9. amount_saved(22000)
  • 10. earnings(25000, steady)
  • 11. dependents (3)
  • The knowledge base is an implicit ? of the
    sentences above.
  • Using 10, 11, and 7 we can infer
  • 12. income(inadequate)
  • Using 9, 11, and 4, we can infer
  • 13. savings_account(adequate)
  • Using 12, 13, and 3, we can infer
  • 14. investment(combination)

70
Summary
  • Propositional calculus no variables or functions
  • Predicate calculus allows quantified variables
    as parameters of predicates or functions
  • Higher order logics allows predicates to be
    variables (might be needed to describe
    mathematical properties such as every
    proposition implies itself or there are
    decidable propositions.)

71
Key concepts
  • Sentence
  • Interpretation
  • Proposition, term, function, atom
  • Unification and mgu
  • Proofs in logic
Write a Comment
User Comments (0)
About PowerShow.com