1 / 42

Predicate Logic

Predicate Logic. CS311 Western Washington University. First Order Predicate Calculus. Why do we need another reasoning system? What’s wrong with propositional calculus? Well…it only allows reasoning about propositions, or whole sentences. How could we express the following sentences

Sharon_Dale
Télécharger la présentation

Predicate Logic

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Predicate Logic CS311 Western Washington University

  2. First Order Predicate Calculus Why do we need another reasoning system? What’s wrong with propositional calculus? Well…it only allows reasoning about propositions, or whole sentences. How could we express the following sentences in propositional logic: All super heroes can fly. Socrates can’t fly. Therefore Socrates is not a super hero. Which of these statements is not a proposition? Why not? Western Washington University

  3. Predicates Identify the predicates in the previous examples… predicates from a grammar point of view. From a logic point of view, a predicate is a relation, which can also be thought of as a property. Let p(x) mean “x can fly.” p(x) is called a predicate. When we substitute a specific value for x, we get a proposition. p(Mighty Mouse) is a proposition. Another example: Let p(x) mean that x is an odd integer, then the proposition p(11) is true, and the proposition p(98) is false. Western Washington University

  4. Existential Quantification p(4)  p(10)  p(12)  p(13) is true, and it can also be described by saying: There exists an element x in the set {4, 10, 12, 13} such that p(x) is true. If we let D = {4, 10, 12, 13}, then we can symbolically express the expression as: x  D: p(x) The  symbol is the existential quantifier. The statement above is a proposition, because the predicate is specific to a particular set. It would be a predicate if the statement was expressed without regard to any particular set: x p(x) Western Washington University

  5. Universal Quantification Consider a conjunction containing the previous p. p(1)  p(33)  p(91)  p(15) Let D = {1, 33, 91, 15}. We can express this proposition as “Every x in D is an odd integer.”, or symbolically: x  D: p(x). Without set quantification, the expression x p(x) can be read “For every x p(x).” The  symbol is call the universal quantifier. Western Washington University

  6. Consider the following statement: • [p(0,0)  p(0,1)]  [p(1,0)  p(1,1)] • We can represent this as: • Let D = {0,1} • x D : y D : p(x,y) • Natural Numbers: • Every natural number has a successor. • There is no natural number whose successor • is 0. • How would we express these statements using • predicate calculus? • This notation belongs to a logic called first-order • predicate calculus. In first-order predicate • calculus we can only quantify variables that • occur in predicates. High-order predicate calc • is in Chapter 8…something to look forward to  Western Washington University

  7. Well-Formed Formulas In order for predicate calculus to be an actual calculus, we need to have rules about what is a valid expression. The alphabet: Individual variables: x, y, z Individual constants: a, b, c Function constants: f, g, h Predicate constants: p, q, r Connective symbols: , , ,  Quantifier symbols: ,  Punctuation symbols: ( ) Western Washington University

  8. An inductive definition: <wff> := atom | ( <wff> ) |  <wff> | <wff>  <wff> | <wff>  <wff> | <wff>  <wff> | x < wff> | x <wff> Review of precedence hierarchy: , x,x    Note that the quantifiers have the same precedence as negation Western Washington University

  9. Identifying a wff How can we determine if an expression is a wff? Bottom-up Approach Identify the atoms…this is the basis case. Then use induction on the atoms. Top-Down Approach Notice the general form of the expression. Then show that all of the terms are atoms. x p(x,y)  q(x) Western Washington University

  10. Quantifier Scope When a quantifier, or , occurs in a wff, it influences some occurrences of a quantified variable. This influence is called the scope of the quantifier. In the wff x W, W is the scope of the quantifier x In the wff x W, W is the scope of the quantifier x What is the scope of x in the wff: x p(x,y)  q(x) Recall the hierarchy of precedence. Bound vs. Free If a variable x lies within the scope of either x or x, or it is the quantifier variable itself, it is considered bound…otherwise it’s free. Western Washington University

  11. Practice p(x,y)  (y q(y)  x r(x, y)) Which are bound? Which are free? What’s the scope of the bound ones? x y (p(y)  q(f(x), y)) Is this a expression a wff? Why or why not? Western Washington University

  12. Semantics Now that we have identified an alphabet and rules for what is a well-formed formula in the predicate calculus, we need to explain the meaning of a wff. In the propositional calculus, the meaning of a wff was its truth table. In the predicate calculus, the meaning of a wff is its true or false value, once we have provided an interpretation to its symbols. We can give an interpretation to the wff: x y s(x, y) where we let s(x, y) mean that y is the successor of x, and x and y take values from the set of natural numbers. Is this wff true or false? Western Washington University

  13. Interpretations An interpretation for a wff consists of: a nonempty set D, called the domain of the interpretation, combined with an assignment that associates the symbols of the wff to values in D according to the following: 1. Each predicate letter must be assigned some relation over D. A predicate with no arguments is a proposition and must be assigned a truth value 2. Each function letter must be assigned a function over D. 3. Each free variable must be assigned a value in D. All free occurrences of a variable x are assigned the same value in D. 4. Each constant must be assigned a value in D. All occurrences of the same constant are assigned the same value in D. Western Washington University

  14. Too Many Rules! Interpretations seem so arbitrary! Well they are…kind of. There can be many interpretations for a wff. To describe the meaning of an interpreted wff, we can write: W(x/t) where x is a free variable in W and t is a term. This is a binding. Let W = p(x)  x q(x, y) W(x/a) = p(a)  x q(x, y) Why? What does W(x/a)(y/b) look like? Western Washington University

  15. At Last…The Meaning The meaning of a wff: Suppose we have an interpretation with domain D for a wff. If the wff has no quantifiers, then its meaning is the truth value of the statement obtained from the wff by applying the interpretation. If the wff has quantifiers, then each quantified wff is evaluated as follows: x W is true if there is some d  D such that W(x/d) is true…o.w. x W is false. x W is true if W(x/d) is true for every d  D… o.w. x W is false. Western Washington University

  16. What is the Meaning? Let W = x y (p(y)  q(x, y)). Let q(x, y) denote the equality relation “x=y”. Round 1 Let D = {a}. Let p(a) = true. Round 2 Let D = {a, b}. Let p(a) = p(b) = false. Round 3 Let D = {a, b}. Let p(a) = true and p(b) = false. Western Washington University

  17. Models An interpretation is called a model for W if W is true with respect to the interpretation. Otherwise the interpretation is called a countermodel. In the previous exercise, identify the models and countermodels. Western Washington University

  18. Validity How many interpretations exist for each wff? Infinity…remember that they’re arbitrary! Do you think any wff can be true for every possible interpretation? This would be kind of like a tautology. Well, it’s actually possible. A wff is considered valid if it’s true for every possible interpretation. All its interpretations are models. Otherwise, it’s invalid. A wff is unsatisfiable if it’s false for all possible interpretations. All its interpretations are countermodels. Otherwise, it’s satisfiable. Western Washington University

  19. What are the possible combinations of these properties? valid and invalid valid and satisfiable valid and unsatisfiable invalid and satisfiable invalid and unsatisfiable satisfiable and unsatisfiable How do these relate to the properties of: tautology, contingency, and contradiction from the propositional calculus? Let’s show that the following wff is satisfiable and invalid: x y (p(y)  q(x, y)) Western Washington University

  20. Proving Validity It’s not quite as easy as creating a truth table! How about checking the infinite number of interpretations to show that each one is a model…NOT! The Indirect Approach Assume the wff is invalid, and try to obtain a contradiction. Assume the existence of a countermodel for the wff, and argue toward a contradiction. The Direct Approach If the wff has the form A  B, then assume there is an arbitrary interpretation for A  B that is a model for A. Show that the interpretation is a model for B. This proves that any interpretation for A  B is a model for A  B. Thus A  B is valid. Western Washington University

  21. Let’s start with an easy one, and let W denote: y x p(x, y)  x y p(x, y) Direct Approach: Let A be the wff y x p(x, y) , and let B be the wff x y p(x, y). Next, let M be an interpretation with domain D for W, such that M is a model for A. Indirect Approach: Let A be the wff y x p(x, y) , and let B be the wff x y p(x, y). Assume W is invalid. This means there is a countermodel with domain D that makes A true and B false. Not nearly as simple as creating a truth table! Western Washington University

  22. Transformations What should we do with free variables? They’d be much more manageable if they were quantified. We can apply either Universal or Existential quantification to each free variable…BUT… this does affect the meaning. p(x)  p(y) is satisfiable, but x y (p(x)   p(y)) is unsatisfiable p(x)  p(y) is invalid, x y (p(x)  p(y)) is valid. But, validity is preserved if we universally quantify the free variables. Unsatisfiability is preserved if we existentially quantify the free variables. Western Washington University

  23. Closure Universal Closure Suppose W is a wff with free variables x1, x2, …, xn. The universal closure of W is the wff: x1 x2 …xn W Existential Closure Suppose W is a wff with free variables x1, x2, …, xn. The existentialclosure of W is the wff: x1 x2 …xn W The Closure Properties 1. A wff is valid iff its universal closure is valid. 2. A wff is unsatisfiable iff its existential closure is unsatisfiable. Western Washington University

  24. The Validity Problem Given a wff, is it valid? In propositional calculus, we use Quine’s method or a truth table…so the problem is decidable. In predicate calculus, we don’t have any process that always works…so the problem is partially decidable. A decision problem is a problem that can be stated as a question with a yes or no answer. A decision problem is decidable if there is an algorithm that halts with an answer to the problem, otherwise is is undecidable. A decision problem is partially decidable if there is an algorithm that halts with the answer yes if there is a yes answer, otherwise it may not halt. Western Washington University

  25. Which algorithms do we use to solve the validity problem for the predicate calculus? Natural deduction (Later in this chapter) Resolution (Chapter 9) Western Washington University

  26. Equivalence Two wffs, A and B, are equivalent if they have the same truth value, meaning, with respect to every interpretation of both A and B. In this definition, all free variables, constants, functions, and predicates that occur in either A or B are interpreted wrt a single domain. A  B iff (A  B)  (B  A) is a valid wff. How can we use propositional equivalences to show predicate equivalences? Consider x p(x)  x p(x)  q(x) Which propositional wff does this look like? Western Washington University

  27. A wff, W, is an instance of a propositional wff, V, if W is obtained from V by replacing each propositional letter of V with a wff, where all occurrences of of each propositional letter in V are replaces by the same wff. Once we identify a propositional wff we can assign truth values to the propositional variables. Two predicate wffs are equivalent if they are instances of two equivalent propositional wffs, where both instances are obtained by using the same replacement of propositional letters How can we show that the following is an equivalence: x p(x)  q(x)  x p(x)  q(x) Western Washington University

  28. Proving Equivalences Wouldn’t it be great if all predicate wffs were instances of propositional wffs with known equivalences? Well, that’s not the case. Equivalences for Quantifiers: x y W  y x W x y W  y x W x W (x W) x (p(x)  q(x)) x p(x)  x q(x) How would we prove these if we were going to prove these? Try proving x(p(x)  q(x)) x p(x)  x q(x) using other equivalences. Western Washington University

  29. Restricted Equivalences Certain equivalences are true only when certain restrictions are applied. Renaming Rule If y does not occur in W(x), then the following equivalences hold: a. x W(x)  y W(y) b. x W(x)  y W(y) Use the renaming rule to make all the quantified variables distinct in the following wff: x y (p(x, y)  x q(x, y)  y r(x,y)) Western Washington University

  30. The following restricted equivalences are true when x does not occur in the wff C Disjunction x(C  A(x))  C  x A(x) x(C  A(x))  C  x A(x) Conjunction x(C  A(x))  C  x A(x) x(C  A(x))  C  x A(x) Implication x(C  A(x))  C  x A(x) x(C  A(x))  C  x A(x) x(A(x)  C)  x A(x)  C x(A(x)  C)  x A(x)  C Now we can do some proofs using these equivalences…oh joy! Western Washington University

  31. Normal Forms Similar to propositional calculus, we have normal forms to describe wffs in predicate calculus. A wff W is prenex normal form if all its quantifiers are on the left of the expression. It looks like this: Q1x1 … Qnxn M where each Qi is either  or , each xi is distinct, and M is a wff without quantifiers. Any wff is equivalent to some wff in prenex normal form. Here’s the algorithm: 1. Rename the variables of W so that no quantifiers use the same variable name and such that the quantified variable names are distinct from the free variable names. 2. Move quantifiers to the left by using equivalences. Western Washington University

  32. Try putting the following wffs into prenex normal form: p(x)  x q(x) A(x)  x (B(x)  y C(x,y)   y A(y)) Prenex Conjunctive Normal Form Q1x1 … Qnxn (C1  …  Ck) where each Ci is a disjunction or 1 or more literals Prenex Disjunctive Normal Form Q1x1 … Qnxn (D1  …  Dk) where each Di is a conjunction or 1 or more literals Algorithm: 1. Rename the variables. 2. Remove implications. 3. Move negations to the right to form literals. 4. Move quantifiers to the left. 5. Distribute  over or vice versa Western Washington University

  33. Put the following wff in both prenex CNF and prenex DNF: x (p(x)  q(x))  x p(x)  x q(x) Western Washington University

  34. Formalizing English Sentences How do we apply all that we’ve learned about predicate calculus to reasoning in the English language? It’s easiest to see if we start with an example: “Some computer science majors are geeks.” “No computer science major is a geek.” “All computer science majors are cool.” “Some computer science majors are smart.” “Not all computer science majors are smart.” “There is a stupid computer science major.” Observe: The universal quantifier quantifies a conditional The existential quantifier quantifies a conjunction Western Washington University

  35. Formal Proofs You expected this didn’t you? How do we reason formally about wffs in the predicate calculus? Inference rules! We can use all the inference rules from the propositional calculus…but we need more. It can be tough to reason in the predicate calculus when the wffs contain quantifiers. Our approach can be to remove the quantifiers, reason, then restore the quantifiers. RRR. But…this can change the meaning of the wff. Western Washington University

  36. Inference Rules for Quantifiers Universal Instantiation (UI) Existential Instantiation (EI) Universal Generalization (UG) Existential Generalization (EG) Universal Instantiation Can we infer W(y) from x W(x)? Can we infer y p(y,y) from x y p(x,y)? Try letting p(x,y) be the relation x < y. y is not free to replace x. If y does not occur in W(x), then y is free to replace x in W(x). A term t is free to replace x in W(x) if both W(t) and W(x) have the same bound variables. Western Washington University

  37. The UI Rule (formally stated) • x W(x)  W(t) if t is free to replace x in W(x) • Special Cases of UI Rule • x W(x)  W(x) • x W(x)  W(c) where c is any constant • Existential Instantiation (EI) • Can we infer W(c) from the statement x W(x)? • Sometimes…there are restrictions. • The EI Rule (formally stated) • x W(x)  W(c) if c is a new constant in the proof • Let’s try a proof using these new inference rules: • x W(x) x W(x) Western Washington University

  38. Universal Generalization (UG) We might want to generalize a wff by attaching a universal quantifier. For instance, we might want to infer x W(x) from W(x). Sometimes we can…sometimes we can’t. What if x is a free variable in a premise, ie. p(x)? Nope…we can’t generalize x p(x). Try it! A variable x in a wff is a flaggedvariable in W if x is free in W and either W is a premise or W is inferred by a wff containing x as a flagged variable. Can we prove the following? x (p(x)  q(x))  x (q(x)  r(x))  x (p(x)  r(x)) Are there any flagged variables? Western Washington University

  39. Do you see anything wrong with the following: 1. x y x < y P 2. y x < y 1, UI 3. x < c 2, EI 4. x x < c 3, UG A variable x is a subscripted variable of W if x is free in W and there is a constant c in W that was created by the EI rule, where c and x occur in the same predicate of W. Formal Statement of UG W(x)  x W(x) if x is not flagged and x is not subscripted Prove: x y W  y x W Western Washington University

  40. Existential Generalization Can we infer x W(x) from W(c) for a constant c? It seems logical, eh? There are actually some restrictions. 1. x y x < y P 2. y x < y 1, UI 3. x < c 2, EI 4. x x < x EG, huh? The Backwards Check To infer x W(x) from W(t) for a term t, the following relationship must hold: W(t) = W(x)(x/t) W(t) must equal the wff obtained from W(x) by replacing all occurrences of x by t. W(c) = x < c … this is line 3 above W(x)(x/c) = c < c …this is line 4 above Western Washington University

  41. Another Restriction…Free to Replace To infer x W(x) from W(t), the term t must be free to replace x in W(x). 1. y y < f(y) P 2. x y y < x 1, EG????? What happened to the other bound occurrence of y? oops. EG Formalized W(t)  x W(x) if a. W(t) = W(x)(x/t) b. t is free to replace x in W(x) There is a special case: W(x)  x W(x) Western Washington University

  42. Applying the New Rules Now that we have some more rules, we can prove many more arguments: “All computer science majors are people. Some computer science majors are logical thinkers. Therefore some people are logical thinkers.” Western Washington University

More Related