1 Inductive Proofs Rosen 6 th ed., §
2 Mathematical Induction A powerful, rigorous technique for proving that a predicate P(n) is true for every natural number n, no matter how large.A powerful, rigorous technique for proving that a predicate P(n) is true for every natural number n, no matter how large. Based on a predicate-logic inference rule:Based on a predicate-logic inference rule: P(0) n 0 (P(n) P(n+1)) n 0 P(n)P(0) n 0 (P(n) P(n+1)) n 0 P(n)
3 Outline of an Inductive Proof Want to prove n P(n) …Want to prove n P(n) … Base case (or basis step): Prove P(0).Base case (or basis step): Prove P(0). Inductive step: Prove n P(n) P(n+1).Inductive step: Prove n P(n) P(n+1). –e.g. use a direct proof: Let n N, assume P(n). (inductive hypothesis)Let n N, assume P(n). (inductive hypothesis) Under this assumption, prove P(n+1).Under this assumption, prove P(n+1). Inductive inference rule then gives n P(n).Inductive inference rule then gives n P(n).
4 Induction Example Prove thatProve that
5 Another Induction Example Prove that , n<2 n. Let P(n)=(n<2 n )Prove that , n<2 n. Let P(n)=(n<2 n ) –Base case: P(0)=(0<2 0 )=(0<1)=T. –Inductive step: For prove P(n) P(n+1). Assuming n<2 n, prove n+1 < 2 n+1.Assuming n<2 n, prove n+1 < 2 n+1. Note n + 1 < 2 n + 1 (by inductive hypothesis) < 2 n + 2 n (because 1<2=2 2 2 2 n-1 = 2 n ) = 2 n+1Note n + 1 < 2 n + 1 (by inductive hypothesis) < 2 n + 2 n (because 1<2=2 2 2 2 n-1 = 2 n ) = 2 n+1 So n + 1 < 2 n+1, and we’re done.So n + 1 < 2 n+1, and we’re done.
6 Validity of Induction Prove: if n 0 (P(n) P(n+1)) and P(0), then k 0 P(k) Prove: if n 0 (P(n) P(n+1)) and P(0), then k 0 P(k) (a) Given any k 0, n 0 (P(n) P(n+1)) implies (P(0) P(1)) (P(1) P(2)) … (P(k 1) P(k)) (P(0) P(1)) (P(1) P(2)) … (P(k 1) P(k)) Using hypothetical syllogism k-1 times we have (b) Using hypothetical syllogism k-1 times we have P(0) P(k) P(0) P(k) (c) P(0) and modus ponens gives P(k). Thus k 0 P(k). Thus k 0 P(k).
7 Generalizing Induction Can also be used to prove n c P(n) for a given constant c Z, where maybe c 0, then:Can also be used to prove n c P(n) for a given constant c Z, where maybe c 0, then: –Base case: prove P(c) rather than P(0) –The inductive step is to prove: n c (P(n) P(n+1)). n c (P(n) P(n+1)).
8 Induction Example Prove that the sum of the first n odd positive integers is n 2. That is, prove:Prove that the sum of the first n odd positive integers is n 2. That is, prove: Proof by induction.Proof by induction. –Base case: Let n=1. The sum of the first 1 odd positive integer is 1 which equals 1 2. (Cont…) P(n)P(n)
9 Example cont. Inductive step: Prove n 1: P(n) P(n+1).Inductive step: Prove n 1: P(n) P(n+1). –Let n 1, assume P(n), and prove P(n+1). By inductive hypothesis P(n)
10 Strong Induction Characterized by another inference rule: P(0) n 0: ( 0 k n P(k)) P(n+1) n 0: P(n)Characterized by another inference rule: P(0) n 0: ( 0 k n P(k)) P(n+1) n 0: P(n) Difference with previous version is that the inductive step uses the fact that P(k) is true for all smaller, not just for k=n.Difference with previous version is that the inductive step uses the fact that P(k) is true for all smaller, not just for k=n. P is true in all previous cases
11 Example 1 Show that every n>1 can be written as a product p 1 p 2 …p s of some series of s prime numbers. Let P(n)=“n has that property”Show that every n>1 can be written as a product p 1 p 2 …p s of some series of s prime numbers. Let P(n)=“n has that property” Base case: n=2, let s=1, p 1 =2.Base case: n=2, let s=1, p 1 =2. Inductive step: Let n 2. Assume 2 k n: P(k). Consider n+1. If prime, let s=1, p 1 =n+1. Else n+1=ab, where 1 a n and 1 b n. Then a=p 1 p 2 …p t and b=q 1 q 2 …q u. Then n+1= p 1 p 2 …p t q 1 q 2 …q u, a product of s=t+u primes.Inductive step: Let n 2. Assume 2 k n: P(k). Consider n+1. If prime, let s=1, p 1 =n+1. Else n+1=ab, where 1 a n and 1 b n. Then a=p 1 p 2 …p t and b=q 1 q 2 …q u. Then n+1= p 1 p 2 …p t q 1 q 2 …q u, a product of s=t+u primes.
12 Example 2 Prove that every amount of postage of 12 cents or more can be formed using just 4- cent and 5-cent stamps.Prove that every amount of postage of 12 cents or more can be formed using just 4- cent and 5-cent stamps. Base case: 12=3 4), 13=2 4)+1(5), 14=1(4)+2(5), 15=3(5), so 12 n 15, P(n).Base case: 12=3 4), 13=2 4)+1(5), 14=1(4)+2(5), 15=3(5), so 12 n 15, P(n). Inductive step: Let n 15, assume 12 k n P(k). Note 12 n 3 n, so P(n 3), so add a 4-cent stamp to get postage for n+1.Inductive step: Let n 15, assume 12 k n P(k). Note 12 n 3 n, so P(n 3), so add a 4-cent stamp to get postage for n+1.
Recursive Definitions Recursion – defining an object (or function, algorithm, etc.) in terms of itselfRecursion – defining an object (or function, algorithm, etc.) in terms of itself Recursion can be used to define sequencesRecursion can be used to define sequences – Previously sequences were defined using a specific formula, e.g., a n = 2 n for n = 0,1,2,... – This sequence can also be defined by giving the first term of the sequence, namely a 0 = 1, and a rule for finding a term of the sequence for the previous one, namely, a n+1 = 2a n for n = 0,1,2,... 13
Recursive Definitions When defining a set recursively, weWhen defining a set recursively, we –(1) specify the initial elements in a basis step and –(2) provide a rule for constructing new elements from those we already have in the recursive step Examples… 14
Recursive Algorithms Sometimes we can reduce the solution to the problem with a particular set of input to the solution of the same problem with smaller input values Sometimes we can reduce the solution to the problem with a particular set of input to the solution of the same problem with smaller input values When such a reduction can be done, the solution to the original problem can be found with a sequence of reductions, until the problem has been reduced to the initial case for which the solution is knownWhen such a reduction can be done, the solution to the original problem can be found with a sequence of reductions, until the problem has been reduced to the initial case for which the solution is known 15
Recursive Algorithms An algorithm is called recursive if it solves a problem by reducing it to an instance of the same problem with smaller input An algorithm is called recursive if it solves a problem by reducing it to an instance of the same problem with smaller input Examples …..Examples ….. 16