Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 1.2: Equivalences, and Predicate Logic CS 250, Discrete Structures, Fall 2015 Nitesh Saxena Adopted from previous lectures by Cinda Heeren, Zeph.

Similar presentations


Presentation on theme: "Lecture 1.2: Equivalences, and Predicate Logic CS 250, Discrete Structures, Fall 2015 Nitesh Saxena Adopted from previous lectures by Cinda Heeren, Zeph."— Presentation transcript:

1 Lecture 1.2: Equivalences, and Predicate Logic CS 250, Discrete Structures, Fall 2015 Nitesh Saxena Adopted from previous lectures by Cinda Heeren, Zeph Grunschlag

2 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic2 Course Admin Everyone receiving my emails? Lecture slides worked okay? Everyone knows how to access the course web page? TA/Grader office hours Kamrul Islam: kamrul@uab.edu, PhD studentkamrul@uab.edu Office location: Ugrad lab (CH 154) Office Hours: T 11am – 1pm Posting draft slides in advance Please make sure this doesn’t undermine attendance

3 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic3 Outline Equivalences (contd.) Predicate Logic (Predicates and Quantifiers)

4 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic4 Propositional Logic – Logical Equivalence p is logically equivalent to q if their truth tables are the same. We write p  q. In other words, p is logically equivalent to q if p  q is True. There are some famous laws of equivalence, which we review next. Very useful in simplifying complex composite propositions

5 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic5 Laws of Logical Equivalences Identity laws Like adding 0 Domination laws Like multiplying by 0 Idempotent laws Delete redundancies Double negation “I don’t like you, not” Commutativity Like “x+y = y+x” Associativity Like “(x+y)+z = y+(x+z)” Distributivity Like “(x+y)z = xz+yz” De Morgan Rosen; page 27: Table 6

6 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic6 De Morgan’s Law - generalized De Morgan’s law allow for simplification of negations of complex expressions Conjunctional negation:  (p 1  p 2  …  p n )  (  p 1  p 2  …  p n ) “It’s not the case that all are true iff one is false.” Disjunctional negation:  (p 1  p 2  …  p n )  (  p 1  p 2  …  p n ) “It’s not the case that one is true iff all are false.” Let us do a quick (black board) proof to show that the law holds

7 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic7 Another equivalence example  ( p   q)  q   p  q if NOT (blue AND NOT red) OR red then…  ( p   q)  q     (  p   q)  q (  p  q)  q  p  (q  q)  p  q DeMorgan’s Double negation Associativity Idempotent

8 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic8 Yet another example Show that [p  (p  q)]  q is a tautology. We use  to show that [p  (p  q)]  q  T. substitution for  [p  (p  q)]  q  [(p   p)  (p  q)]  q  [p  (  p  q)]  q  [ F  (p  q)]  q  (p  q)  q   (p  q)  q  (  p   q)  q   p  (  q  q )   p  T  T T distributive uniqueness identity substitution for  De Morgan’s associative uniqueness domination

9 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic9 Predicate Logic – why do we need it? Proposition, YES or NO? 3 + 2 = 5 X + 2 = 5 X + 2 <= 5 for any choice of X in {1, 2, 3} X + 2 = 5 for some X in {1, 2, 3} Propositional logic can not handle statements such as the last two. Predicate logic can. YES NOYES

10 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic10 Predicate Logic Example Alicia eats pizza at least once a week. Garrett eats pizza at least once a week. Allison eats pizza at least once a week. Gregg eats pizza at least once a week. Ryan eats pizza at least once a week. Meera eats pizza at least once a week. Ariel eats pizza at least once a week. …

11 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic11 Predicates -- Definition Alicia eats pizza at least once a week. Define: P(x) = “x eats pizza at least once a week.” Universe of Discourse - x is a student in cs250 A predicate, or propositional function, is a function that takes some variable(s) as arguments and returns True or False. Note that P(x) is not a proposition, P(Ariel) is. …

12 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic12 Predicates with multiple variables Suppose Q(x,y) = “x > y” Proposition, YES or NO? Q(x,y) Q(3,4) Q(x,9) NOYESNO Predicate, YES or NO? Q(x,y) Q(3,4) Q(x,9) YESNOYES

13 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic13 The Universal Quantifier Another way of changing a predicate into a proposition. Suppose P(x) is a predicate on some universe of discourse. The universal quantifier of P(x) is the proposition: “P(x) is true for all x in the universe of discourse.” We write it  x P(x), and say “for all x, P(x)”  x P(x) is TRUE if P(x) is true for every single x.  x P(x) is FALSE if there is an x for which P(x) is false. Ex: B(x) = “x is carrying a backpack,” x is a set of cs250 students.  x B(x)?

14 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic14 The Universal Quantifier - example B(x) = “x is allowed to drive a car” L(x) = “x is at least 16 years old.” Are either of these propositions true? a)  x (L(x)  B(x)) b)  x B(x) A: only a is true B: only b is true C: both are true D: neither is true Universe of discourse is people in this room.

15 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic15 The Existential Quantifier Another way of changing a predicate into a proposition. Suppose P(x) is a predicate on some universe of discourse. The existential quantifier of P(x) is the proposition: “P(x) is true for some x in the universe of discourse.” We write it  x P(x), and say “for some x, P(x)”  x P(x) is TRUE if there is an x for which P(x) is true.  x P(x) is FALSE if P(x) is false for every single x. Ex. C(x) = “x has black hair,” x is a set of cs 250 students.  x C(x)?

16 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic16 The Existential Quantifier - example B(x) = “x is wearing sneakers.” L(x) = “x is at least 21 years old.” Y(x)= “x is less than 24 years old.” Are either of these propositions true? a)  x B(x) b)  x (Y(x)  L(x)) A: only a is true B: only b is true C: both are true D: neither is true Universe of discourse is people in this room.

17 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic17 Predicates – more examples Universe of discourse is all creatures. L(x) = “x is a lion.” F(x) = “x is fierce.” C(x) = “x drinks coffee.” All lions are fierce. Some lions don’t drink coffee. Some fierce creatures don’t drink coffee.  x (L(x)  F(x))  x (L(x)   C(x))  x (F(x)   C(x))

18 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic18 Predicates – some more example Universe of discourse is all birds. B(x) = “x is a hummingbird.” L(x) = “x is a large bird.” H(x) = “x lives on honey.” R(x) = “x is richly colored.” All hummingbirds are richly colored. No large birds live on honey. Birds that do not live on honey are dully colored.  x (B(x)  R(x))  x  (L(x)  H(x))  x (  H(x)   R(x))

19 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic19 Quantifier Negation No large birds live on honey.  x P(x) means “P(x) is true for some x.” What about  x P(x) ? Not [“P(x) is true for some x.”] “P(x) is not true for all x.”  x  P(x) So,  x P(x) is the same as  x  P(x).  x (L(x)  H(x))  x  (L(x)  H(x))

20 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic20 Quantifier Negation Not all large birds live on honey.  x P(x) means “P(x) is true for every x.” What about  x P(x) ? Not [“P(x) is true for every x.”] “There is an x for which P(x) is not true.”  x  P(x) So,  x P(x) is the same as  x  P(x).  x (L(x)  H(x))  x  (L(x)  H(x))

21 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic21 Quantifier Negation So,  x P(x) is the same as  x  P(x). So,  x P(x) is the same as  x  P(x). General rule: to negate a quantifier, move negation to the right, changing quantifiers as you go.

22 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic22 Some quick questions p  T =? (what law?) p  T =? (what law?)  (p   q) = ? (what law?) P(x) = “x >3” P(x) is a proposition: yes or no? P(3) is a proposition: yes or no? If yes, what is its value? P(4) is True or False? If the universe of discourse is all natural numbers, what is the value of  x P(x)  x P(x)

23 1/24/2016 Lecture 1.2 - Equivalence, and Predicate Logic23 Today’s Reading and Next Lecture Rosen 1.3 and 1.4 Please start solving the exercises at the end of each chapter section. They are fun. Please read 1.4 and 1.5 in preparation for the next lecture


Download ppt "Lecture 1.2: Equivalences, and Predicate Logic CS 250, Discrete Structures, Fall 2015 Nitesh Saxena Adopted from previous lectures by Cinda Heeren, Zeph."

Similar presentations


Ads by Google