Note: this wiki is now retired and will no longer be updated!

The static final versions of the pages are left as a convenience for readers. Note that meta-pages such as "discussion," "history," etc., will not work.

SICP exercise 1.13

From Drewiki
Jump to: navigation, search


Prove that Fib(n) is the closest integer to

<math> \phi^n/\sqrt{5} </math>,


<math> \phi=(1+\sqrt{5})/2 </math>.

Hint: Let

<math> \psi=(1-\sqrt{5})/2 </math>

and use induction and the definition of the Fibonacci numbers to prove that

<math> Fib(n)=(\phi^n-\psi^n)/\sqrt{5} </math>.


This exercise is off-topic, having little or nothing to do with the subject of the book, but a proof by induction follows. We must show that the equality holds true for n=0 and n=1, and then show that if we assume it's true for n=i, it must also be true for n=i+1.

<math> Fib(0)=0 </math>


<math> (\phi^0-\psi^0)/\sqrt{5}=0 </math>


<math> Fib(1)=1 </math>


<math> (\phi-\psi)/\sqrt{5}=\sqrt{5}/\sqrt{5}=1 </math>

Now, by induction, we assume that

<math> Fib(n)=(\phi^n-\psi^n)/\sqrt{5} </math>

is true for all n up to and including <math>n=i+1</math>. We must now show that

<math> Fib(i+2)=(\phi^{i+2}-\psi^{i+2})/\sqrt{5}. </math>

We know, by the definition of Fib(n), that

<math> Fib(i+2)=Fib(i+1)+Fib(i) </math>

Then by substitution:

<math> Fib(i+2)=(\phi^{i+1}-\psi^{i+1})/\sqrt{5}+(\phi^i-\psi^i)/\sqrt{5}



Observe that

<math> 1+\phi=1+(1+\sqrt{5})/2



and also

<math> \phi^2=((1+\sqrt{5})/2)^2



Similarly, we can also easily prove that

<math> 1+\psi=\psi^2 </math>

Then, substituting back into the original equation we get:

<math> Fib(i+2)=(\phi^i\phi^2-\psi^i\psi^2)/\sqrt{5}



which proves, by induction, that

<math> Fib(n)=(\phi^n-\psi^n)/\sqrt{5} </math>


Hank Meuret pointed out a missing square in the <math>\phi^2</math> equation.

Personal tools