In mathematics, Zeckendorf's theorem, named after Belgian amateur mathematician Edouard Zeckendorf, is a theorem about the representation of integers as sums of Fibonacci numbers.
Zeckendorf's theorem states that every positive integer can be represented uniquely as the sum of one or more distinct Fibonacci numbers in such a way that the sum does not include any two consecutive Fibonacci numbers. More precisely, if is any positive integer, there exist positive integers, with, such that
N=
k | |
\sum | |
i=0 |
F | |
ci |
,
For example, the Zeckendorf representation of 64 is
.
There are other ways of representing 64 as the sum of Fibonacci numbers
but these are not Zeckendorf representations because 34 and 21 are consecutive Fibonacci numbers, as are 5 and 3.
For any given positive integer, its Zeckendorf representation can be found by using a greedy algorithm, choosing the largest possible Fibonacci number at each stage.
While the theorem is named after the eponymous author who published his paper in 1972, the same result had been published 20 years earlier by Gerrit Lekkerkerker.[1] As such, the theorem is an example of Stigler's Law of Eponymy.
Zeckendorf's theorem has two parts:
The first part of Zeckendorf's theorem (existence) can be proven by induction. For it is clearly true (as these are Fibonacci numbers), for we have . If is a Fibonacci number then there is nothing to prove. Otherwise there exists such that . Now suppose each positive integer has a Zeckendorf representation (induction hypothesis) and consider . Since, has a Zeckendorf representation by the induction hypothesis. At the same time, (we apply the definition of Fibonacci number in the last equality), so the Zeckendorf representation of does not contain, and hence also does not contain . As a result, can be represented as the sum of and the Zeckendorf representation of, such that the Fibonacci numbers involved in the sum are distinct.
The second part of Zeckendorf's theorem (uniqueness) requires the following lemma:
Lemma: The sum of any non-empty set of distinct, non-consecutive Fibonacci numbers whose largest member is is strictly less than the next larger Fibonacci number .
The lemma can be proven by induction on .
Now take two non-empty sets
S
T
S'
T'
S
T
S'=S\setminusT
T'=T\setminusS
S
T
S\capT
S'
T'
Now we will show by contradiction that at least one of
S'
T'
S'
T'
S'
T'
S'
T'
S'
T'
S'
T'
Now assume (again without loss of generality) that
S'
S'
T'
T'
S'=T'=\emptyset
S=T
One can define the following operation
a\circb
kF | |
a=\sum | |
ci |
(ci\ge2)
lF | |
b=\sum | |
dj |
(dj\ge2)
a\circ
lF | |
b=\sum | |
ci+dj |
.
For example, the Zeckendorf representation of 2 is
F3
F4+F2
F1
2\circ4=F3+4+F3+2=13+5=18.
(The product is not always in Zeckendorf form. For example,
4\circ4=(F4+F2)\circ(F4+F2)=F4+4+2F4+2+F2+2=21+2 ⋅ 8+3=40=F9+F5+F2.
A simple rearrangement of sums shows that this is a commutative operation; however, Donald Knuth proved the surprising fact that this operation is also associative.[2]
The Fibonacci sequence can be extended to negative index using the rearranged recurrence relation
Fn-2=Fn-Fn-1,
F-n=(-1)n+1Fn.
Any integer can be uniquely represented[3] as a sum of negafibonacci numbers in which no two consecutive negafibonacci numbers are used. For example:
, for example, so the uniqueness of the representation does depend on the condition that no two consecutive negafibonacci numbers are used.
This gives a system of coding integers, similar to the representation of Zeckendorf's theorem. In the string representing the integer , the th digit is 1 if appears in the sum that represents ; that digit is 0 otherwise. For example, 24 may be represented by the string 100101001, which has the digit 1 in places 9, 6, 4, and 1, because . The integer is represented by a string of odd length if and only if .