38
CSCE 222 Discrete Structures for Computing Review for Exam 1 Dr. Hyunyoung Lee 1

CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

CSCE 222 Discrete Structures for Computing

!

Review for Exam 1

Dr. Hyunyoung Lee !!!

�1

Page 2: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Topics

Propositional Logic (Sections 1.1, 1.2 and 1.3)

Predicate Logic (Sections 1.4 and 1.5)

Rules of Inferences and Proofs (Sections 1.6, 1.7 and 1.8)

Sets (Sections 2.1, 2.2, and 2.5)

Functions (Section 2.3)

Asymptotic Notations (Section 3.2)

�2

Page 3: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Strategy for Exam Preparation

- Start studying now (unless have already started)!

- Study class notes and make sure you know your definitions!

- Review your quizzes and in-class exercises

- Review your homework

- Study the examples in the textbook

- Do odd numbered exercises in the textbook

�3

Page 4: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Logic and Proofs

�4

Page 5: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Logical Connectives - Summary

Let B={t,f}. Assign to each connective a function M: B->B

that determines its semantics.

!

!

!

!

!

4 The Semantics of Propositional Logic

Let B = {t, f} denote the set of truth values, where t and f represent trueand false, respectively. We associate to the logical connective ¬ the functionM¬ : B⌅ B given by

P M¬(P )f tt f

Thus, M¬(P ) is true if and only if P is false. This justifies the name negationfor this connective. The graph of the function M¬ given above is called thetruth table of the negation connective. Similarly, we associate to a connectiveX in the set {⌥,�,⇥,⌅,⇧} a binary function MX : B � B ⌅ B. The truthtables of these connectives are as follows:

P Q M⇧(P, Q) M⌃(P,Q) M�(P, Q) M⇥(P, Q) M⇤(P, Q)f f f f f t tf t f t t t ft f f t t f ft t t t f t t

You should very carefully inspect this table! It is critical that you memorizeand fully understand the meaning of each connective.

The semantics of the language Prop is given by assigning truth values toeach proposition in Prop. Clearly, an arbitrary assignment of truth values isnot interesting, since we would like everything to be consistent with the meaningof the connectives that we have just learned. For example, if the propositions aand b have been assigned the value t, then it is reasonable to insist that a ⌥ bbe assigned the value t as well. Therefore, we will introduce the concept of avaluation, which models the semantics of Prop in an appropriate way.

A valuation v : Prop⌅ B is a function that assigns a truth value to eachproposition in Prop such thatV1. vJ¬aK = M¬(vJaK)V2. vJ(a ⌥ b)K = M⇧(vJaK , vJbK)V3. vJ(a � b)K = M⌃(vJaK , vJbK)V4. vJ(a⇥ b)K = M�(vJaK , vJbK)V5. vJ(a⌅ b)K = M⇥(vJaK , vJbK)V6. vJ(a⇧ b)K = M⇤(vJaK , vJbK)holds for all propositions a and b in Prop. The properties V1–V6 ensurethat the valuation respects the meaning of the connectives. We can restrict avaluation v to a subset of the set of proposition. If A and B are subsets ofProp such that A ⇤ B, and vA : A ⌅ B and vB : B ⌅ B are valuations, thenvB is called an extension of the valuation vA if and only if vB coincides withvA when restricted to A.

The consistency conditions V1-V6 are quite stringent, as the next theoremshows.

5

4 The Semantics of Propositional Logic

Let B = {t, f} denote the set of truth values, where t and f represent trueand false, respectively. We associate to the logical connective ¬ the functionM¬ : B⌅ B given by

P M¬(P )f tt f

Thus, M¬(P ) is true if and only if P is false. This justifies the name negationfor this connective. The graph of the function M¬ given above is called thetruth table of the negation connective. Similarly, we associate to a connectiveX in the set {⌥,�,⇥,⌅,⇧} a binary function MX : B � B ⌅ B. The truthtables of these connectives are as follows:

P Q M⇧(P, Q) M⌃(P,Q) M�(P, Q) M⇥(P, Q) M⇤(P, Q)f f f f f t tf t f t t t ft f f t t f ft t t t f t t

You should very carefully inspect this table! It is critical that you memorizeand fully understand the meaning of each connective.

The semantics of the language Prop is given by assigning truth values toeach proposition in Prop. Clearly, an arbitrary assignment of truth values isnot interesting, since we would like everything to be consistent with the meaningof the connectives that we have just learned. For example, if the propositions aand b have been assigned the value t, then it is reasonable to insist that a ⌥ bbe assigned the value t as well. Therefore, we will introduce the concept of avaluation, which models the semantics of Prop in an appropriate way.

A valuation v : Prop⌅ B is a function that assigns a truth value to eachproposition in Prop such thatV1. vJ¬aK = M¬(vJaK)V2. vJ(a ⌥ b)K = M⇧(vJaK , vJbK)V3. vJ(a � b)K = M⌃(vJaK , vJbK)V4. vJ(a⇥ b)K = M�(vJaK , vJbK)V5. vJ(a⌅ b)K = M⇥(vJaK , vJbK)V6. vJ(a⇧ b)K = M⇤(vJaK , vJbK)holds for all propositions a and b in Prop. The properties V1–V6 ensurethat the valuation respects the meaning of the connectives. We can restrict avaluation v to a subset of the set of proposition. If A and B are subsets ofProp such that A ⇤ B, and vA : A ⌅ B and vB : B ⌅ B are valuations, thenvB is called an extension of the valuation vA if and only if vB coincides withvA when restricted to A.

The consistency conditions V1-V6 are quite stringent, as the next theoremshows.

5

�5

Page 6: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Alternative Summary

�6

Informally, we can summarize the meaning of the connectives in words as follows:

1. The and connective (a ⋀ b) is true if and only if both a and b are true.

2. The or connective (a ⋁ b) is true if and only if at least one of a, b is true.

3. The exclusive or (a ⊕ b) is true if and only if precisely one of a, b is true.

4. The implication (a → b) is false if and only if the premise a is true and the conclusion b is false.

5. The biconditional (a ↔ b) is true if and only if the truth values of a and b are the same.

Page 7: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Conditional

Perhaps the most important logical connective is the conditional, also known as implication:

p -> q

The statement asserts that q holds on the condition that p holds. We call p the hypothesis or premise, and q the conclusion or consequence. Typical usage in proofs:

“If p, then q”; “p implies q”; “q only if p”; “q when p”; “q follows from p”

“p is sufficient for q”; “a sufficient condition for q is p”; “a necessary condition for p is q”; “q is necessary for p”

�7

Page 8: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Logical Equivalence of propositions

Two propositions p and q are called logically equivalent if and only if v[[p]] = v[[q]] holds for all valuations v on Prop. !

In other words, two propositions p and q are logically equivalent if and only if p ↔ q is a tautology.

We write p ≡ q if and only if p and q are logically equivalent. We have shown that (¬p⋁q) ≡ (p→q). In general, we can use truth tables or logical derivations to establish logical equivalences.

�8

Page 9: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Tautologies

A proposition p is called a tautology if and only if v[[p]] = t holds for all valuations v on Prop. In other words, p is a tautology if and only if in a truth table it always evaluates to true regardless of the assignment of truth values to its variables.

Example:

!

!

p ¬p p⋁¬pF T TT F T

�9

Page 10: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Predicates

A function P from a set D to the set Prop of propositions is called a predicate. The set D is called the domain of P.

For example, E: Z->{t,f} with E(x)= x is an even integer; E(6) is true.

O: Z->{t,f} with O(x)= x is an odd integer; O(6) is false.

�10

Page 11: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Universal Quantifier

Let P be a predicate with domain D.

The statement “P(x) holds true for all x in D” can be written shortly as ∀xP(x).

Suppose that P(x) is a predicate over a finite domain,

say D={1,2,3}. Then ∀xP(x) is equivalent to P(1)⋀P(2)⋀P(3).

!

Put differently, ∀xP(x) is false if and only if P(x) is false for some x in D.

�11

Page 12: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Existential Quantifier

The statement P(x) holds for some x in the domain D can be written as ∃x P(x)

!

Example: ∃x (x>0 ⋀ x2 = 2)

is true if the domain is the real numbers

but false if the domain is the rational numbers.

�12

Page 13: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Logical Equivalence - involving quantifiers and predicates

Two statements involving quantifiers and predicates are logically equivalent if and only if they have the same truth values no matter which predicates are substituted into these statements and which domain is used.

We write A ≡ B for logically equivalent A and B.

You use logical equivalences to derive more convenient forms statements.

Example: De Morgan’s laws.

�13

Page 14: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

De Morgan’s Laws

¬⇥xP (x) � ⇤x¬P (x)

¬⇤xP (x) � ⇥x¬P (x)

¬(p ⇥ q) � ¬p ⇤ ¬q

¬(p ⇤ q) � ¬p ⇥ ¬q

�14

Page 15: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Valid Arguments

An argument in propositional logic is a sequence of propositions that end with a proposition called conclusion. The argument is called valid if the conclusion follows from the preceding statements (called premises).

!

In other words, in a valid argument it is impossible that all premises are true but the conclusion is false.

�15

Page 16: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Modus Ponens

The tautology (p ⋀ (p->q)) -> q is the basis for the rule of inference called “modus ponens”.

p

p -> q

-------

∴ q

�16

Page 17: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Modus Tollens

¬q

p -> q

------

∴¬ p

!

“The University will not close on Wednesday.”

“If it snows on Wednesday, then the University will close.”

Therefore, “It will not snow on Wednesday”

�17

Page 18: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Simplification

p ⋀ q

------

p

!

!

�18

Page 19: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Example Formal Argument

¬p ⇥ qr � p¬r � ss � t

) t

�19

1) ¬p ∧ q

2) ¬p 3) r → p 4) ¬r 5) ¬r → s 6) s 7) s → t 8) t

Argument Hypothesis Simplification of 1) Hypothesis Modus tollens using 2) and 3) Hypothesis Modus ponens using 4) and 5) Hypothesis Modus ponens using 6) and 7)

Page 20: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Proofs

Review carefully the two styles of proof:

- Direct proof

- Proof by contradiction

In addition, we discussed some variations of these basic styles of proofs such as proof by contrapositive which is a variation of direct proof. Review them also.

�20

Page 21: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Sets and Functions

�21

Page 22: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Set Builder Notation

The set builder notation describes all elements as a subset of a set having a certain property.

Q = { p/q ∈ R | p ∈ Z, q ∈ Z, and q≠ 0 }

[a,b] = { x ∈ R | a <= x <= b }

[a,b) = { x ∈ R | a <= x < b }

(a,b] = { x ∈ R | a < x <= b }

(a,b) = { x ∈ R | a < x < b }

�22

Page 23: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Equality of Sets

Two sets A and B are called equal if and only if they have the same elements.

A = B if and only if ∀x(x ∈ A ↔ x ∈ B)

!

[To prove A=B, it is sufficient to show that both ∀x(x ∈ A → x ∈ B) and ∀x(x ∈ B → x ∈ A) hold. Why? ]

�23

Page 24: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Subset

A set A is a subset of B, written A ⊆ B, if and only if every element of A is an element of B.

!

Thus, A ⊆ B if and only if ∀x(x ∈ A → x ∈ B)

�24

Page 25: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Cardinality of a Set

Let S be a set with a finite number of elements. We say that the set has cardinality n if and only if S contains n elements. We write |S| to denote the cardinality of the set.

!

For example, |∅| = 0.

!

�25

Page 26: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Power Sets

Given a set S, the power set P(S) of S is the set of all subsets of S.

Example: P( {1} ) = { ∅, {1} }

P( {1,2} ) = { ∅, {1}, {2}, {1,2} }

P(∅) = { ∅ } since every set contains the empty set as a subset, even the empty set.

P({∅}) = {∅, {∅}}.

�26

Page 27: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Cartesian Products

Let A and B be sets. The Cartesian product of A and B, denote AxB, is the set of all pairs (a,b) with a ∈A and b∈B.

!

AxB = { (a,b) | a ∈A ⋀ b∈B }

�27

Page 28: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Set Operations

Given two sets A and B. You should know

- the union of A and B

- the intersection of A and B

- the set difference between A and B

- the complement of A

Generalized union

Generalized intersection

�28

Page 29: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

De Morgan’s Laws

A \B = A [B

Proof :

A \B = {x | x 62 A \B} by definition of complement

= {x | ¬(x 2 A \B)}= {x | ¬(x 2 A ^ x 2 B)} by definition of intersection

= {x | ¬(x 2 A) _ ¬(x 2 B)} de Morgan’s law from logic

= {x | (x 62 A) _ (x 62 B)} by definition of 62= {x | x 2 A _ x 2 B} by definition of complement

= {x | x 2 A [B} by definition of union

= A [B

�29

Page 30: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Function Terminology

Let f: A -> B be a function.

We call

- A the domain of f and

- B the codomain of f.

The range of f is the set

f(A) = { f(a) | a in A }

�30

Page 31: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Injective Functions

A function f: A -> B is called injective or one-to-one if and only if f(a)=f(b) implies that a=b.

!

In other words, f is injective if and only if different arguments have different values. [Contrapositive!]

�31

Page 32: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Surjective Functions

A function f: A -> B is called surjective or onto if and only if f(A)=B.

!

In other words, f is surjective if and only if for each element b in the codomain B there exists an element a in A such that f(a)=b.

�32

Page 33: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Bijections

A function is called a bijection or one-to-one correspondence if and only if it is injective and surjective.

!

�33

Page 34: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Floor Function

The floor function ⎣⎦: R -> Z assigns to a real

number x the largest integer <= x.

⎣3.2⎦= 3

⎣-3.2⎦= -4

⎣3.99⎦= 3

�34

Page 35: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Ceiling Function

The ceiling function ⎡⎤: R -> Z assigns to a real

number x the smallest integer >= x.

⎡3.2⎤= 4

⎡-3.2⎤= -3

⎡0.5⎤= 1

�35

Page 36: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Basic Facts

We have⎣x⎦= n if and only if n <= x < n+1.

We have⎡x⎤=n if and only if n-1< x <= n.

We have⎣x⎦= n if and only if x-1 < n <= x.

We have⎡x⎤=n if and only if x<= n < x+1.

�36

Page 37: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Example

�37

Prove or disprove:

bp

bxcc = bpxc

Page 38: CSCE 222 Discrete Structures for Computingfaculty.cse.tamu.edu/hlee/csce222/review1.pdf · Logical Connectives - Summary Let B={t,f}. Assign to each connective a function M: B->B

Example (Cont.)

�38

Let m = bpbxcc

Hence, m pbxc < m+ 1

Thus, m2 bxc < (m+ 1)2

It follows that m2 x < (m+ 1)2

Therefore, m px < m+ 1

Thus, we can conclude that m = bpxc

This proves our claim.