- 2423 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about 'Strong Induction' - johana

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Strong Induction

- “Normal” Induction: If we prove that 1) P(n0) 2) If P(k) for any k≥n0thenP(k+1)
- Then P(n) is true for all n≥n0.
- “Strong” Induction: If we prove that 1) Q(n0) 2) If Q(j) for all j from n0 to k(for any k≥n0), then Q(k+1) Then Q(k) is true for all k≥n0.
- These two are equivalent!
- Why? Set P(n) ≡ ( j in [n0,n] Q(j) )
- P(n0) ≡ Q(n0)
- P(k) ≡ Q(j) holds for all j between n0 and k

UCI ICS/Math 6D

Proof by Strong Induction: Jigsaw Puzzle

- Each “step” in assembling a jigsaw puzzle consists of putting together 2 already assembled blocks of pieces where each single piece is considered a block itself.
- P(n) = “It takes exactly n-1 steps to assemble a jigsaw puzzle of n pieces.”
- Basis Step: P(1) is (trivially) true.
- Inductive Step: We assume P(j) true for all j≤k and we’ll argue P(k+1):

The last step in assembling a puzzle with k+1 steps is to put together 2 blocks: one of size j>0 and one of size k+1-j.

Since 0<j,k+1-j≤k, P(j) and P(k+1-j) are both assumed true.

And so, the total number of steps to assemble a puzzle with n+1 pieces is 1 + (j-1) + ((k+1-j)-1) = k = (k+1)-1.

(this implies P(k+1), and hence ends the inductive part, and thus also the whole proof)

UCI ICS/Math 6D

More Examples of Theorems with easy Proofs using Strong Induction

- Thm1: The second player always wins the following game:
- Starting with 2 piles each containing the same number of matches, players alternately remove any non-zero number of matches from one of the piles.
- The winner is the person who removes the last match.
- Thm2: Every n>1 can be written as the product of primes.
- Thm3: Every postage amount of at least 18 cents can be formed using just 4-cent and 7-cent stamps:
- - First 4 cases: 18=2*7+4, 19=7+3*4, 20=5*4, 21=3*7
- - Afterwards, using strong induction: Take any k≥21. By (strong) inductive assumption, and by the 4 cases above, k-3=i*7+j*4 for some i,j. Therefore k+1=i*7+(j+1)*4, which ends the inductive step.
- (Btw, starting from 18 may seem weird, but you just can’t do it for 17...)

UCI ICS/Math 6D

Basis for Induction: Integers are well ordered

- Induction is based on the fact that the integers are “well ordered”, i.e.
- Any non-empty set of integerswhich is bounded belowi.e. there exists b (not necessarily in S) s.t. b ≤ x for all x in Scontains a smallest elementi.e. e in S s.t. for all x in S we have e ≤ x.
- Why does well-ordering imply induction?
- Assume (*) P(0) and (**) P(k)→P(k+1) for all k≥0.
- We’ll show that P(n)=T for all n≥0 (thus showing that induction works):
- Define (***) S = {n>0 | P(n)=F}. Assume S non-empty.
- By well-ordering of N, there is a least element e of S.
- Consider element e–1: Since P(e) = F then by (**) also P(e–1) = F.
- Note that e–1 cannot be equal to 0 because P(0) = T by (*).
- But then by (***), e–1 is in S, so e is not the least element of S…
- Contradiction!

Therefore S must be empty. Therefore P(n)=T for all n ≥ 0.

UCI ICS/Math 6D

Well Ordering can be used directly to prove things (i.e. not necessarily via induction)

- Theorem: If a and b are integers, not both 0, then s,tZ (s*a + t*b = gcd( a,b )).
- Proof: For any a,b define S = {n>0 | s,tZ n= s*a + t*b}.
- By the well-ordering of Z, S has a smallest element, call it d.
- Choose s and t so that d = s*a + t*b.
- Claim: d is a common divisor of a and b.
- Proof that d | a:

Writing d = q*a + r where 0≤r<d. If r=0 then d | a.

If r>0 then since r = d – q*a = (s*a + t*b) – q*a = (s - q)*a + t*b

we would have rS.

But since r<d it would mean that d is not the smallest element of S

=> contradiction => and therefore r=0 (and hence d | a).

Similarly, d | b.

- d is the greatest common divisor since any common divisor of a and b must also divide s*a + t*b = d.

UCI ICS/Math 6D

Recursive (Inductive) Definitions

- A function f: N→R is defined “recursively” by specifying(1) f(0), its value at 0, and(2) f(n), for n>0, in terms of f(1),….,f(n-1), i.e. in terms of f(k)’s for k<n.
- Examples:
- f(n)=n! can be specified as f(0)=1 and, for n>0, f(n)=n*f(n-1).
- For any a, fa(n)=an, can be specified as fa(0)=1 and,for n>0, fa(n)=a*fa(n-1)
- Note: In many cases, we specify f(k) explicitly not only for f(0) but also for f(1), f(2), …, f(m) for some m>0, and then use a recursive formula to define f(n) for all n>m.

UCI ICS/Math 6D

Fibonacci Numbers are Recursively Defined

- The Fibonacci numbers f0,f1,f2,…,fn,…, are defined by
- (1) f0=0, f1=1
- (2)fn=fn-1+fn-2, for n≥2
- (Btw, we can also use F(n) instead of fnto designate n-th Fibonacci number.)
- The first 18 Fibonacci numbers are:
- f0=0, f1=1, f2=1, f3=2, f4=3, f5=5, f6=8, f7=13, f8=21, f9=34, f10=55,f10=89, f11=144, f12=233, f13=377, f14=610, f15=987, f11=1597, f12=2584, f13=4181, f14=6765, f15=10946, f16=17711, f17=28657, f18=46368, ...
- Ref: http://en.wikipedia.org/wiki/Fibonacci_number
- Question: Are they growing exponentially, i.e. like fn≈ an for some a?

UCI ICS/Math 6D

y

Fibonacci numbers are related to a Golden Sectioni.e. the splitting of an interval so that (larger part) / whole = (smaller p. / larger p.)

Ref: http://en.wikipedia.org/wiki/Golden_ratio

UCI ICS/Math 6D

Fibonacci Growth

- Theorem: If n≥3 then fn > φn-2
- where φ is the solution to golden ratio, i.e. φ = (1+5) / 2
- Proof by Strong Induction:
- Basis Step (for n=3 and 4):
- f3 = 2 > φ=1.618…
- f4 = 3 > φ2 = (1+25+5)/4 = (3+5)/2 = φ+1 = 2.168…
- Fact you can check : φ2 = φ+1
- Inductive Step: Assume fk>φk-2 for all k s.t. 3≤k≤n.

fn+1 = fn+fn-1 > φn-2+φn-3 = φn-3(φ+1) = φn-3φ2 = φ(n+1)-2

UCI ICS/Math 6D

Recursively Defined Sets

- Always (1) Basis Step and (2) Recursive Step
- Set S of multiples of 3:(1) 3S ; (2) If xS and yS, then x+y S
- StringsΣ* over an alphabetΣ. Let λ be the empty string.(1) λ Σ* ; (2) If wΣ* and xΣ, then wxΣ*
- Examples: Σ={0,1}; Σ={0,1,2,3,4,5,6,7,8,9}; Σ={a,b,c,d,e,…,x,y,z}
- Now recursively define length of a string, L: Σ*→Nwhere(1) L(λ)=0 ; (2) L(wx)=L(w)+1
- String Catenation (“•”)(1) If uΣ*, then u•λ=u(2) If u,wΣ* and xΣ, then u•(wx)=(u•w)x

UCI ICS/Math 6D

Recursively Defined Sets

- Always (1) Basis Step and (2) Recursive Step
- Well-Formed Boolean Formula
- T, F, and s, where s is a propositional variable are all well-formed formula (WFF).
- If E and F are WFF’s, then (¬E), (EF), (EF), (EF), and (E↔F) are all WFF’s.
- Well-Formed Arithmetic Expression
- x is a well-formed arithmetic expression (WFA) if x is either a numeral or a variable.
- If F and G are WFA’s, then (F+G), (F-G), (F*G), (F/G), and (EF) are all WFA’s.

UCI ICS/Math 6D

...

Recursively Defined Structures:Rooted Trees- Rooted Trees(1) A single vertex, r, is a rooted tree with root r.(2) Suppose that T1,T2,…,Tn are rooted trees with roots r1,r2,…,rnrespectively. Then the graph formed by starting with a root,r, which is not in any of these trees and adding an edge fromr to each of these roots is also a rooted tree, whose root is r.
- Basis Step 1 Step 2

UCI ICS/Math 6D

Recursively Defined Structures:Extended Binary Trees

- Extended Binary Trees(1) The empty set is an Extended Binary Tree(2) If T1and T2 are extended binary trees, then the following tree, denoted T1•T2 , is also an extended binary tree: pick a new root
- r, and attach T1 as the left subtree and T2 as the right subtree.
- Step 1 Step 2 Step 3

UCI ICS/Math 6D

Full Binary Trees

- Full Binary Trees(1) A single vertex is a Full Binary Tree(2) If T1and T2 are full binary trees, then the following tree, denotedT1•T2 , is also a full binary tree: pick a new root, r, and attach T1 as the left subtree and attach T2 as the right subtree.
- (Definition change only in the base case, but unlike Extended Binary
- Trees, Full Binary Tree has exactly 0 or 2 child-nodes)
- Base Step 1 Step 2

UCI ICS/Math 6D

(Recursive) Definitions of Functions on Full Binary Trees

- Definition of Height, h(T), of a Full Binary Tree T:(1) If T has a single (root) node/vertex then h(T)=0.(2) O/w h(T1•T2 )=1+max(h(T1),h(T2 ))
- The Number of vertices, n(T), of a Full Binary Tree, T, is given by(1) If T has a single (root) node/vertex, n(T)=1.(2) n(T1•T2 )=1+n(T1)+n(T2 )

UCI ICS/Math 6D

Structural Induction

- If a set is recursively defined, to show a predicate true for all elements in the set one needs to:
- (1) Show the predicate true on all base cases;
- (2) Show that if the predicate is true for each of the elements used to construct a new element, then the same predicate is also true for that new element.
- E.g. to prove P(T) holds for all T∈FBT, these steps are:
- (1) showing P(vertex) holds, because base case of FBT definition is just a vertex
- (2) Showing that if P(T1) and P(T2) then P(T1•T2 ), because the recursive clause of FBT definition defines a new FBT as T1•T2 .
- Example: We’ll show that if T is a full binary tree, then n(T) ≤ 2h(T)+1-1
- (proof on next slide)

UCI ICS/Math 6D

Structural Induction Example

- Thrm: If T is a full binary tree, then n(T)≤2h(T)+1-1
- Proof:
- Basis Step: If T is just the root vertex,
- n(T)=1, h(T)=0 and therefore n(T)=1 ≤ 20+1-1 = 1
- Inductive Step: When T= T1•T2 , we compute
- n(T)=1+n(T1)+n(T2) Definition of n(T) ≤ 1+(2h(T1)+1-1)+(2h(T2)+1-1) Inductive hypothesis ≤ 2·max(2h(T1)+1,2h(T2)+1)-1 Arithmetic
- = 2·21+max(h(T1),h(T2)) -1 Arithmetic
- = 2·2h(T)-1 Definition of h(T)

UCI ICS/Math 6D

Recursive Algorithms

- An algorithm is “recursive” if it solves a problem by reducing it to an instance of the same problem with smaller input.
- Examples:
- procedure factorial (n: nonnegative integer)if n=0 then factorial(n):=1else factorial(n):=n ·factorial(n-1)
- procedure power(a: nonzero real, n: nonnegative integer)if n=0 then power(a,n):=1else power(a,n):=a·power(a,n-1)
- procedure gcd(a,b: nonnegative integers with a<b)if a=0 then gcd(a,b):=belse gcd(a,b):=gcd(b mod a, a)
- procedure fibonacci (n: nonnegative integer)if n≤1 then fibonacci(n):=1else fibonacci (n):=fibonacci (n-1)+fibonacci (n-2)

UCI ICS/Math 6D

Download Presentation

Connecting to Server..