Fibonacci number
2008/9 Schools Wikipedia Selection. Related subjects: Mathematics
In mathematics, the Fibonacci numbers are a sequence of numbers named after Leonardo of Pisa, known as Fibonacci, whose Liber Abaci published in 1202 introduced the sequence to Western European mathematics.
The sequence is defined by the following recurrence relation:
That is, after two starting values, each number is the sum of the two preceding numbers. The first Fibonacci numbers (sequence A000045 in OEIS), also denoted as Fn, for n = 0, 1, 2, … , are:
- 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, ...
Every 3rd number of the sequence is even and more generally, every kth number of the sequence is a multiple of Fk.
The sequence named after Fibonacci was first described in Indian mathematics.
The sequence extended to negative index n satisfies Fn = Fn−1 + Fn−2 for all integers n, and F-n = (−1)n+1Fn:
.., -8, 5, -3, 2, -1, 1, followed by the sequence above.
Origins
The Fibonacci numbers first appeared, under the name mātrāmeru (mountain of cadence), in the work of the Sanskrit grammarian Pingala (Chandah-shāstra, the Art of Prosody, 450 or 200 BC). Prosody was important in ancient Indian ritual because of an emphasis on the purity of utterance. The Indian mathematician Virahanka (6th century AD) showed how the Fibonacci sequence arose in the analysis of metres with long and short syllables. Subsequently, the Jain philosopher Hemachandra (c. 1150) composed a well-known text on these. A commentary on Virahanka's work by Gopāla in the 12th century also revisits the problem in some detail.
Sanskrit vowel sounds can be long (L) or short (S), and Virahanka's analysis, which came to be known as mātrā-vṛtta, wishes to compute how many metres (mātrās) of a given overall length can be composed of these syllables. If the long syllable is twice as long as the short, the solutions are:
- 1 mora: S (1 pattern)
- 2 morae: SS; L (2)
- 3 morae: SSS, SL; LS (3)
- 4 morae: SSSS, SSL, SLS; LSS, LL (5)
- 5 morae: SSSSS, SSSL, SSLS, SLSS, SLL; LSSS, LSL, LLS (8)
- 6 morae: SSSSSS, SSSSL, SSSLS, SSLSS, SLSSS, LSSSS, SSLL, SLSL, SLLS, LSSL, LSLS, LLSS, LLL (13)
- 7 morae: SSSSSSS, SSSSSL, SSSSLS, SSSLSS, SSLSSS, SLSSSS, LSSSSS, SSSLL, SSLSL, SLSSL, LSSSL, SSLLS, SLSLS, LSSLS, SLLSS, LSLSS, LLSSS, SLLL, LSLL, LLSL, LLLS (21)
- 2 morae: SS; L (2)
A pattern of length n can be formed by adding S to a pattern of length n−1, or L to a pattern of length n−2; and the prosodicists showed that the number of patterns of length n is the sum of the two previous numbers in the sequence. Donald Knuth reviews this work in The Art of Computer Programming as equivalent formulations of the bin packing problem for items of lengths 1 and 2.
In the West, the sequence was first studied by Leonardo of Pisa, known as Fibonacci, in his Liber Abaci ( 1202). He considers the growth of an idealised (biologically unrealistic) rabbit population, assuming that:
- in the first month there is just one newly-born pair,
- new-born pairs become fertile from after their second month
- each month every fertile pair begets a new pair, and
- the rabbits never die
Let the population at month n be F(n). At this time, only rabbits who were alive at month n−2 are fertile and produce offspring, so F(n−2) pairs are added to the current population of F(n−1). Thus the total is F(n) = F(n−1) + F(n−2).
Relation to the golden ratio
Closed form expression
Like every sequence defined by linear recurrence, the Fibonacci numbers have a closed-form solution. It has become known as Binet's formula, even though it was already known by Abraham de Moivre:
- where is the golden ratio (note, that , as can be seen from the defining equation below).
The Fibonacci recursion
is similar to the defining equation of the golden ratio in the form
which is also known as the generating polynomial of the recursion.
Proof by induction
Any root of the equation above satisfies and multiplying by shows:
By definition is a root of the equation, and the other root is . Therefore:
and
Both and are geometric series (for n = 1, 2, 3, ...) that satisfy the Fibonacci recursion. The first series grows exponentially; the second exponentially tends to zero, with alternating signs. Because the Fibonacci recursion is linear, any linear combination of these two series will also satisfy the recursion. These linear combinations form a two-dimensional linear vector space; the original Fibonacci sequence can be found in this space.
Linear combinations of series and , with coefficients a and b, can be defined by
- for any real
All thus-defined series satisfy the Fibonacci recursion
Requiring that Fa,b(0) = 0 and Fa,b(1) = 1 yields and , resulting in the formula of Binet we started with. It has been shown that this formula satisfies the Fibonacci recursion. Furthermore, an explicit check can be made:
and
establishing the base cases of the induction, proving that
- for all
Therefore, for any two starting values, a combination a,b can be found such that the function is the exact closed formula for the series.
Computation by rounding
Since for all , the number F(n) is the closest integer to Therefore it can be found by rounding, or in terms of the floor function:
Limit of consecutive quotients
Johannes Kepler observed that the ratio of consecutive Fibonacci numbers converges. He wrote that "as 5 is to 8 so is 8 to 13, practically, and as 8 is to 13, so is 13 to 21 almost”, and concluded that the limit approaches the golden ratio .
This convergence does not depend on the starting values chosen, excluding 0, 0.
Proof:
It follows from the explicit formula that for any real
because and thus
Decomposition of powers of the golden ratio
Since the golden ratio satisfies the equation
this expression can be used to decompose higher powers as a linear function of lower powers, which in turn can be decomposed all the way down to a linear combination of and 1. The resulting recurrence relationships yield Fibonacci numbers as the linear coefficients, thus closing the loop:
This expression is also true for if the Fibonacci sequence is extended to negative integers using the Fibonacci rule
Matrix form
A 2-dimensional system of linear difference equations that describes the Fibonacci sequence is
or
The eigenvalues of the matrix A are and , and the elements of the eigenvectors of A, and , are in the ratios and .
This matrix has a determinant of −1, and thus it is a 2×2 unimodular matrix. This property can be understood in terms of the continued fraction representation for the golden ratio:
The Fibonacci numbers occur as the ratio of successive convergents of the continued fraction for , and the matrix formed from successive convergents of any continued fraction has a determinant of +1 or −1.
The matrix representation gives the following closed expression for the Fibonacci numbers:
Taking the determinant of both sides of this equation yields Cassini's identity
Additionally, since AnAm = Am + n for any square matrix A, the following identities can be derived:
For the first one of these, there is a related identity:
For another way to derive the F2n + k formulas see the "EWD note" by Dijkstra.
Recognizing Fibonacci numbers
Occasionally, the question may arise whether a positive integer z is a Fibonacci number. Since F(n) is the closest integer to , the most straightforward, brute-force test is the identity
which is true if and only if z is a Fibonacci number.
Alternatively, an elegant algebraic test states, that a positive integer z is a Fibonacci number if (and only if) or is a perfect square.
A slightly more sophisticated test uses the fact that the convergents of the continued fraction representation of are ratios of successive Fibonacci numbers, that is the inequality
(with coprime positive integers p, q) is true if and only if p and q are successive Fibonacci numbers. From this one derives the criterion that z is a Fibonacci number if and only if the closed interval
contains a positive integer.
Identities
- F(n + 1) = F(n) + F(n − 1)
- F(0) + F(1) + F(2) + … + F(n) = F(n + 2) − 1
- F(1) + 2 F(2) + 3 F(3) + … + n F(n) = n F(n + 2) − F(n + 3) + 2
- F(0)² + F(1)² + F(2)² + … + F(n)² = F(n) F(n + 1)
These identities can be proven using many different methods. But, among all, we wish to present an elegant proof for each of them using combinatorial arguments here. In particular, F(n) can be interpreted as the number of ways summing 1's and 2's to n − 1, with the convention that F(0) = 0, meaning no sum will add up to −1, and that F(1) = 1, meaning the empty sum will "add up" to 0. Here the order of the summands matters. For example, 1 + 2 and 2 + 1 are considered two different sums and are counted twice.
Proof of the first identity
Without loss of generality, we may assume n ≥ 1. Then F(n + 1) counts the number of ways summing 1's and 2's to n.
When the first summand is 1, there are F(n) ways to complete the counting for n − 1; and when the first summand is 2, there are F(n − 1) ways to complete the counting for n − 2. Thus, in total, there are F(n) + F(n − 1) ways to complete the counting for n.
Proof of the second identity
We count the number of ways summing 1's and 2's to n + 1 such that at least one of the summands is 2.
As before, there are F(n + 2) ways summing 1's and 2's to n + 1 when n ≥ 0. Since there is only one sum of n + 1 that does not use any 2, namely 1 + … + 1 (n + 1 terms), we subtract 1 from F(n + 2).
Equivalently, we can consider the first occurrence of 2 as a summand. If, in a sum, the first summand is 2, then there are F(n) ways to the complete the counting for n − 1. If the second summand is 2 but the first is 1, then there are F(n − 1) ways to complete the counting for n − 2. Proceed in this fashion. Eventually we consider the (n + 1)th summand. If it is 2 but all of the previous n summands are 1's, then there are F(0) ways to complete the counting for 0. If a sum contains 2 as a summand, the first occurrence of such summand must take place in between the first and (n + 1)th position. Thus F(n) + F(n − 1) + … + F(0) gives the desired counting.
Proof of the third identity
This identity can be established in two stages. First, we count the number of ways summing 1s and 2s to −1, 0, …, or n + 1 such that at least one of the summands is 2.
By our second identity, there are F(n + 2) − 1 ways summing to n + 1; F(n + 1) − 1 ways summing to n; …; and, eventually, F(2) − 1 way summing to 1. As F(1) − 1 = F(0) = 0, we can add up all n + 1 sums and apply the second identity again to obtain
- [F(n + 2) − 1] + [F(n + 1) − 1] + … + [F(2) − 1]
- = [F(n + 2) − 1] + [F(n + 1) − 1] + … + [F(2) − 1] + [F(1) − 1] + F(0)
- = F(n + 2) + [F(n + 1) + … + F(1) + F(0)] − (n + 2)
- = F(n + 2) + F(n + 3) − (n + 2).
- = [F(n + 2) − 1] + [F(n + 1) − 1] + … + [F(2) − 1] + [F(1) − 1] + F(0)
On the other hand, we observe from the second identity that there are
- F(0) + F(1) + … + F(n − 1) + F(n) ways summing to n + 1;
- F(0) + F(1) + … + F(n − 1) ways summing to n;
……
- F(0) way summing to −1.
Adding up all n + 1 sums, we see that there are
- (n + 1) F(0) + n F(1) + … + F(n) ways summing to −1, 0, …, or n + 1.
Since the two methods of counting refer to the same number, we have
- (n + 1) F(0) + n F(1) + … + F(n) = F(n + 2) + F(n + 3) − (n + 2)
Finally, we complete the proof by subtracting the above identity from n + 1 times the second identity.
Identity for doubling n
There is a very simple formula for doubling n :.
Another identity useful for calculating Fn for large values of n is
for all integers n and k. Dijkstra points out that doubling identities of this type can be used to calculate Fn using O(log n) arithmetic operations. Notice that, with the definition of Fibonacci numbers with negative n given in the introduction, this formula reduces to the double n formula when k = 0.
(From practical standpoint it should be noticed that the calculation involves manipulation of numbers with length (number of digits) . Thus the actual performance depends mainly upon efficiency of the implemented long multiplication, and usually is or .)
Other identities
Other identities include relationships to the Lucas numbers, which have the same recursive properties but start with L0=2 and L1=1. These properties include F2n=FnLn.
There are also scaling identities, which take you from Fn and Fn+1 to a variety of things of the form Fan+b; for instance
by Cassini's identity.
These can be found experimentally using lattice reduction, and are useful in setting up the special number field sieve to factorize a Fibonacci number. Such relations exist in a very general sense for numbers defined by recurrence relations, see the section on multiplication formulae under Perrin numbers for details.
Power series
The generating function of the Fibonacci sequence is the power series
This series has a simple and interesting closed-form solution for x < 1/
This solution can be proven by using the Fibonacci recurrence to expand each coefficient in the infinite sum defining s(x):
Solving the equation s(x) = x + xs(x) + x2s(x) for s(x) results in the closed form solution.
In particular, math puzzle-books note the curious value , or more generally
for all integers k > = 0.
Conversely,
Reciprocal sums
Infinite sums over reciprocal Fibonacci numbers can sometimes be evaluated in terms of theta functions. For example, we can write the sum of every odd-indexed reciprocal Fibonacci number as
and the sum of squared reciprocal Fibonacci numbers as
If we add 1 to each Fibonacci number in the first sum, there is also the closed form
and there is a nice nested sum of squared Fibonacci numbers giving the reciprocal of the golden ratio,
Results such as these make it plausible that a closed formula for the plain sum of reciprocal Fibonacci numbers could be found, but none is yet known. Despite that, the reciprocal Fibonacci constant
has been proved irrational by Richard André-Jeannin.
Primes and divisibility
A Fibonacci prime is a Fibonacci number that is prime (sequence A005478 in OEIS). The first few are:
- 2, 3, 5, 13, 89, 233, 1597, 28657, 514229, …
Fibonacci primes with thousands of digits have been found, but it is not known whether there are infinitely many. They must all have a prime index, except F4 = 3.
Any three consecutive Fibonacci numbers, taken two at a time, are relatively prime: that is,
- gcd(Fn,Fn+1) = gcd(Fn,Fn+2) = 1.
More generally,
- gcd(Fn, Fm) = Fgcd(n,m).
A proof of this striking fact is online at Harvey Mudd College's Fun Math site
Divisibility by prime numbers
If p is a prime number then
where is the Legendre symbol. if p ≡ ±2 (mod 5), if p ≡ ±1 (mod 5), and .
For example,
Divisibility by 11
Right triangles
Starting with 5, every second Fibonacci number is the length of the hypotenuse of a right triangle with integer sides, or in other words, the largest number in a Pythagorean triple. The length of the longer leg of this triangle is equal to the sum of the three sides of the preceding triangle in this series of triangles, and the shorter leg is equal to the difference between the preceding bypassed Fibonacci number and the shorter leg of the preceding triangle.
The first triangle in this series has sides of length 5, 4, and 3. Skipping 8, the next triangle has sides of length 13, 12 (5 + 4 + 3), and 5 (8 − 3). Skipping 21, the next triangle has sides of length 34, 30 (13 + 12 + 5), and 16 (21 − 5). This series continues indefinitely. The triangle sides a, b, c can be calculated directly:
These formulas satisfy for all n, but they only represent triangle sides when n > 2.
Any four consecutive Fibonacci numbers Fn, Fn+1, Fn+2 and Fn+3 can also be used to generate a Pythagorean triple in a different way:
Example 1: let the Fibonacci numbers be 1, 2, 3 and 5. Then:
Example 2: let the Fibonacci numbers be 8, 13, 21 and 34. Then:
Magnitude of Fibonacci numbers
Since Fn is asymptotic to , the number of digits in the base b representation of is asymptotic to .
In base 10, for every integer greater than 1 there are 4 or 5 Fibonacci numbers with that number of digits, in most cases 5.
Applications
The Fibonacci numbers are important in the run-time analysis of Euclid's algorithm to determine the greatest common divisor of two integers: the worst case input for this algorithm is a pair of consecutive Fibonacci numbers.
Yuri Matiyasevich was able to show that the Fibonacci numbers can be defined by a Diophantine equation, which led to his original solution of Hilbert's tenth problem.
The Fibonacci numbers occur in the sums of "shallow" diagonals in Pascal's triangle and Lozanić's triangle (see "Binomial coefficient").
Every positive integer can be written in a unique way 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. This is known as Zeckendorf's theorem, and a sum of Fibonacci numbers that satisfies these conditions is called a Zeckendorf representation.
Fibonacci numbers are used by some pseudorandom number generators.
Fibonacci numbers are used in a polyphase version of the merge sort algorithm in which an unsorted list is divided into two lists whose lengths correspond to sequential Fibonacci numbers - by dividing the list so that the two parts have lengths in the approximate proportion φ. A tape-drive implementation of the polyphase merge sort was described in The Art of Computer Programming.
Fibonacci numbers arise in the analysis of the Fibonacci heap data structure.
A one-dimensional optimization method, called the Fibonacci search technique, uses Fibonacci numbers.
In music, Fibonacci numbers are sometimes used to determine tunings, and, as in visual art, to determine the length or size of content or formal elements. It is commonly thought that the first movement of Béla Bartók's Music for Strings, Percussion, and Celesta was structured using Fibonacci numbers.
Since the conversion factor 1.609344 for miles to kilometers is close to the golden ratio (denoted φ), the decomposition of distance in miles into a sum of Fibonacci numbers becomes nearly the kilometer sum when the Fibonacci numbers are replaced by their successors. This method amounts to a radix 2 number register in golden ratio base φ being shifted. To convert from kilometers to miles, shift the register down the Fibonacci sequence instead.
Fibonacci numbers in nature
Fibonacci sequences appear in biological settings, such as branching in trees, the fruitlets of a pineapple, an uncurling fern and the arrangement of a pine cone.. In addition, numerous poorly substantiated claims of Fibonacci numbers or golden sections in nature are found in popular sources, e.g. relating to the breeding of rabbits, the spirals of shells, and the curve of waves.
Przemyslaw Prusinkiewicz advanced the idea that real instances can be in part understood as the expression of certain algebraic constraints on free groups, specifically as certain Lindenmayer grammars.
A model for the pattern of florets in the head of a sunflower was proposed by H. Vogel in 1979. This has the form
- ,
where n is the index number of the floret and c is a constant scaling factor; the florets thus lie on Fermat's spiral. The divergence angle, approximately 137.51°, is the golden angle, dividing the circle in the golden ratio. Because this ratio is irrational, no floret has a neighbor at exactly the same angle from the centre, so the florets pack efficiently. Because the rational approximations to the golden ratio are of the form F(j):F(j+1), the nearest neighbors of floret number n are those at n±F(j) for some index j which depends on r, the distance from the centre. It is often said that sunflowers and similar arrangements have 55 spirals in one direction and 89 in the other (or some other pair of adjacent Fibonacci numbers), but this is true only of one range of radii, typically the outermost and thus most conspicuous.
Popular culture
Because the Fibonacci sequence is easy for non-mathematicians to understand, there are many examples of the Fibonacci numbers being used in popular culture.
Generalizations
The Fibonacci sequence has been generalized in many ways. These include:
- Extending to negative index n, satisfying Fn = Fn−1 + Fn−2 and, equivalently, F-n = (−1)n+1Fn
- Generalising the index from positive integers to real numbers using a modification of Binet's formula.
- Starting with other integers. Lucas numbers have L1 = 1, L2 = 3, and Ln = Ln−1 + Ln−2. Primefree sequences use the Fibonacci recursion with other starting points in order to generate sequences in which all numbers are composite.
- Letting a number be a linear function (other than the sum) of the 2 preceding numbers. The Pell numbers have Pn = 2Pn – 1 + Pn – 2.
- Not adding the immediately preceding numbers. The Padovan sequence and Perrin numbers have P(n) = P(n – 2) + P(n – 3).
- Generating the next number by adding 3 numbers (tribonacci numbers), 4 numbers (tetranacci numbers), or more.
- Adding other objects than integers, for example functions or strings -- one essential example is Fibonacci polynomials.
Numbers properties
Periodicity mod n: Pisano periods
It is easily seen that if the members of the Fibonacci sequence are taken mod n, the resulting sequence must be periodic with period at most n2. The lengths of the periods for various n form the so-called Pisano periods (sequence A001175 in OEIS). Determining the Pisano periods in general is an open problem, although for any particular n it can be solved as an instance of cycle detection.
The bee ancestry code
Fibonacci numbers also appear in the description of the reproduction of a population of idealized bees, according to the following rules:
- If an egg is laid by an unmated female, it hatches a male.
- If, however, an egg was fertilized by a male, it hatches a female.
Thus, a male bee will always have one parent, and a female bee will have two.
If one traces the ancestry of any male bee (1 bee), he has 1 female parent (1 bee). This female had 2 parents, a male and a female (2 bees). The female had two parents, a male and a female, and the male had one female (3 bees). Those two females each had two parents, and the male had one (5 bees). This sequence of numbers of parents is the Fibonacci sequence.
This is an idealization that does not describe actual bee ancestries. In reality, some ancestors of a particular bee will always be sisters or brothers, thus breaking the lineage of distinct parents.