241-303 discrete maths: induction/1 1 discrete maths objective – –to introduce mathematical...
TRANSCRIPT
241-303 Discrete Maths: Induction/1 1
Discrete Maths
• Objective– to introduce mathematical induction through
examples
241-303, Semester 1 2014-2015
1. Mathematical Induction
241-303 Discrete Maths: Induction/1 2
Overview
1. Motivation
2. Induction Defined
3. Maths Notation Reminder
4. Four Examples
5. More General Induction Proofs
6. A Fun Tiling Problem
7. Further Information
241-303 Discrete Maths: Induction/1 3
1. Motivation
• Induction is used in mathematical proofs of many recursive algorithms– e.g. quicksort, binary search
• Induction is used to mathematically define recursive data structures– e.g. lists, trees, graphs
continued
241-303 Discrete Maths: Induction/1 4
• Induction is often used to derive mathematical estimates of program running time– timings based on the size of input data
• e.g. time increases linearly with the number of data items processed
– timings based on the number of times a loop executes
241-303 Discrete Maths: Induction/1 5
2. Induction Defined
• Induction is used to solve problems such as:– is S(n) correct/true for all n values?
• usually for all n >= 0 or all n >=1
• Example:– let S(n) be "n2 + 1 > 0"– is S(n) true for all n >= 1?
continued
S(n) can be muchmore complicated,such as a programthat reads in a nvalue.
241-303 Discrete Maths: Induction/1 6
• How do we prove (disprove) S(n)?
• One approach is to try every value of n:– is S(1) true?– is S(2) true?– ...– is S(10,000) true?– ... forever!!! Not very practical
241-303 Discrete Maths: Induction/1 7
Induction to the Rescue
• Induction is a technique for quickly proving S(n) true or false for all n– we only have to do two things
• First show that S(1) is true– do that by calculation as before
continued
241-303 Discrete Maths: Induction/1 8
• Second, assume that S(n) is true, and use it to show that S(n+1) is true– mathematically, we show that
S(n) --> S(n+1)
• Now we know S(n) is true for all n>=1.• Why?
continued
"--> stands for "implies"
241-303 Discrete Maths: Induction/1 9
• With S(1) and S(n) --> S(n+1)then S(2) is true – S(1) --> S(2) when n == 1
• With S(2) and S(n) --> S(n+1)then S(3) is true – S(2) --> S(3) when n == 2
• With S(3) and S(n) --> S(n+1)then S(4) is true – S(3) --> S(4) when n == 3
• and so on, for all n
241-303 Discrete Maths: Induction/1 10
Let’s do it
• Prove S(n): "n2 + 1 > 0" for all n >= 1.
• First task: show S(1) is true– S(1) == 12 + 1 == 2, which is > 0– so S(1) is true
• Second task: show S(n+1) is true by assuming S(n) is true
continued
241-303 Discrete Maths: Induction/1 11
• Assume S(n) is true, so n2+1 > 0• Prove S(n+1)
– S(n+1) == (n+1)2 + 1== n2 + 2n + 1 +1== (n2 + 1) + 2n + 1
– since n2 + 1 > 0, then (n2 + 1) + 2n + 1 > 0– so S(n+1) is true, by assuming S(n) is true– so S(n) --> S(n+1)
continued
241-303 Discrete Maths: Induction/1 12
• We have used induction to show two things:– S(1) is true– S(n) --> S(n+1) is true
• From these it follows that S(n) is true for all n >= 1
241-303 Discrete Maths: Induction/1 13
Induction More Formally
• Three pieces:– 1. A statement S(n) to be proved
• the statement must be about an integer n
– 2. A basis for the proof. This is the statement S(b) for some integer. Often b = 0 or b = 1.
continued
241-303 Discrete Maths: Induction/1 14
• 3. An inductive step for the proof. We prove the statement “S(n) --> S(n+1)” for all n.
– The statement S(n), used in this proof, is called the inductive hypothesis
– We conclude that S(n) is true for all n >= b• S(n) might not be true for some n < b
241-303 Discrete Maths: Induction/1 15
3. Maths Notation Reminder
• Summation: means 1+2+3+4+…+n
– e.g. means 4+9+16+…+m2
• Product: means 1*2*3*…*n
n
i
i1
m
j
j2
2
n
i
i1
241-303 Discrete Maths: Induction/1 16
4. Example 1
• Prove the statement S(n):for all n >= 1– e.g. 1+2+3+4 = (4*5)/2 = 10
• Basis. S(1), n = 1so 1 = (1*2)/2
2
)1(
1
nni
n
i
1
1
1i
i
continued
(1)
241-303 Discrete Maths: Induction/1 17
• Induction. Assume S(n) to be true.Prove S(n+1), which is:
Notice that:
2
)2)(1(
2
)11(11
1
nnnni
n
i(2)
1
1 1
)1(n
i
n
i
nii (3)
continued
241-303 Discrete Maths: Induction/1 18
• Substitute the right hand side (rhs) of (1) for the first operand of (3), to give:
= (n2 + n + 2n + 2) /2= (n2+3n+2)/2
)1(2
)1(1
1
nnn
in
i
which is (2)2
)2)(1(1
1
nni
n
i
241-303 Discrete Maths: Induction/1 19
Example 2
• Prove the statement S(n):for all n >= 0– e.g. 1+2+4+8 = 16-1
• Basis. S(0), n = 0so 20 = 21 -1
122 1
0
n
n
i
i
0
0
022i
i
continued
(1)
241-303 Discrete Maths: Induction/1 20
• Induction. Assume S(n) to be true.Prove S(n+1), which is:
Notice that:
122 21
0
nn
i
i(2)
1
0 0
1222n
i
n
i
nii (3)
continued
241-303 Discrete Maths: Induction/1 21
• Substitute the right hand side (rhs) of (1) for the first operand of (3), to give:
= 2*(2n+1) - 1
which is (2)
111
0
2122
nnn
i
i
122 2
0
n
n
i
i+1
241-303 Discrete Maths: Induction/1 22
Example 3
• Prove the statement S(n): n! >= 2n-1
for all n >= 1– e.g. 5! >= 24, which is 120 >= 16
• Basis. S(1), n = 1: 1! >= 20
so 1 >= 1
continued
(1)
241-303 Discrete Maths: Induction/1 23
• Induction. Assume S(n) to be true.Prove S(n+1), which is:
(n+1)! >= 2(n+1)-1
>= 2n (2)
Notice that:(n+1)! = n! * (n+1) (3)
continued
241-303 Discrete Maths: Induction/1 24
• Substitute the right hand side (rhs) of (1) for the first operand of (3), to give:
(n+1)! >= 2n-1 * (n+1)
>= 2n-1 * 2since (n+1) >= 2
(n+1)! >= 2n which is (2)
why?
241-303 Discrete Maths: Induction/1 25
Example 4• Prove the statement S(n):
for all n >= 1– This proof can be used to
show that. the limit of the sum:is 1
• Basis. S(1), n = 1so 1/2 = 1/2
1)1(
1
1
n
n
ii
n
i
1
1 11
1
)1(
1
i ii
continued
(1)
...4*3
1
3*2
1
2*1
1
241-303 Discrete Maths: Induction/1 26
• Induction. Assume S(n) to be true.Prove S(n+1), which is:
Notice that:
1)1(
)1(
)1(
11
1
n
n
ii
n
i(2)
)2)(1(
1
)1(
1
)1(
11
1 1
nniiii
n
i
n
i
(3)
continued
241-303 Discrete Maths: Induction/1 27
• Substitute the right hand side (rhs) of (1) for the first operand of (3), to give:
=1)1(
)1(
n
nwhich is (2)
)2)(1(
1
1)1(
11
1
nnn
n
ii
n
i
241-303 Discrete Maths: Induction/1 28
5. More General Inductive Proofs
• There can be more than one basis case.
• We can do a complete induction (or “strong” induction) where the proof of S(n+1) may use any of S(b), S(b+1), …, S(n)– b is the lowest basis value
241-303 Discrete Maths: Induction/1 29
Example
• We claim that every integer >= 24 can be written as 5a+7b for non-negative integers a and b.– note that some integers < 24 cannot be expresse
d this way (e.g. 16, 23).
• Let S(n) be the statement (for n >= 24)“n = 5a + 7b, for a >= 0 and b >= 0”
continued
241-303 Discrete Maths: Induction/1 30
• Basis. The 5 basis cases are 24 through 28.– 24 = (5*2) + (7*2)– 25 = (5*5) + (7*0)– 26 = (5*1) + (7*3)– 27 = (5*4) + (7*1)– 28 = (5*0) + (7*4)
continued
241-303 Discrete Maths: Induction/1 31
• Induction: Let n+1 >= 29. Then n-4 >= 24, the lowest basis case.– Thus S(n-4) is true, and we can write
n - 4 = 5a + 7b
– Thus, n+1 = 5(a+1) + 7b, proving S(n+1)
241-303 Discrete Maths: Induction/1 32
6. A Fun Tiling Problem
• A right tromino is a “corner” shape:
• Use induction to proof that right trominos can be used to tile (cover) any n*n size board, where n is a power of 2 and the board has 1 square missing.
continued
241-303 Discrete Maths: Induction/1 33
• For example, a 4*4 board (22*22), minus 1 square:
241-303 Discrete Maths: Induction/1 34
7. Further Information
• DM: section 1.6