Professional Documents
Culture Documents
And Now For Something Completely Different
And Now For Something Completely Different
completely different…
►Set Theory
1
Set Theory
► Set: Collection of objects (called elements)
► a A “a is an element of A”
“a is a member of A”
► a A “a is not an element of A”
► A = {a , a , …, a } “A contains a , …, a ”
1 2 n 1 n
► It does not matter how often the same element is listed (repetition doesn’t count).
2
Set Equality
►Sets A and B are equal if and only if they contain exactly the same elements.
►Examples:
3
Examples for Sets
► “Standard” Sets:
4
Examples for Sets
► A= “empty set/null set”
► x (P(x) xA)
5
Examples for Sets
►We are now able to define the set of rational numbers Q:
►Q = {a/b | aZ bZ+}, or
►Q = {a/b | aZ bZ b0}
6
Subsets
►A B “A is a subset of B”
►Examples:
► A = B (A B) (B A)
B
A C
8
Subsets
► Useful rules:
► Proper subsets:
► or
9
Cardinality of Sets
►If a set S contains n distinct elements, nN,
we call S a finite set with cardinality n.
►Examples:
►A = {Mercedes, BMW, Porsche}, |A| = 3
10
The Power Set
► P(A) “power set of A” (also written as 2A)
► Examples:
► A = {x, y, z}
► P(A) = {, {x}, {y}, {z}, {x, y}, {x, z}, {y, z}, {x, y, z}}
► A=
► P(A) = {}
11
The Power Set
► Cardinality of power sets: | P(A) | = 2|A|
► Each possible switch configuration in A corresponds to one subset of A, thus one element in P(A)
► A ► 1 ► 2 ► 3 ► 4 ► 5 ► 6 ► 7 ► 8
► x ► x ► x ► x ► x ► x ► x ► x ► x
► y ► y ► y ► y ► y ► y ► y ► y ► y
► z ► z ► z ► z ► z ► z ► z ► z ► z
13
Cartesian Product
•Example:
•A = {good, bad}, B = {student, prof}
•AB = {
14
Cartesian Product
•Note that:
• A =
• A =
• For non-empty sets A and B: AB AB BA
• |AB| = |A||B|
15
Set Operations
► Union: AB = {x | xA xB}
► AB = {a, b, c, d}
► AB = {b}
16
Set Operations
►Two sets are called disjoint if their intersection is empty, that is, they share no elements:
►AB =
►The difference between two sets A and B contains exactly those elements of A that are not in B:
►A-B = {x | xA xB}
Example: A = {a, b}, B = {b, c, d}, A-B = {a}
17
Set Operations
►The complement of a set A contains exactly those elements under consideration that are not in A:
denoted Ac (or ̄A as in the text)
•Ac = U-A
18
Logical Equivalence
►Equivalence laws
Identity laws, P T P,
Domination laws, P F F,
Idempotent laws, P P P,
Double negation law, ( P) P
Commutative laws, P Q Q P,
Associative laws, P (Q R) (P Q) R,
Distributive laws, P (Q R) (P Q) (P R),
De Morgan’s laws, (PQ) ( P) ( Q)
Law with implication PQPQ
19
Set Identity
► Table 1 in Section 1.7 shows many useful equations
► xA(BC)
xA x
x(B
(BC)
xA (x
(xB x
xC)
x(AB) x(AC)
x(A
(AB)
B)(A
(AC)
Every logical expression can be transformed into an equivalent expression in set theory and vice versa.
21
Set Operations
►Method II: Membership table
►1 means “x is an element of this set”
0 means “x is not an element of this set”
►Functions
23
Functions
►A function f from a set A to a set B is an assignment of exactly one element of B to each element of A.
►We write
►f(a) = b
►if b is the unique element of B assigned by the function f to the element a of A.
►If f is a function from A to B, we write
►f: AB
►(note: Here, ““ has nothing to do with if… then)
24
Functions
►If f:AB, we say that A is the domain of f and B is the codomain of f.
25
Functions
►Let us take a look at the function f:PC with
►P = {Linda, Max, Kathy, Peter}
►C = {Boston, New York, Hong Kong, Moscow}
►f(Linda) = Moscow
►f(Max) = Boston
►f(Kathy) = Hong Kong
►f(Peter) = New York
26
Functions
►Let us re-specify f as follows:
►f(Linda) = Moscow
►f(Max) = Boston
►f(Kathy) = Hong Kong
►f(Peter) = Boston
yes
What is its range? {Moscow, Boston, Hong Kong}
27
Functions
►Other ways to represent f:
28
Functions
►If the domain of our function f is large, it is convenient to specify f with a formula, e.g.:
►f:RR
►f(x) = 2x
29
Functions
►Let f1 and f2 be functions from A to R.
►Then the sum and the product of f1 and f2 are also functions from A to R defined by:
►(f1 + f2)(x) = f (x) + f (x)
1 2
►(f1f2)(x) = f (x) f (x)
1 2
►Example:
►f1(x) = 3x, f (x) = x + 5
2
►(f1 + f2)(x) = f (x) + f (x) = 3x + x + 5 = 4x + 5
1 2
►(f1f2)(x) = f (x) f (x) = 3x (x + 5) = 3x2 + 15x
1 2
30
Functions
►We already know that the range of a function f:AB is the set of all images of elements aA.
►If we only regard a subset SA, the set of all images of elements sS is called the image of S.
31
Functions
►Let us look at the following well-known function:
►f(Linda) = Moscow
►f(Max) = Boston
►f(Kathy) = Hong Kong
►f(Peter) = Boston
►What is the image of S = {Linda, Max} ?
►f(S) = {Moscow, Boston}
►What is the image of S = {Max, Peter} ?
►f(S) = {Boston}
32
Properties of Functions
►In other words: f is one-to-one if and only if it does not map two distinct elements of A onto the same
element of B.
33
Properties of Functions
►And again…
►f(Linda) = Moscow
►f(Max) = Boston g(Linda) = Moscow
►f(Kathy) = Hong Kong
g(Max) = Boston
►f(Peter) = Boston
►Is f one-to-one?
g(Kathy) = Hong Kong
►No, Max and Peter are mapped onto the
g(Peter) = New York
same element of the image.
Is g one-to-one?
34
Properties of Functions
►How can we prove that a function f is one-to-one?
►Whenever you want to prove something, first take a look at the relevant definition(s):
►x, yA (f(x) = f(y) x = y)
►Example:
►f:RR
►f(x) = x2
►Disproof by counterexample:
►f(3) = f(-3), but 3 -3, so f is not one-to-one.
35
Properties of Functions
►… and yet another example:
►f:RR
►f(x) = 3x
►One-to-one: x, yA (f(x) = f(y) x = y)
►To show: f(x) f(y) whenever x y (indirect proof)
►x y
3x 3y
f(x) f(y),
so if x y, then f(x) f(y), that is, f is one-to-one.
36
Properties of Functions
►A function f:AB with A,B R is called strictly increasing, if
►x,yA (x < y f(x) < f(y)),
►and strictly decreasing, if
►x,yA (x < y f(x) > f(y)).
37
Properties of Functions
►A function f:AB is called onto, or surjective, if and only if for every element bB there is an element aA
with f(a) = b.
►In other words, f is onto if and only if its range is its entire codomain.
►A function f: AB is a one-to-one correspondence, or a bijection, if and only if it is both one-to-one and
onto.
►Obviously, if f is a bijection and A and B are finite sets, then |A| = |B|.
38
Properties of Functions
►Examples:
►In the following examples, we use the arrow representation to illustrate functions f:A B.
39
Properties of Functions
Linda Boston ►Is f injective?
►No.
Max New York ►Is f surjective?
►No.
►Is f bijective?
Kathy Hong Kong ►No.
Peter Moscow
40
Properties of Functions
Linda Boston ►Is f injective?
►No.
Max New York ►Is f surjective?
►Yes.
►Is f bijective?
Kathy Hong Kong ►No.
Peter Moscow
Paul
41
Properties of Functions
Linda Boston ►Is f injective?
►Yes.
Max New York ►Is f surjective?
►No.
►Is f bijective?
Kathy Hong Kong ►No.
Peter Moscow
Lübeck
42
Properties of Functions
Linda Boston ►Is f injective?
►No! f is not even
a function!
Max New York
Peter Moscow
Lübeck
43
Properties of Functions
Linda Boston ►Is f injective?
►Yes.
Max New York ►Is f surjective?
►Yes.
►Is f bijective?
Kathy Hong Kong ►Yes.
Peter Moscow
Helena Lübeck
44
Inversion
►The inverse function of the bijection f:AB is the function f-1:BA with
►f-1(b) = a whenever f(a) = b.
45
Inversion
Example: The inverse function
f-1 is given by:
f(Linda) = Moscow f-1(Moscow) = Linda
f(Max) = Boston f-1(Boston) = Max
f(Kathy) = Hong Kong f-1(Hong Kong) = Kathy
f(Peter) = Lübeck f-1(Lübeck) = Peter
f(Helena) = New York f-1(New York) = Helena
Clearly, f is bijective. Inversion is only
possible for bijections
(= invertible functions)
46
Inversion
Linda Boston f
Peter Moscow
Helena Lübeck
47
Composition
►The composition of two functions g:AB and f:BC, denoted by fg, is defined by
►(fg)(a) = f(g(a))
►This means that
► first, function g is applied to element aA,
mapping it onto an element of B,
48
Composition
►Example:
49
Composition
50
Graphs
►The graph of a function f:AB is the set of ordered pairs {(a, b) | aA and f(a) = b}.
►The graph is a subset of AB that can be used to visualize f in a two-dimensional coordinate
system.
51
Floor and Ceiling Functions
►The floor and ceiling functions map the real numbers onto the integers ( RZ).
►The floor function assigns to rR the largest zZ with z r, denoted by r.
►Examples: 2.3 = 2, 2 = 2, 0.5 = 0, -3.5 = -4
►The ceiling function assigns to rR the smallest zZ with z r, denoted by r.
►Examples: 2.3 = 3, 2 = 2, 0.5 = 1, -3.5 = -3
52
Now, something about
►BooleanAlgebra
►(section 10.1)
53
Boolean Algebra
►Boolean algebra provides the operations and the rules for working with the set {0, 1}.
►These are the rules that underlie electronic circuits, and the methods we will discuss are fundamental
to VLSI design.
► Boolean product
54
Boolean Operations
►The complement is denoted by a bar (on the slides, we will use a minus sign). It is defined by
►-0 = 1 and -1 = 0.
55
Boolean Functions and Expressions
►Definition: Let B = {0, 1}. The variable x is called a Boolean variable if it assumes values only from B.
►A function from Bn, the set {(x1, x2, …, xn) |xiB,
1 i n}, to B is called a Boolean function of degree n.
►Boolean functions can be represented using expressions made up from the variables and Boolean
operations.
56
Boolean Functions and Expressions
►The Boolean expressions in the variables x1, x2, …, xn are defined recursively as follows:
► 0, 1, x , x , …, x are Boolean expressions.
1 2 n
►Each Boolean expression represents a Boolean function. The values of this function are obtained by
substituting 0 and 1 for the variables in the expression.
57
Boolean Functions and Expressions
►For example, we can create Boolean expression in the variables x, y, and z using the “building blocks”
0, 1, x, y, and z, and the construction rules:
58
Boolean Functions and Expressions
►Example: Give a Boolean expression for the Boolean function F(x, y) as defined by the following table:
► x ► y ► F(x, y)
► 0 ► 0 ► 0
► 0 ► 1 ► 1
► 1 ► 0 ► 0
► 1 ► 1 ► 0
59
Boolean Functions and Expressions
►Another Example:
60
Boolean Functions and Expressions
►There is a simple method for deriving a Boolean expression for a function that is defined by a table. This
method is based on minterms.
►Definition: A literal is a Boolean variable or its complement. A minterm of the Boolean variables x1,
x , …, x is a Boolean product y y …y , where y = x or y = -x .
2 n 1 2 n i i i i
►Hence, a minterm is a product of n literals, with one literal for each variable.
61
Boolean Functions and Expressions
►Consider F(x,y,z) again:
►F(x, y, z) = 1 if and only
if:
► x ► y ► z ► F(x, y, z)
►x = y = z = 0 or
►0 ►0 ►0 ► 1
►x = y = 0, z = 1 or
►0 ►0 ►1 ► 1
►x = 1, y = z = 0
►0 ►1 ►0 ► 0
►Therefore,
►0 ►1 ►1 ► 0
►F(x, y, z) =
►1 ►0 ►0 ► 1
(-x)(-y)(-z) +
►1 ►0 ►1 ► 0 (-x)(-y)z +
►1 ►1 ►0 ► 0 x(-y)(-z)
►1 ►1 ►1 ► 0
62
Boolean Functions and Expressions
►Definition: The Boolean functions F and G of n variables are equal if and only if F(b1, b2, …, bn) =
G(b , b , …, b ) whenever b , b , …, b belong to B.
1 2 n 1 2 n
►Two different Boolean expressions that represent the same function are called equivalent.
►For example, the Boolean expressions xy, xy + 0, and xy 1 are equivalent.
63
Boolean Functions and Expressions
►The complement of the Boolean function F is the function –F, where –F(b 1, b2, …, bn) =
-(F(b , b , …, b )).
1 2 n
►Let F and G be Boolean functions of degree n. The Boolean sum F+G and Boolean product FG are then
defined by
►(F + G)(b1, b2, …, bn) = F(b1, b2, …, bn) + G(b1, b2, …, bn)
►(FG)(b1, b2, …, bn) = F(b1, b2, …, bn) G(b1, b2, …, bn)
64
Boolean Functions and Expressions
►Question: How many different Boolean functions of degree 1 are there?
►Solution: There are four of them, F1, F2, F3, and F4:
► x ► F1 ► F2 ► F3 ► F4
► 0 ► 0 ► 0 ► 1 ► 1
► 1 ► 0 ► 1 ► 0 ► 1
65
Boolean Functions and Expressions
►Question: How many different Boolean functions of degree 2 are there?
►Solution: There are 16 of them, F1, F2, …, F16:
► F ► F ► F ► F ► F ► F ► F
► F► F ► F ► F► F ► F► F► F ► F
► x► y 1 1 1 1 1 1 1
1 2 3 4 5 6 7 8 9
► 0► 0► 0 ► 0 ► 0 ► 0 ► 0 ► 0 ► 0 ► 0 ► 1 ► 10 ► 11 ► 12 ► 13 ► 14 ► 15 ► 16
► 0► 1► 0 ► 0 ► 0 ► 0 ► 1 ► 1 ► 1 ► 1 ► 0 ► 0 ► 0 ► 0 ► 1 ► 1 ► 1 ► 1
► 1► 0► 0 ► 0 ► 1 ► 1 ► 0 ► 0 ► 1 ► 1 ► 0 ► 0 ► 1 ► 1 ► 0 ► 0 ► 1 ► 1
► 1► 1► 0 ► 1 ► 0 ► 1 ► 0 ► 1 ► 0 ► 1 ► 0 ► 1 ► 0 ► 1 ► 0 ► 1 ► 0 ► 1
66
Boolean Functions and Expressions
►Question: How many different Boolean functions of degree n are there?
►Solution:
►There are 2n different n-tuples of 0s and 1s.
►A Boolean function is an assignment of 0 or 1 to each of these 2 n different n-tuples.
►Therefore, there are 22n different Boolean functions.
67
Duality
►There are useful identities of Boolean expressions that can help us to transform an expression A into an
equivalent expression B (see Table 5 on page 705 in the textbook).
►We can derive additional identities with the help of the dual of a Boolean expression.
►The dual of a Boolean expression is obtained by interchanging Boolean sums and Boolean products and
interchanging 0s and 1s.
68
Duality
►Examples:
69
Duality
►Therefore, an identity between functions represented by Boolean expressions remains valid when the
duals of both sides of the identity are taken.
►We can use this fact, called the duality principle, to derive new identities.
►For example, consider the absorption law
x(x + y) = x.
►By taking the duals of both sides of this identity, we obtain the equation x + xy = x, which is also an
identity (and also called an absorption law).
70
Definition of a Boolean Algebra
►All the properties of Boolean functions and expressions that we have discovered also apply to other
mathematical structures such as propositions and sets and the operations defined on them.
►If we can show that a particular structure is a Boolean algebra, then we know that all results established
about Boolean algebras apply to this structure.
71
Definition of a Boolean Algebra
►Definition: A Boolean algebra is a set B with two binary operations and , elements 0 and 1, and a
unary operation – such that the following properties hold for all x, y, and z in B:
►(x y) z = x (y z) and
(x y) z = x (y z) and (associative laws)
►x (y z) = (x y) (x z) and
x (y z) = (x y) (x z) (distributive laws)
72
Logic Gates
►Electronic circuits consist of so-called gates.
There are three basic types of gates:
x -x
inverter
x x+y
OR gate
y
x xy
AND gate
y
73
Logic Gates
►Example: How can we build a circuit that computes the function xy + (-x)y ?
x xy
y
xy + (-x)y
x -x
(-x)y
y
74
Logic, Sets, and Boolean Algebra
►Logic Set Boolean Algebra
►False 0
►True U 1
►AB A B A B
►AB A B A+B
►A AC
►
Compare the equivalence laws of them
̄A
75