Wednesday, 28 August 2019

logic - Paradox - What is wrong with this proof that proves a false assertion?



Theorem: Let an=an1+1,a1=1. For any n, in order to compute an, it is necessary to compute ai for each i=1,,n1, which takes Θ(n) time.



Proof: This is vacuously true for n=1. Assume true for n=k1. Prove true for n=k. In order to compute ak1+1, it is necessary to compute ak1. Then since ak=ak1+1, in order to compute ak, it is necessary to compute ak1. By the induction hypothesis, in order to compute ak1, it is necessary to compute ai for each i=1,,k2. Hence, in order to compute ak, it is necessary to compute ai for each i=1,k1. QED



What is wrong with this proof? It seems valid to me, even though the theorem is false.


Answer



In your induction step, you made the additional assumption (beyond the inductive hypothesis) that it was necessary to compute ak1 in order to compute ak. That's hardly the case, as simple inspection of the recursive definition gives us the closed-form definition an:=n for all n.


No comments:

Post a Comment

real analysis - How to find limhrightarrow0fracsin(ha)h

How to find lim without lhopital rule? I know when I use lhopital I easy get $$ \lim_{h\rightarrow 0}...