Ch1.1

43
Discrete Mathematics 1 Kemal Akkaya DISCRETE MATHEMATICS Lecture 1 Dr. Kemal Akkaya Department of Computer Science

Transcript of Ch1.1

Page 1: Ch1.1

Discrete Mathematics 1Kemal Akkaya

DISCRETE MATHEMATICSLecture 1

Dr. Kemal Akkaya

Department of Computer Science

Page 2: Ch1.1

Discrete Mathematics 2Kemal Akkaya

Course Organization

Instructor: Dr. Kemal Akkaya Office: FANER 2138 Office Phone: 453-6054 E-Mail Address: kemal at cs dot siu dot edu Office Hours: MWF: 10-11am or by appointment 

TA: Mr. Enes Yildiz Office: FANER 3129 Office Phone:453-6036

E-Mail Address: eyildiz at siu dot edu Office Hours: TR:10-11am

Page 3: Ch1.1

Discrete Mathematics 3Kemal Akkaya

Textbook

Discrete Mathematics and Its Applications by Kenneth H. Rosen. 6th edition, McGraw Hill Publisher.

Class Hours: MWF 11-11:50am PARK 107Webpage: www.cs.siu.edu/~cs215The course slides are adapted from publisher’s

(Rosen) website. I thank the author and publisher.

Page 4: Ch1.1

Discrete Mathematics 4Kemal Akkaya

So, What’s this class about?

What are “discrete structures” anyway? “Discrete” ( “discreet”!) - Composed of

distinct, separable parts. (Opposite of continuous.) discrete:continuous :: digital:analog

“Structures” - Objects built up from simpler objects according to some definite pattern.

“Discrete Mathematics” - The study of discrete, mathematical objects and structures.

Page 5: Ch1.1

Discrete Mathematics 5Kemal Akkaya

Some Discrete Structures

Propositions Predicates Proofs Sets Functions Orders of Growth Algorithms Integers Summations

Sequences Strings Permutations Combinations Relations Graphs Trees Logic Circuits Automata

Page 6: Ch1.1

Discrete Mathematics 6Kemal Akkaya

Relationships Between Structures

“→” :≝ “Can be defined in terms of”

Sets

Sequences

n-tuples

MatricesNaturalnumbers

IntegersRelations

Functions

GraphsReal numbers

Complex numbers

Strings

Propositions

ProofsTreesOperators

Programs

Infiniteordinals Vectors

Groups

Bits

Not all possibilitiesare shown here.

Page 7: Ch1.1

Discrete Mathematics 7Kemal Akkaya

Some Notations We’ll Learn

)(deg][)|(),,;(

][)(

) (mod modlcmgcd,/|max min,,,

)(:

||

)}(|{,,},,{)(

)(

1

][T0

1

1

1

1

vaRFEpnnnCr

naaa

mbabaO

aaxgfxfBAf

AABASTS

SxxPxaaxPx

xPxqpqpqpqpp

Rm

nijbk

n

ii

S

n

ii

n

ABAA

RNZ

Ο

Page 8: Ch1.1

Discrete Mathematics 8Kemal Akkaya

Why Study Discrete Math?

The basis of all of digital information processing is: Discrete manipulations of discrete structures represented in memory.

It’s the basic language and conceptual foundation for all of computer science.

Discrete math concepts are also widely used throughout math, science, engineering, economics, biology, etc., …

A generally useful tool for rational thought!

Page 9: Ch1.1

Discrete Mathematics 9Kemal Akkaya

Uses for Discrete Math in Computer Science

Advanced algorithms & data structures

Programming language compilers & interpreters.

Computer networksOperating systemsComputer

architecture

Database management systems

CryptographyError correction codesGraphics & animation

algorithms, game engines, etc.…

i.e., the whole field!

Page 10: Ch1.1

Discrete Mathematics 10Kemal Akkaya

Course Objectives

Upon completion of this course, the student should be able to: Check validity of simple logical arguments (proofs). Check the correctness of simple algorithms. Creatively construct simple instances of valid logical

arguments and correct algorithms. Describe the definitions and properties of a variety

of specific types of discrete structures. Correctly read, represent and analyze various types

of discrete structures using standard notations.

Page 11: Ch1.1

Discrete Mathematics 11Kemal Akkaya

Module #1: Foundations of Logic

Mathematical Logic is a tool for working with elaborate compound statements. It includes:

A formal language for expressing them.A concise notation for writing them.A methodology for objectively reasoning about

their truth or falsity.

It is the foundation for expressing formal proofs in all branches of mathematics.

Page 12: Ch1.1

Discrete Mathematics 12Kemal Akkaya

Foundations of Logic: Overview

Propositional logic:Basic definitions. Equivalence rules & derivations.

Predicate logic Predicates.

Quantified predicate expressions.Equivalences & derivations.

Page 13: Ch1.1

Discrete Mathematics 13Kemal Akkaya

Propositional Logic (§1.1)

Propositional Logic is the logic of compound statements built from simpler statements using so-called Boolean connectives.

Some applications in computer science:Design of digital electronic circuits.Expressing conditions in programs.Queries to databases & search engines.

Page 14: Ch1.1

Discrete Mathematics 14Kemal Akkaya

Definition of a Proposition

Definition: A proposition (denoted p, q, r, …) is simply: a statement (i.e., a declarative sentence)

with some definite meaning, (not vague or ambiguous) having a truth value that’s either true (T) or false (F)

it is never both, neither, or somewhere “in between!”However, you might not know the actual truth value, and, the truth value might depend on the situation or

context. Later, we will study probability theory, in which we assign

degrees of certainty (“between” T and F) to propositions. But for now: think True/False only!

Page 15: Ch1.1

Discrete Mathematics 15Kemal Akkaya

Examples of Propositions

“It is raining.” (In a given situation.) “Beijing is the capital of China.” “1 + 2 = 3”

But, the following are NOT propositions: “Who’s there?” (interrogative, question) “La la la la la.” (meaningless interjection) “Just do it!” (imperative, command) “Yeah, I sorta dunno, whatever...” (vague) “1 + 2” (expression with no truth value)

Page 16: Ch1.1

Discrete Mathematics 16Kemal Akkaya

An operator or connective combines one or more operand expressions into a larger expression. (e.g., “+” in numeric exprs.)

Unary operators take 1 operand (e.g., −3); binary operators take 2 operands (e.g., 3 4).

Propositional or Boolean operators operate on propositions (or their truth values) instead of on numbers.

Operators / Connectives

Page 17: Ch1.1

Discrete Mathematics 17Kemal Akkaya

Some Popular Boolean Operators

Formal Name Nickname Parity Symbol

Negation operator NOT Unary ¬

Conjunction operator AND Binary

Disjunction operator OR Binary

Exclusive-OR operator

XOR Binary

Implication operator IMPLIES Binary

Biconditional operator IFF Binary ↔

Page 18: Ch1.1

Discrete Mathematics 18Kemal Akkaya

The Negation Operator

The unary negation operator “¬” (NOT) transforms a prop. into its logical negation.

E.g. If p = “I have brown hair.”

then ¬p = “I do not have brown hair.”

The truth table for NOT:p p T F F T

T :≡ True; F :≡ False“:≡” means “is defined as”

Operandcolumn

Resultcolumn

Page 19: Ch1.1

Discrete Mathematics 19Kemal Akkaya

The Conjunction Operator

The binary conjunction operator “” (AND) combines two propositions to form their logical conjunction.

E.g. p=“I will have salad for lunch.” and q=“I will have steak for dinner.”, then pq=“I will have salad for lunch and I will have steak for dinner.”

Remember: “” points up like an “A”, and it means “” points up like an “A”, and it means “NDND””

NDND

Page 20: Ch1.1

Discrete Mathematics 20Kemal Akkaya

Note that aconjunctionp1 p2 … pn

of n propositionswill have 2n rowsin its truth table.

Also: ¬ and operations together are sufficient to express any Boolean truth table!

Conjunction Truth Table

Operand columns

p q pq

F F F

F T F

T F F

T T T

Page 21: Ch1.1

Discrete Mathematics 21Kemal Akkaya

The Disjunction Operator

The binary disjunction operator “” (OR) combines two propositions to form their logical disjunction.

p=“My car has a bad engine.”

q=“My car has a bad transmission.”

pq=“Either my car has a bad engine, or my car has a bad transmission.”

Meaning is like “and/or” in English.

Page 22: Ch1.1

Discrete Mathematics 22Kemal Akkaya

Note that pq meansthat p is true, or q istrue, or both are true!

So, this operation isalso called inclusive or,because it includes thepossibility that both p and q are true.

Disjunction Truth Table

p q p q

F F F

F T T

T F T

T T T

Notedifferencefrom AND

Page 23: Ch1.1

Discrete Mathematics 23Kemal Akkaya

A Simple Exercise

Let p = “It rained last night”, q = “The sprinklers came on last night,” r = “The lawn was wet this morning.”

Translate each of the following into English:

¬p =

r ¬p =

¬ r p q =

“It didn’t rain last night.”

“The lawn was wet this morning, and it didn’t rain last night.”

“Either the lawn wasn’t wet this morning, or it rained last night, or the sprinklers came on last night.”

Page 24: Ch1.1

Discrete Mathematics 24Kemal Akkaya

The Exclusive Or Operator

The binary exclusive-or operator “” (XOR) combines two propositions to form their logical “exclusive or” (exjunction?).

p = “I will earn an A in this course,”

q = “I will drop this course,”

p q = “I will either earn an A in this course, or I will drop it (but not both!)”

Page 25: Ch1.1

Discrete Mathematics 25Kemal Akkaya

Note that pq meansthat p is true, or q istrue, but not both!

This operation iscalled exclusive or,because it excludes thepossibility that both p and q are true.

Exclusive-Or Truth Table

p q pqF F FF T TT F TT T F Note

differencefrom OR.

Page 26: Ch1.1

Discrete Mathematics 26Kemal Akkaya

Note that English “or” can be ambiguous regarding the “both” case!

“Pat is a singer orPat is a writer.” -

“Pat has got an A orPat has got a B.” -

Need context to disambiguate the meaning!

For this class, assume “or” means inclusive.

Natural Language is Ambiguous

p q p "or" qF F FF T TT F TT T F

Page 27: Ch1.1

Discrete Mathematics 27Kemal Akkaya

The Implication Operator

The implication p q states that p implies q.

e.g., let p = “You study hard.” q = “You will get a good grade.”

p q = “If you study hard, then you will get a good grade.” (else, it could go either way)

Hypothesis Conclusion

Page 28: Ch1.1

Discrete Mathematics 28Kemal Akkaya

Implication Truth Table

p q is false only whenp is true but q is not true.

p q does not saythat p causes q!

p q does not requirethat p or q are ever true!

E.g. “(1=0) pigs can fly” is TRUE!

p q p qF F TF T TT F FT T T

The onlyFalsecase!

Page 29: Ch1.1

Discrete Mathematics 29Kemal Akkaya

Why does this seem wrong?

Consider a sentence like, “If I wear a red shirt tomorrow, then it will

snow!”In logic, we consider the sentence True

as long as either I don’t wear a red shirt, or it snowed.

But, in normal English conversation, if I were to make this claim, you would think that I was lying.

Page 30: Ch1.1

Discrete Mathematics 30Kemal Akkaya

Resolving the Discrepancy

In English, a sentence “if p then q” usually really implicitly means something like, “In all possible situations, p implies q.” If p is true then q will be true. If p is not true then q will not be true. There is a relationship between, hypothesis and conclusion.

This is not the case in logic. pq means ¬p V q

Ex.: “If you get 100 on the final, you’ll get an A” If you get 100, you would expect to receive an A (11=1) If not, you can still get an A depending on other factors (01=1) However, if you get 100 but do not have an A, then you’ll feel

cheated (10 = 0)

Page 31: Ch1.1

Discrete Mathematics 31Kemal Akkaya

Examples of Implications

“If this lecture ever ends, then the sun will rise tomorrow.” True or False?

“If Tuesday is a day of the week, then I am a penguin.” True or False?

“If 1+1=6, then Bush is president.” True or False?

“If the moon is made of green cheese, then I am richer than Bill Gates.” True or False?

Page 32: Ch1.1

Discrete Mathematics 32Kemal Akkaya

English Phrases Meaning p q

“p implies q” “if p, then q” “if p, q” “when p, q” “whenever p, q” “q if p” “q when p” “q whenever p”

“p only if q” “p is sufficient for q” “q is necessary for p” “q follows from p” “q is implied by p”We will see some

equivalent logic expressions later.

Page 33: Ch1.1

Discrete Mathematics 33Kemal Akkaya

Converse, Inverse, Contrapositive

Some terminology, for an implication p q:Its converse is: q p.Its inverse is: ¬p ¬q.Its contrapositive: ¬q ¬ p.One of these three has the same meaning

(same truth table) as p q. Can you figure out which?

Page 34: Ch1.1

Discrete Mathematics 34Kemal Akkaya

How do we know for sure?

Proving the equivalence of p q and its contrapositive using truth tables:

p q q p p q q pF F T T T TF T F T T TT F T F F FT T F F T T

Page 35: Ch1.1

Discrete Mathematics 35Kemal Akkaya

The biconditional operator

The biconditional p q states that p is true if and only if (IFF) q is true.

p = “Bush wins the 2004 election.”

q = “Bush will be president for all of 2005.”

p q = “If, and only if, Bush wins the 2004 election, Bush will be president for all of 2005.”

2004 I’m staying

2005

Page 36: Ch1.1

Discrete Mathematics 36Kemal Akkaya

Biconditional Truth Table

p q means that p and qhave the same truth value.

Note this truth table is theexact opposite of ’s!Thus, p q means ¬(p q)

p q does not implythat p and q are true, or that either of them causes the other, or that they have a common cause.

p q p qF F TF T FT F FT T T

Page 37: Ch1.1

Discrete Mathematics 37Kemal Akkaya

Precedence of operators

We can have compound statements r p q

What is the order of applying logical operators? We use parenthesis to

specify the order r (p q) : Implication

first If no parenthesis, we still

have a precedence list :

Operator Precedence

¬ 1

2

3

4

5

Page 38: Ch1.1

Discrete Mathematics 38Kemal Akkaya

Boolean Operations Summary

We have seen 1 unary operator (out of the 4 possible) and 5 binary operators (out of the 16 possible). Their truth tables are below.

p q p p q p q pq p q pqF F T F F F T TF T T F T T T FT F F F T T F FT T F T T F T T

Page 39: Ch1.1

Discrete Mathematics 39Kemal Akkaya

Some Alternative Notations

Name: notandorxorimplies iffPropositional logic: Boolean algebra: ppq+C/C++/Java (wordwise):!&&||!= ==C/C++/Java (bitwise): ~&|^Logic gates:

Page 40: Ch1.1

Discrete Mathematics 40Kemal Akkaya

Logic and Bit Operations

A bit is a binary (base 2) digit: 0 or 1.Bits may be used to represent truth values.By convention:

0 represents “false”; 1 represents “true”.Boolean algebra is like ordinary algebra

except that variables stand for bits, + means “or”, and multiplication means “and”.See module 23 (chapter 10) for more

details.

Page 41: Ch1.1

Discrete Mathematics 41Kemal Akkaya

Bit Strings

A Bit string of length n is an ordered sequence (series, tuple) of n0 bits.

By convention, bit strings are (sometimes) written left to right: e.g. the “first” bit of the bit string “1001101010” is 1.

When a bit string represents a base-2 number, by convention, the first (leftmost) bit is the most significant bit. Ex. 11012=8+4+1=13.

Page 42: Ch1.1

Discrete Mathematics 42Kemal Akkaya

Bitwise Operations

Boolean operations can be extended to operate on bit strings as well as single bits.

E.g.:01 1011 011011 0001 110111 1011 1111 Bit-wise OR01 0001 0100 Bit-wise AND10 1010 1011 Bit-wise XOR

Page 43: Ch1.1

Discrete Mathematics 43Kemal Akkaya

End of §1.1

You have learned about:

Propositions: What they are.

Propositional logic operators’Symbolic notations.English equivalents. Logical meaning.Truth tables.

Atomic vs. compound propositions.

Alternative notations.Bits and bit-strings.Next section: §1.2

Propositional equivalences.

How to prove them.