CS100: DISCRETE STRUCTURES
Lecture 2: Functions, Sequences, and SumsCh2.3, Ch2.4
Computer Science Department
1
2.3 Function introduction :
17-Feb-17 Computer Science Department
2
v Function: task, subroutine, procedure, method, mapping, …
v E.g. Find the grades of student x.
char findGrades(string name){
//go to grades array,
//find the name, and find the corresponding grades…return grades;
}
2.3 Functions
• We can use a formula or a computer program to define a function.
• Example:f(x) = x + 1
described as:int increaseByOne(int x){
x = x + 1; return x;
}
3
DEFINITION 1Let A and B to be nonempty sets. a function f from A to 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: A → B.
2.3 Functions
v For each function, we specify its domain, codomain and the mapping of elements of the domain to elements in the codomain
v Two functions are said to be equal if they have the same domain, codomain, and the map elements of their common domain to the same elements of their common codomain
v A function is differ by changing its domain, codomain or the mapping of elements
4
DEFINITION 2If f is a function from A to B, we say that A is the domain of f and B is the Co-domainof f. If f(a) = b, we say that b is the image of a and a is a preimageof b. The range of f is the set of all images of elements of A. Also, if f is a function from A to B, we say that f maps A to B.
¨ What are the domain, codomain, and range of the
function that assigns grades to students described in
the slide 2?
Solution:domain: {Adams, Chou, Goodfriend, Rodriguez, Stevens}codomain: {A, B, C, D, F}range: {A, B, C, F}
5
Exercise ..
2.3 Functions - Example
v Let f be the function that assigns the last two bits of a bit string of length 2 or greater to that string. For example, f (11010) = 10.
ü What is the domain, codomain and range of the function ?
Solution: ¤ the domain of f is the set of all bit strings of length 2 or
greater ..¤ and both the codomain and range are the set {00,01,10,11}
..
6
2.3 Functions - Example
ü What is the domain and codomain of the function :
int floor(real float){…}?
Solution:
¤domain: the set of real numbers
¤ codomain: the set of integer numbers
7
2.3 Functions
v Example: Let f1 and f2 be functions from R to R such that f1 (x) =x2
and f2 (x) = x – x2.
v What are the functions f1 + f2 and f1 f2 ?Solution:
(f1 + f2 )(x) = f1(x) + f2 (x) = x2 + (x – x2) = x(f1 f2 ) (x) = f1(x) f2 (x) = x2(x – x2) = x3 – x4
8
DEFINITION 3If f1 and f2 be functions from A to R. Then f1 + f2 and f1 f2 are also functions from A to R defined by
(f1 + f2 )(x) = f1(x) + f2 (x) (f1 f2 ) (x) = f1(x) f2 (x)
2.3 FunctionsOne-to-One and Onto Functions
• a , b(a ≠ b → f(a) ≠ f(b)) (If it’s a different element, it should map to a different value.)
• Example: Determine whether the function f from {a,b,c,d} to {1,2,3,4,5} with f(a) = 4, f(b) = 5, f(c) = 1 and f(d) = 3 is one-to-one.
9
DEFINITION 5
A function f is said to be one-to-one, or injective, if and only if
f(a) = f(b) implies that a = b for all a and b in the domain of f. A function is said to be an injection if it is one-to-one. (every element in the range is a unique image for element of A – all image have at most one arrow or none)
"
Solution: Yes.
2.3 Functions
¨ Example: Let f be the function from {a,b,c,d} to {1,2,3} defined by¨ f(a) = 3, f(b) = 2, f(c) = 1, and f(d) = 3. Is f an onto function?
Solution: Yes. ¨ Example: Is the function f (x) = x2 from the set of integers to the set of
integers onto?Solution: No. There is no integer x with x2 = -1, for instance.
10
DEFINITION 7A function f from A to B is called onto, or surjective, if and only if for every element b B there is an element a A with f(a) = b. a function f is called a surjection if it is onto. Co-domain = range
Î Î
2.3 Functions11
DEFINITION 8The function f is a one-to-one correspondence or a bijection, if it is both one-to-one and onto.
One-to-OneNot onto
OntoNot One-to-One
One-to-OneAnd ontobijection
Not One-to-OneNot onto(Neither)
Not Function
17-Feb-17 Computer Science Department
12
¨ Determine whether each of these functions is a bijection from R to R.
¨ a) f(x) = 2x + 1
¨ b) f(x) = x2 + 1
¨ c) f(x) = x3
¨ d) f(x) = (x2 + I )/(x2 + 2)
Exercise ..
Yes
Yes
No
No
Exercise ..
17-Feb-17 Computer Science Department
13
¨ Why f is not a function from R to R ?¤ f(x)=
¨ f(0) is not defined
¤ f(x)=¨ f(x) is not defined for x<0
¤ f(x)=¨ f(x) is not function because there are two values assigned to
each x.
2.3 Functions14
DEFINITION 9Let f be a one-to-one correspondence from the set A to the set B. The inverse
function of f is the function that assigns to an element b belonging to B the unique element a in A such that f(a) = b.
The inverse function of f is denoted by f-1. Hence, f-1(b)=a when f(a) = b.
¨ A one-to-one correspondence is called invertible because we can define an inverse of this function.
¨ A function is not invertible if it is not a one-to-one correspondence because the inverse of such function does not exist.
2.3 Functions15
Example: Let f be the function from {a, b, c} to {1, 2, 3} such that f(a) =2, f(b) = 3 and f(c) = 1. Is f invertible? And if it is, what is its inverse? Solution: Yes, it is invertible, because it is a one-to-one correspondence.
f-1(1) = c, f-1(2) = a, f-1(3) = b.
Exercise: Let f : Z àZ be such that f(x) = x+1. Is f invertible? And if it is, what is its inverse? Solution: Yes, it is invertible, because it is a one-to-one correspondence.
f-1(y) = y-1.
Exercise: Let f be a function from R to R with f(x) = x2. Is f invertible? Solution: f is not one-to-one because f(-2) = f(2) = 4. So, it is not one-to-one correspondence and hence it is not invertible.
2.3 Functions16
DEFINITION 10Let g be a function from the set A to the set B , and let f be a function from the set B
to the set C . The composition of the functions f and g, denoted by f o g, is defined by: (f o g)(a) = f(g(a))
2.3 Functions17
o f o g is the function that assigns to the element a of A the element assignedby f to g(a). That is, to find (f o g )(a) we:1. Apply the function g to a to obtain g(a)2. Then we apply the function f to the result g(a) to obtain (f o g)(a) = f(g(a))
o NOTE: The composition f o g cannot be defined unless the range of g is a subset of the domain of f.
2.3 Functions18
Example: Let g be the function from the set {a , b, c} to itself such that g(a) = b, g(b) = c, and g(c) = a Let f be the function from the set {a , b , c} to the set { l , 2 , 3 } such that f(a) = 3 , f(b) = 2 , and f(c) = 1 What is the composition of f and g, and what is the composition of g and f?
Solution: • The composition f o g is defined by:
• (f o g)(a) = f(g(a)) = f(b) =2• (f o g)(b) = f(g(b)) = f(c) =1• (f o g)(c) = f(g(c)) = f(a) = 3
• g o f is not defined, because the range of f is not a subset of the domain of g
2.3 Functions19
Example: Let f and g be the functions from the set of integers to the set of integers defined by f(x) = 2x + 3 and g(x) = 3x + 2. What is the composition of f and g? What is the composition of g and f?
Solution: Both the compositions f o g and g o f are defined• (f o g)(x) = f(g(x)) = f(3x + 2) = 2(3x + 2) + 3 = 6x + 7• (g 0 f)(x) = g(f(x)) = g(2x + 3) = 3(2x + 3) + 2 = 6x + 11.
2.4 Sequences and SummationsSequences
v A sequence is a discrete structure used to represent an ordered list
v Example: 1,2,3,5,8
1,3,9,27,81,…,30,…
¨ We use the notation {an} to denote the sequence.¨ Example: Consider the sequence {an}, where an = 1/n.
The list of the terms of this sequence, beginning with a1, namelya1, a2, a3, a4, …, starts with 1, 1/2, 1/3, 1/4, …
20
DEFINITION 1a sequence is a function from a subset of the set of integers (usually either the set {0,1,2,…} or the set {1,2,3,…}) to a set S. We use the notation an to denote the image of the integer n. We call an a term of the sequence.
2.4 Sequences and Summations
¨ Example: The following sequence are geometric progressions.
{bn} with bn = (-1)n starts with 1, -1, 1, -1, 1, …
initial term: 1, common ratio: -1{cn} with cn = 2*5n starts with 2, 10, 50, 250, 1250, …
initial term: 2, common ratio: 5{dn} with dn = 6 *(1/3)n starts with 6,2, 2/3, 2/9, 2/27, …
initial term: 6, common ratio: 1/3
21
DEFINITION 2a geometric progression is a sequence of the form
a, ar, ar2, …, arn, …where the initial term a and the common ratio r are real numbers.
2.4 Sequences and Summations
¨ Example: The following sequence are arithmetic progressions.
{sn} with sn = -1 + 4n starts with -1, 3, 7, 11,…
initial term: -1, common difference: 4
{tn} with tn = 7 – 3n starts with 7, 4, 1, -2, …
initial term: 7, common difference: -3
22
DEFINITION 3A arithmetic progression is a sequence of the form
a, a + d, a + 2d, …, a + nd, …where the initial term a and the common difference d are real numbers.
2.4 Sequences and Summations
¨ Example : ¨ Find formulae for the sequences with the following
first five terms
(a). 1, 1/2, 1/4, 1/8, 1/16
Solution: an = 1/2n
(b). 1, 3, 5, 7, 9
Solution: an = (2n )+ 1
(c). 1, -1, 1, -1, 1
Solution: an = (-1)n
23
Exercises
¨ Find the formula of this sequence and find A6 , A8 :
¨ A = 10, 14 , 18 , 22 , 26¨ It is arithmetic sequence , ¨ initial term a= 20 , ¨ common difference d= 4 ,¨ an=10+4n¨ A6 = 34 , A8 = 42
24
Exercises
¨ A = 4, 8, 16, 32 ¨ It is geometric sequence , ¨ initial term = 4 , ¨ common ratio = 2 , ¨ an=4*2n
¨ A6 = 256, A8 = 1024
25
Exercises26
o in a geometric sequence a0 was =3 and r =1/2 then a3 is equal to
a. 3/16 b. 3/4 c. 3/2 d. 3/8
In an arithmetic sequence a0 was =7 and a3 was 19 the value of a2 is=
a.14 b.11c.15 d.23
2.4 Sequences and SummationsSummations
v The sum of the terms from the sequence am + am+1, …, an can be expressed as
, Or
Where m is the lower limit, n is the upper limit, and j is the index of the summation
¨ Example: Express the sum of the first 100 terms of the sequence {an}, where
an = 1/n for n = 1,2,3, ….Solution:
27
å=
n
mjja å =
n
mj ja å ££ nj ja1
å=
100
1
1j j
2.4 Sequences and Summations
¨ What is the value of ?Solution:
= 1 + 4 + 9 + 16 + 25 = 55
¨ Expressed with a for loop:int sum = 0;for (int i =1; i <=5; i++){
sum = sum + i * i ;}
28
å =
5
12
jj
å =
5
12
jj
2.4 Sequences and Summations
¨ What is the value of the double summation ?
Solution:
=
= = 6 + 12 + 18 + 24 = 60
29
åå= =
4
1
3
1i jij
åå= =
4
1
3
1i jij å
=
++4
1
)32(i
iii
å=
4
1
6ii
Sequences and Summations
¨ Expressed with two for loops:int sum1 = 0;int sum2 = 0;for (int i =1; i <=4; i ++){
sum2 = 0;for (int j=1; j<=3; j++){
sum2 = sum2 + i *j;}sum1 = sum1 + sum2;
}
30
Solution:
17-Feb-17 Computer Science Department
31
¨ Write ( 1 + 4 + 9 + 16 + ... + 49 ) using sigma notation .
Exercises
Solution:
!𝑘#$
%&'