Professional Documents
Culture Documents
Inductive Rule
For n>1, Fib(n) = Fib(n-1) + Fib(n-2)
n 0 1 2 3 4 5 6 7
Fib(n) 0 1 1 2 3 5 8 13
Sneezwort (Achilleaptarmica)
AC AB
AB BC
A B C
AC
2
BC
AC AB BC
2
1
BC BC BC
2 1 0 1 5
1.61803398875
2
Expanding Recursively
1
1
1
1
1
1
1
1
1
1
1
1
Continued Fraction Representation
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1....
Continued Fraction Representation
1 5 1
1
2 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 ....
1,1,2,3,5,8,13,21,34,55,….
2/1 = 2
3/2 = 1.5
5/3 = 1.666…
8/5 = 1.6
13/8 = 1.625
21/13 = 1.6153846…
34/21 = 1.61904…
=
1.6180339887498948482045
How to divide polynomials?
1 1 + X + X2
?
1–X 1–X 1
-(1 – X)
X
-(X – X2)
X2
-(X2 – X3)
X3 …
= 1 + X + X 2 + X 3 + X 4 + X5 + X 6 + X 7 + …
1
1 + X1 + X2 + X3 + … + Xn + ….. =
1-X
(1-X) ( 1 + X1 + X2 + X 3 + … + Xn + … )
= 1 + X1 + X 2 + X 3 + … + Xn + Xn+1 + ….
- X1 - X2 - X 3 - … - Xn-1 – Xn - Xn+1 - …
= 1
1
1 + X1 + X2 + X3 + … + Xn + ….. =
1-X
1 + X + X2 + …
1–X 1
-(1 – X)
X
-(X – X2)
X2
-(X2 – X3)
X3 …
Something a bit more complicated
3X4 + 2X5
-(3X4 – 3X5 – 3X6)
5X5 + 3X6
-(5X5 – 5X6 – 5X7)
8X6 + 5X7
-(8X6 – 8X7 – 8X8)
Hence
X
1 – X – X2
= F0 1 + F1 X1 + F2 X2 +F3 X3 + F4 X4 +
F5 X5 + F 6 X6 + …
Going the Other Way
F0 = 0, F1 = 1
(1 - X- X2)
( F0 1 + F1 X1 + F2 X2 + … + Fn-2 Xn-2 + Fn-1 Xn-1 + Fn Xn + …
Going the Other Way
(1 - X- X2)
( F0 1 + F1 X1 + F2 X2 + … + Fn-2 Xn-2 + Fn-1 Xn-1 + Fn Xn + …
= F0 1 + ( F1 – F0 ) X1 F0 = 0, F1 = 1
=X
Thus
F0 1 + F1 X1 + F2 X2 + … + Fn-1 Xn-1 + Fn Xn + …
X
=
1 – X – X2
= n=0..∞ ? Xn
1
=
(1 – aX)(1-bX)
n+1 – (--1)n+1
= n=0.. ∞ Xn
√5
1 x x 2
i 0
x
1 1
i
x
i i
1 x x 5
2
i 0
Leonhard Euler (1765)
J. P. M. Binet (1843)
A de Moivre (1730)
5
i
i 0
(1 + aX1 + a2X2 + … + anXn + …..) (1 + bX1 + b2X2 + … + bnXn + …..) =
1
=
(1 – aX)(1-bX)
Substituting Y = aX …
1
1 + aX1 + a2X2 + a3X 3 + … + anXn + ….. =
1 - aX
1
(1 – aX)(1-bX)
Geometric Series
(Quadratic Form)
(1 + aX1 + a2X2 + … + anXn + …..) (1 + bX1 + b2X2 + … + bnXn + …..) =
1 + c1X1 + .. + ck Xk + …
cn =
If a = b then
cn = (n+1)(an)
= - bn+1 + an+1
= an+1 – bn+1
(1 + aX1 + a2X2 + … + anXn + …..) (1 + bX1 + b2X2 + … + bnXn + …..) =
1 + c1X1 + .. + ck Xk + …
if a b then
cn = an+1 – bn+1
a- b
a0bn + a1bn-1 +… aibn-i… + an-1b1 + anb0
(1 + aX1 + a2X2 + … + anXn + …..) (1 + bX1 + b2X2 + … + bnXn + …..) =
1
=
(1 – aX)(1-bX)
or n=0.. (n+1)an Xn
when a=b
Example: f5 = 5
Sequences That Sum To n
Example: f5 = 5
4= 2+2
2+1+1
1+2+1
1+1+2
1+1+1+1
Sequences That Sum To n
f1 f3
f2
Sequences That Sum To n
f1 = 1 f3 = 2
0 = the empty sum 2=1+1
f2 = 1 2
1=1
Sequences That Sum To n
fn+1 = fn + fn-1
Sequences That Sum To n
fn+1 = fn + fn-1
# of # of
sequences sequences
beginning beginning
with a 1 with a 2
Fibonacci Numbers Again
fn+1 = fn + fn-1
f1 = 1 f2 = 1
Visual Representation: Tiling
Some examples:
F2n = F1 + F3 + F5 + … + F2n-1
m n
m-1 n-1
(Fn)2 = Fn-1 Fn+1 + (-1)n-1
(Fn)2 = Fn-1 Fn+1 + (-1)n-1
n-1
n-1
n-1
(Fn)2 = Fn-1 Fn+1 + (-1)n-1
n even
n odd
The Fibonacci Quarterly
Vector Programs
< * , * , * , * , *, *, . . . . . . . . . >
0 1 2 3 4 5.........
Vector Programs
Let k stand for a scalar constant
<k> will stand for the vector <k,0,0,0,…>
<0> = <0,0,0,0,….>
<1> = <1,0,0,0,…>
Example: Store
V! := <6>; V! = <6,0,0,0,..>
V! := RIGHT(V!) + <42>; V! = <42,6,0,0,..>
V! := RIGHT(V!) + <2>; V! = <2,42,6,0,..>
V! := RIGHT(V!) + <13>; V!= <13,2,42,6,.>
Example: Store
V! := <1>; V! = <1,0,0,0,..>
Vector programs
can be implemented
by polynomials!
Programs -----> Polynomials
<0> is represented by 0
<k> is represented by k
Example:
V! := <1>; PV := 1;
Loop n times:
V! := V! + RIGHT(V!); PV := PV + PV X;
Example:
V! := <1>; PV := 1;
Loop n times:
V! := V! + RIGHT(V!); PV := PV (1+ X);
Example:
V! := <1>;
W! := PREFIXSUM(V!)
V! = <1, 4, 5, 0, 6, …>
V! := <1> ;
Loop k times: V! := PREFIXSUM(V!) ;
0 k’th Avenue
1
2
3
4
Al Karaji Perfect Squares
Zero_Ave := PREFIXSUM(<1>);
First_Ave := PREFIXSUM(Zero_Ave);
Second_Ave :=PREFIXSUM(First_Ave);
is represented by
PW = PV / (1-X)
= PV (1+X+X +X + ….. )
2 3
Al-Karaji Program
Zero_Ave = 1/(1-X);
First_Ave = 1/(1-X)2;
Second_Ave = 1/(1-X)3;
RIGHT(Second_Ave) = X/(1-X)3
Output = 1/(1-X)3 + X/(1-X)3 =
(1-X)/(1-X)3 + 2X/(1-X)3
= (1+X)/(1-X)3
(1+X)/(1-X)3
Zero_Ave := PREFIXSUM(<1>);
First_Ave := PREFIXSUM(Zero_Ave);
Second_Ave :=PREFIXSUM(First_Ave);
Output:=
RIGHT(Second_Ave) + Second_Ave
Second_Ave = <1, 3, 6, 10, 15,.
RIGHT(Second_Ave) = <0, 1, 3, 6, 10,.
Output = <1, 4, 9, 16, 25
(1+X)/(1-X)3
outputs <1, 4, 9, ..>
X(1+X)/(1-X)3
outputs <0, 1, 4, 9, ..>
Sk X k
( 1 + X + X 2 + X3 + X4 + . . . . ) n ?
( 1 + X + X 2 + X3 + X4 + . . . . ) n ?
n k 1
n - 1
( 1 + X + X 2 + X3 + X4 + . . . . ) n =
1 n k 1 k
n X
1 X k 0 n -1
Using pirates and gold we
found that:
1
n k 1 k
n X
1 X k 0 n -1
THUS:
1
k 3 k
4
X
1 X k 0 3
Vector programs -> Polynomials
-> Closed form expression
REFERENCES