Transcript Document
DISCRETE COMPUTATIONAL
STRUCTURES
CSE 2353
Material for Second Test
Spring 2006
CSE 2353 OUTLINE
1. Sets
2. Logic
3. Proof Techniques
4.
5.
6.
7.
8.
Integers and Inductions
Relations and Posets
Functions
Counting Principles
Boolean Algebra
Proof Technique: Learning Objectives
Learn various proof techniques
Direct
Indirect
Contradiction
Induction
Practice writing proofs
CS: Why study proof techniques?
Discrete Mathematical Structures: Theory and Applications
3
Proof Techniques
Theorem
Statement that can be shown to be true (under
certain conditions)
Typically Stated in one of three ways
As Facts
As Implications
As Biimplications
Discrete Mathematical Structures: Theory and Applications
4
Proof Techniques
Direct Proof or Proof by Direct Method
Proof of those theorems that can be expressed
in the form ∀x (P(x) → Q(x)), D is the domain of
discourse
Select a particular, but arbitrarily chosen,
member a of the domain D
Show that the statement P(a) → Q(a) is true.
(Assume that P(a) is true
Show that Q(a) is true
By the rule of Universal Generalization (UG),
∀x (P(x) → Q(x)) is true
Discrete Mathematical Structures: Theory and Applications
5
Proof Techniques
Indirect Proof
The implication p → q is equivalent to the
implication (∼q → ∼p)
Therefore, in order to show that p → q is true,
one can also show that the implication
(∼q → ∼p) is true
To show that (∼q → ∼p) is true, assume that the
negation of q is true and prove that the negation
of p is true
Discrete Mathematical Structures: Theory and Applications
6
Proof Techniques
Proof by Contradiction
Assume that the conclusion is not true and then
arrive at a contradiction
Example: Prove that there are infinitely many
prime numbers
Proof:
Assume there are not infinitely many prime
numbers, therefore they are listable, i.e. p1,p2,…,pn
Consider the number q = p1p2…pn+1. q is not
divisible by any of the listed primes
Therefore, q is a prime. However, it was not listed.
Contradiction! Therefore, there are infinitely many
primes
Discrete Mathematical Structures: Theory and Applications
7
Proof Techniques
Proof of Biimplications
To prove a theorem of the form ∀x (P(x) ↔
Q(x )), where D is the domain of the
discourse, consider an arbitrary but fixed
element a from D. For this a, prove that the
biimplication P(a) ↔ Q(a) is true
The biimplication p ↔ q is equivalent to
(p → q) ∧ (q → p)
Prove that the implications p → q and q → p
are true
Assume that p is true and show that q is true
Assume that q is true and show that p is true
Discrete Mathematical Structures: Theory and Applications
8
Proof Techniques
Proof of Equivalent Statements
Consider the theorem that says that
statements p,q and r are equivalent
Show that p → q, q → r and r → p
Assume p and prove q. Then assume q and
prove r Finally, assume r and prove p
Or, prove that p if and only if q, and then q if
and only if r
Other methods are possible
Discrete Mathematical Structures: Theory and Applications
9
Other Proof Techniques
Vacuous
Trivial
Contrapositive
Counter Example
Divide into Cases
Discrete Mathematical Structures: Theory and Applications
10
Proof Basics
You can not prove
by example
Discrete Mathematical Structures: Theory and Applications
11
Proofs in Computer Science
Proof of program correctness
Proofs are used to verify approaches
Discrete Mathematical Structures: Theory and Applications
12
CSE 2353 OUTLINE
1. Sets
2. Logic
3. Proof Techniques
4. Integers and Induction
5.
6.
7.
8.
Relations and Posets
Functions
Counting Principles
Boolean Algebra
Learning Objectives
Learn about the basic properties of integers
Explore how addition and subtraction
operations are performed on binary numbers
Learn how the principle of mathematical
induction is used to solve problems
CS
Become aware how integers are represented in
computer memory
Looping
Discrete Mathematical Structures: Theory and Applications
14
Integers
Properties of
Integers
Discrete Mathematical Structures: Theory and Applications
15
Integers
Discrete Mathematical Structures: Theory and Applications
16
Integers
Discrete Mathematical Structures: Theory and Applications
17
Integers
Discrete Mathematical Structures: Theory and Applications
18
Integers
The div and mod operators
div
a div b = the quotient of a and b obtained by
dividing a on b.
Examples:
8 div 5 = 1
13 div 3 = 4
mod
a mod b = the remainder of a and b obtained by
dividing a on b
8 mod 5 = 3
13 mod 3 = 1
Discrete Mathematical Structures: Theory and Applications
19
Integers
Discrete Mathematical Structures: Theory and Applications
20
Integers
Discrete Mathematical Structures: Theory and Applications
21
Integers
Discrete Mathematical Structures: Theory and Applications
22
Integers
Relatively Prime
Number
Discrete Mathematical Structures: Theory and Applications
23
Integers
Least Common Multiples
Discrete Mathematical Structures: Theory and Applications
24
Representation of Integers in
Computer
Electrical signals are used inside the
computer to process information
Two types of signals
Analog
Continuous wave forms used to represent such
things as sound
Examples: audio tapes, older television signals, etc.
Digital
Represent information with a sequence of 0s and 1s
Examples: compact discs, newer digital HDTV
signals
Discrete Mathematical Structures: Theory and Applications
25
Representation of Integers in
Computers
Digital Signals
0s and 1s – 0s represent low voltage, 1s high
voltage
Digital signals are more reliable carriers of
information than analog signals
Can be copied from one device to another
with exact precision
Machine language is a sequence of 0s and
1s
The digit 0 or 1 is called a binary digit , or bit
A sequence of 0s and 1s is sometimes referred to
as binary code
Discrete Mathematical Structures: Theory and Applications
26
Representation of Integers in
Computers
Decimal System or Base-10
The digits that are used to represent numbers in
base 10 are 0,1,2,3,4,5,6,7,8, and 9
Binary System or Base-2
Computer memory stores numbers in machine
language, i.e., as a sequence of 0s and 1s
Octal System or Base-8
Digits that are used to represent numbers in base 8
are 0,1,2,3,4,5,6, and 7
Hexadecimal System or Base-16
Digits and letters that are used to represent numbers
in base 16 are 0,1,2,3,4,5,6,7,8,9,A ,B ,C ,D ,E , and
F
Discrete Mathematical Structures: Theory and Applications
27
Representation of Integers in
Computers
Discrete Mathematical Structures: Theory and Applications
28
Representation of Integers in
Computers
Two’s Complements and Operations
on Binary Numbers
In computer memory, integers are
represented as binary numbers in fixedlength bit strings, such as 8, 16, 32 and
64
Assume that integers are represented as
8-bit fixed-length strings
Sign bit is the MSB (Most Significant Bit)
Leftmost bit (MSB) = 0, number is positive
Leftmost bit (MSB) = 1, number is negative
Discrete Mathematical Structures: Theory and Applications
29
Representation of Integers in
Computers
Discrete Mathematical Structures: Theory and Applications
30
Representation of Integers in
Computers
One’s Complements and Operations on Binary
Numbers
Discrete Mathematical Structures: Theory and Applications
31
Representation of Integers in
Computers
Discrete Mathematical Structures: Theory and Applications
32
Mathematical Deduction
Discrete Mathematical Structures: Theory and Applications
33
Mathematical Deduction
Proof of a mathematical statement by the principle of
mathematical induction consists of three steps:
Discrete Mathematical Structures: Theory and Applications
34
Mathematical Deduction
Assume that when a domino is knocked over,
the next domino is knocked over by it
Show that if the first domino is knocked over,
then all the dominoes will be knocked over
Discrete Mathematical Structures: Theory and Applications
35
Mathematical Deduction
Let P(n) denote the statement that then nth
domino is knocked over
Show that P(1) is true
Assume some P(k) is true, i.e. the kth domino is
knocked over for some
k 1
Prove that P(k+1) is true, i.e.
P( k ) P ( k 1)
Discrete Mathematical Structures: Theory and Applications
36
Mathematical Deduction
Assume that when a staircase is climbed,
the next staircase is also climbed
Show that if the first staircase is climbed
then all staircases can be climbed
Let P(n) denote the statement that then
nth staircase is climbed
It is given that the first staircase is
Discrete Mathematical climbed,
Structures: Theory and
Applications
so
P(1) is true
37
Mathematical Deduction
Suppose some P(k) is true, i.e. the kth
staircase is climbed for some
k 1
By the assumption, because the kth
staircase was climbed, the k+1st
staircase was climbed
Therefore, P(k) is true, so
P ( k ) P ( k 1)
Discrete Mathematical Structures: Theory and Applications
38
Mathematical Deduction
Discrete Mathematical Structures: Theory and Applications
39
Mathematical Deduction
We can associate a predicate, P(n). The
predicate P(n) is such that:
Discrete Mathematical Structures: Theory and Applications
40
Prime Numbers
Discrete Mathematical Structures: Theory and Applications
41
Prime Numbers
Discrete Mathematical Structures: Theory and Applications
42
Prime Numbers
Example:
Consider the integer 131. Observe that 2 does not divide 131. We now find all
odd primes p such that p2 131. These primes are 3, 5, 7, and 11. Now none of
3, 5, 7, and 11 divides 131. Hence, 131 is a prime.
Discrete Mathematical Structures: Theory and Applications
43
Prime Numbers
Discrete Mathematical Structures: Theory and Applications
44
Prime Numbers
Factoring a Positive Integer
The standard factorization of n
Discrete Mathematical Structures: Theory and Applications
45
Prime Numbers
Fermat’s Factoring Method
Discrete Mathematical Structures: Theory and Applications
46
Prime Numbers
Fermat’s Factoring Method
Discrete Mathematical Structures: Theory and Applications
47
CSE 2353 OUTLINE
1.
2.
3.
4.
Sets
Logic
Proof Techniques
Integers and Induction
5.Relations and Posets
6. Functions
7. Counting Principles
8. Boolean Algebra
Learning Objectives
Learn about relations and their basic
properties
Explore equivalence relations
Become aware of closures
Learn about posets
Explore how relations are used in the design
of relational databases
Discrete Mathematical Structures: Theory and Applications
49
Relations
Relations are a natural way to associate
objects of various sets
Discrete Mathematical Structures: Theory and Applications
50
Relations
R can be described in
Roster form
Set-builder form
Discrete Mathematical Structures: Theory and Applications
51
Relations
Arrow Diagram
Write the elements of A in one column
Write the elements B in another column
Draw an arrow from an element, a, of A to an element,
b, of B, if (a ,b) R
Here, A = {2,3,5} and B = {7,10,12,30} and R from A
into B is defined as follows: For all a A and b B,
a R b if and only if a divides b
The symbol → (called an arrow) represents the
relation R
Discrete Mathematical Structures: Theory and Applications
52
Relations
Discrete Mathematical Structures: Theory and Applications
53
Relations
Directed Graph
Let R be a relation on a finite set A
Describe R pictorially as follows:
For each element of A , draw a small or big
dot and label the dot by the corresponding
element of A
Draw an arrow from a dot labeled a , to
another dot labeled, b , if a R b .
Resulting pictorial representation of R is
called the directed graph representation of
the relation R
Discrete Mathematical Structures: Theory and Applications
54
Relations
Discrete Mathematical Structures: Theory and Applications
55
Relations
Directed graph (Digraph)
representation of R
Each dot is called a vertex
If a vertex is labeled, a, then it is also called
vertex a
An arc from a vertex labeled a, to another
vertex, b is called a directed edge, or directed
arc from a to b
The ordered pair (A , R) a directed graph, or
digraph, of the relation R, where each
element of A is a called a vertex of the
digraph
Discrete Mathematical Structures: Theory and Applications
56
Relations
Directed graph (Digraph)
representation of R (Continued)
For vertices a and b , if a R b, a is adjacent
to b and b is adjacent from a
Because (a, a) R, an arc from a to a is
drawn; because (a, b) R, an arc is drawn
from a to b. Similarly, arcs are drawn from b
to b, b to c , b to a, b to d, and c to d
For an element a A such that (a, a) R, a
directed edge is drawn from a to a. Such a
directed edge is called a loop at vertex a
Discrete Mathematical Structures: Theory and Applications
57
Relations
Directed graph (Digraph)
representation of R (Continued)
Position of each vertex is not important
In the digraph of a relation R, there is a
directed edge or arc from a vertex a to a
vertex b if and only if a R b
Let A ={a ,b ,c ,d} and let R be the
relation defined by the following set:
R = {(a ,a ), (a ,b ), (b ,b ), (b ,c ), (b ,a ),
(b ,d ), (c ,d )}
Discrete Mathematical Structures: Theory and Applications
58
Relations
Domain and Range of the Relation
Let R be a relation from a set A into a set B.
Then R ⊆ A x B. The elements of the relation
R tell which element of A is R-related to which
element of B
Discrete Mathematical Structures: Theory and Applications
59
Relations
Discrete Mathematical Structures: Theory and Applications
60
Relations
Discrete Mathematical Structures: Theory and Applications
61
Relations
Discrete Mathematical Structures: Theory and Applications
62
Relations
Let A = {1, 2, 3, 4} and B = {p, q, r}. Let R = {(1, q), (2, r
), (3, q), (4, p)}. Then R−1 = {(q, 1), (r , 2), (q, 3), (p,
4)}
To find R−1, just reverse the directions of the arrows
D(R) = {1, 2, 3, 4} = Im(R−1), Im(R) = {p, q, r} = D(R−1)
Discrete Mathematical Structures: Theory and Applications
63
Relations
Discrete Mathematical Structures: Theory and Applications
64
Relations
Constructing New Relations from
Existing Relations
Discrete Mathematical Structures: Theory and Applications
65
Relations
Example:
Consider the relations R and S as given in
Figure 3.7.
The composition S ◦ R is given by Figure
3.8.
Discrete Mathematical Structures: Theory and Applications
66
Relations
Discrete Mathematical Structures: Theory and Applications
67
Relations
Discrete Mathematical Structures: Theory and Applications
68
Relations
Discrete Mathematical Structures: Theory and Applications
69
Relations
Discrete Mathematical Structures: Theory and Applications
70
Relations
Discrete Mathematical Structures: Theory and Applications
71
Relations
Discrete Mathematical Structures: Theory and Applications
72
Relations
Discrete Mathematical Structures: Theory and Applications
73
Relations
Discrete Mathematical Structures: Theory and Applications
74
Relations
Discrete Mathematical Structures: Theory and Applications
75
Relations
Discrete Mathematical Structures: Theory and Applications
76
Relations
Discrete Mathematical Structures: Theory and Applications
77
Relations
Discrete Mathematical Structures: Theory and Applications
78
Relations
Discrete Mathematical Structures: Theory and Applications
79
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
80
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
81
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
82
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
83
Partially Ordered Sets
Hasse Diagram
Let S = {1, 2, 3}. Then
P(S) = {, {1}, {2}, {3}, {1,
2}, {2, 3}, {1, 3}, S}
Now (P(S),≤) is a poset,
where ≤ denotes the set
inclusion relation. The
poset diagram of
(P(S),≤) is shown in
Figure 3.22
Discrete Mathematical Structures: Theory and Applications
84
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
85
Partially Ordered Sets
Hasse Diagram
Let S = {1, 2, 3}. Then
P(S) = {, {1}, {2}, {3}, {1,
2}, {2, 3}, {1, 3}, S}
(P(S),≤) is a poset, where
≤ denotes the set
inclusion relation
Draw the digraph of this
inclusion relation (see
Figure 3.23). Place the
vertex A above vertex B if
B ⊂ A. Now follow steps
(2), (3), and (4)
Discrete Mathematical Structures: Theory and Applications
86
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
87
Partially Ordered Sets
Hasse Diagram
Consider the poset (S,≤),
where S = {2, 4, 5, 10, 15, 20}
and the partial order ≤ is the
divisibility relation
In this poset, there is no
element b ∈ S such that b 5
and b divides 5. (That is, 5 is
not divisible by any other
element of S except 5).
Hence, 5 is a minimal
element. Similarly, 2 is a
minimal element
Discrete Mathematical Structures: Theory and Applications
88
Partially Ordered Sets
Hasse Diagram
10 is not a minimal element
because 2 ∈ S and 2 divides
10. That is, there exists an
element b ∈ S such that b < 10.
Similarly, 4, 15, and 20 are not
minimal elements
2 and 5 are the only minimal
elements of this poset. Notice
that 2 does not divide 5.
Therefore, it is not true that 2 ≤
b, for all b ∈ S, and so 2 is not
a least element in (S,≤).
Similarly, 5 is not a least
element. This poset has no
least element
Discrete Mathematical Structures: Theory and Applications
89
Figure 3.24
Partially Ordered Sets
Hasse Diagram
There is no element b ∈ S
such that b 15, b > 15, and
15 divides b. That is, there is
no element b ∈ S such that 15
< b. Thus, 15 is a maximal
element. Similarly, 20 is a
maximal element.
10 is not a maximal element
because 20 ∈ S and 10
divides 20. That is, there
exists an element b ∈ S such
that 10 < b. Similarly, 4 is not a
maximal element.
Discrete Mathematical Structures: Theory and Applications
90
Partially Ordered Sets
Figure 3.24
Hasse Diagram
Discrete Mathematical Structures: Theory and Applications
20 and 15 are the only
maximal elements of
this poset
10 does not divide 15,
hence it is not true that
b ≤ 15, for all b ∈ S,
and so 15 is not a
greatest element in
(S,≤)
This poset has no
greatest element
91
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
92
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
93
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
94
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
95
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
96
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
97
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
98
Partially Ordered Sets
Discrete Mathematical Structures: Theory and Applications
99
Application: Relational Database
A database is a shared and integrated
computer structure that stores
End-user data; i.e., raw facts that are of interest
to the end user;
Metadata, i.e., data about data through which
data are integrated
A database can be thought of as a well-organized
electronic file cabinet whose contents are
managed by software known as a database
management system; that is, a collection of
programs to manage the data and control the
accessibility of the data
Discrete Mathematical Structures: Theory and Applications
100
Application: Relational Database
In a relational database system,
tables are considered as relations
A table is an n-ary relation, where n is
the number of columns in the tables
The headings of the columns of a table
are called attributes, or fields, and
each row is called a record
The domain of a field is the set of all
(possible) elements in that column
Discrete Mathematical Structures: Theory and Applications
101
Application: Relational Database
Each entry in the ID column uniquely
identifies the row containing that ID
Such a field is called a primary key
Sometimes, a primary key may consist of
more than one field
Discrete Mathematical Structures: Theory and Applications
102
Application: Relational Database
Structured Query Language (SQL)
Information from a database is retrieved via a
query, which is a request to the database for
some information
A relational database management system
provides a standard language, called
structured query language (SQL)
A relational database management system
provides a standard language, called
structured query language (SQL)
Discrete Mathematical Structures: Theory and Applications
103
Application: Relational Database
Structured Query Language (SQL)
An SQL contains commands to create tables, insert
data into tables, update tables, delete tables, etc.
Once the tables are created, commands can be used
to manipulate data into those tables.
The most commonly used command for this purpose
is the select command. The select command allows
the user to do the following:
Specify what information is to be retrieved and from which
tables.
Specify conditions to retrieve the data in a specific form.
Specify how the retrieved data are to be displayed.
Discrete Mathematical Structures: Theory and Applications
104