In mathematics, the Fibonacci numbers or Fibonacci series or Fibonacci sequence are the numbers in the following integer sequence:
- (sequence A000045 in OEIS)
By definition, the first two numbers in the Fibonacci sequence are 0 and 1, and each subsequent number is the sum of the previous two.
In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence relation
with seed values
The Fibonacci sequence is named after Leonardo of Pisa, who was known as Fibonacci. Fibonacci's 1202 book Liber Abaci introduced the sequence to Western European mathematics, although the sequence had been described earlier in Indian mathematics. By modern convention, the sequence begins either with F0 = 0 or with F1 = 1. The Liber Abaci began the sequence with F1 = 1, without an initial 0.
Fibonacci numbers are closely related to Lucas numbers in that they are a complementary pair of Lucas sequences. They are intimately connected with the golden ratio; for example, the closest rational approximations to the ratio are 2/1, 3/2, 5/3, 8/5, ... . Applications include computer algorithms such as the Fibonacci search technique and the Fibonacci heap data structure, and graphs called Fibonacci cubes used for interconnecting parallel and distributed systems. They also appear in biological settings, such as branching in trees, phyllotaxis (the arrangement of leaves on a stem), the fruit sprouts of a pineapple, the flowering of artichoke, an uncurling fern and the arrangement of a pine cone.
The Fibonacci sequence appears in Indian mathematics, in connection with Sanskrit prosody. In the Sanskrit oral tradition, there was much emphasis on how long (L) syllables mix with the short (S), and counting the different patterns of L and S within a given fixed length results in the Fibonacci numbers; the number of patterns that are m short syllables long is the Fibonacci number Fm + 1.
Susantha Goonatilake writes that the development of the Fibonacci sequence "is attributed in part to Pingala (200 BC), later being associated with Virahanka (c. 700 AD), Gopāla (c. 1135), and Hemachandra (c. 1150)". Parmanand Singh cites Pingala's cryptic formula misrau cha ("the two are mixed") and cites scholars who interpret it in context as saying that the cases for m beats (Fm+1) is obtained by adding a [S] to Fm cases and [L] to the Fm−1 cases. He dates Pingala before 450 BCE.
However, the clearest exposition of the series arises in the work of Virahanka (c. 700 AD), whose own work is lost, but is available in a quotation by Gopala (c. 1135):
- Variations of two earlier meters [is the variation]... For example, for [a meter of length] four, variations of meters of two [and] three being mixed, five happens. [works out examples 8, 13, 21]... In this way, the process should be followed in all mātrā-vṛttas [prosodic combinations].
The series is also discussed by Gopala (before 1135 AD) and by the Jain scholar Hemachandra (c. 1150).
In the West, the Fibonacci sequence first appears in the book Liber Abaci (1202) by Leonardo of Pisa, known as Fibonacci. Fibonacci considers the growth of an idealized (biologically unrealistic) rabbit population, assuming that: a newly born pair of rabbits, one male, one female, are put in a field; rabbits are able to mate at the age of one month so that at the end of its second month a female can produce another pair of rabbits; rabbits never die and a mating pair always produces one new pair (one male, one female) every month from the second month on. The puzzle that Fibonacci posed was: how many pairs will there be in one year?
- At the end of the first month, they mate, but there is still only 1 pair.
- At the end of the second month the female produces a new pair, so now there are 2 pairs of rabbits in the field.
- At the end of the third month, the original female produces a second pair, making 3 pairs in all in the field.
- At the end of the fourth month, the original female has produced yet another new pair, the female born two months ago produces her first pair also, making 5 pairs.
At the end of the nth month, the number of pairs of rabbits is equal to the number of new pairs (which is the number of pairs in month n − 2) plus the number of pairs alive last month (n − 1). This is the nth Fibonacci number.
The name "Fibonacci sequence" was first used by the 19th-century number theorist Édouard Lucas.
List of Fibonacci numbers
The first 21 Fibonacci numbers Fn for n = 0, 1, 2, ..., 20 are:
F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
The sequence can also be extended to negative index n using the re-arranged recurrence relation
which yields the sequence of "negafibonacci" numbers satisfying
Thus the bidirectional sequence is
F−8 F−7 F−6 F−5 F−4 F−3 F−2 F−1 F0 F1 F2 F3 F4 F5 F6 F7 F8 −21 13 −8 5 −3 2 −1 1 0 1 1 2 3 5 8 13 21
Occurrences in mathematics
The Fibonacci numbers can be found in different ways in the sequence of binary strings.
- The number of binary strings of length n without consecutive 1s is the Fibonacci number Fn+2. For example, out of the 16 binary strings of length 4, there are F6 = 8 without consecutive 1s – they are 0000, 0100, 0010, 0001, 0101, 1000, 1010 and 1001. By symmetry, the number of strings of length n without consecutive 0s is also Fn+2.
- The number of binary strings of length n without an odd number of consecutive 1s is the Fibonacci number Fn+1. For example, out of the 16 binary strings of length 4, there are F5 = 5 without an odd number of consecutive 1s – they are 0000, 0011, 0110, 1100, 1111.
- The number of binary strings of length n without an even number of consecutive 0s or 1s is 2Fn. For example, out of the 16 binary strings of length 4, there are 2F4 = 6 without an even number of consecutive 0s or 1s – they are 0001, 1000, 1110, 0111, 0101, 1010.
Relation to the golden ratio
Like every sequence defined by a linear recurrence with constant coefficients, 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:
To see this, note that φ and ψ are both solutions of the equations
so the powers of φ and ψ satisfy the Fibonacci recursion. In other words
It follows that for any values a and b, the sequence defined by
satisfies the same recurrence
If a and b are chosen so that U0 = 0 and U1 = 1 then the resulting sequence Un must be the Fibonacci sequence. This is the same as requiring a and b satisfy the system of equations:
which has solution
producing the required formula.
Computation by rounding
for all n ≥ 0, the number Fn is the closest integer to
Therefore it can be found by rounding, or in terms of the floor function:
Or the nearest integer function:
Similarly, if we already know that the number F > 1 is a Fibonacci number, we can determine its index within the sequence by
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. For example, the initial values 19 and 31 generate the sequence 19, 31, 50, 81, 131, 212, 343, 555 ... etc. The ratio of consecutive terms in this sequence shows the same convergence towards the golden ratio.
In fact this holds for any sequence which satisfies the Fibonacci recurrence other than a sequence of 0's. This can be derived from Binet's formula.
Another consequence is that the limit of the ratio of two Fibonacci numbers offset by a particular finite deviation in index corresponds to the golden ratio raised by that deviation. Or, in other words:
Decomposition of powers of the golden ratio
Since the golden ratio satisfies the equation
this expression can be used to decompose higher powers φn 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:
This equation can be proved by induction on n.
This expression is also true for n < 1 if the Fibonacci sequence Fn is extended to negative integers using the Fibonacci rule
A 2-dimensional system of linear difference equations that describes the Fibonacci sequence is
The eigenvalues of the matrix A are and , and the elements of the eigenvectors of A, and , are in the ratios φ and 1−φ Using these facts, and the properties of eigenvalues, we can derive a direct formula for the nth element in the Fibonacci series as an analytic function of n:
The 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 for any square matrix A, the following identities can be derived:
In particular, with m = n,
These last two identities provide a way to compute Fibonacci numbers recursively in O(log(n)) arithmetic operations and in time O(M(n) log(n)), where M(n) is the time for the multplication of two numbers of n digits. This matches the time for computing the nth Fibonacci number from the closed-form matrix formula, but with fewer redundant steps if one avoids to recompute an already computed Fibonacci number (recursion with memorization).
Recognizing Fibonacci numbers
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. In this formula, F(n) can be computed rapidly using any of the previously discussed closed-form expressions.
One implication of the above expression is this: if it is known that a number z is a Fibonacci number, we may determine an n such that F(n) = z by the following:
Alternatively, a positive integer z is a Fibonacci number if and only if one of 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. For z ≥ 2, it is easy to show that this interval contains at most one integer, and in the event that z is a Fibonacci number, the contained integer is equal to the next successive Fibonacci number after z. Somewhat remarkably, this result still holds for the case z = 1, but it must be stated carefully since 1 appears twice in the Fibonacci sequence, and thus has two distinct successors.
Most identities involving Fibonacci numbers can be proven using combinatorial arguments using the fact that Fn can be interpreted as the number of sequences of 1s and 2s that sum to n − 1. This can be taken as the definition of Fn, with the convention that F0 = 0, meaning no sum will add up to −1, and that F1 = 1, meaning the empty sum will "add up" to 0. Here the order of the summand matters. For example, 1 + 2 and 2 + 1 are considered two different sums.
For example, the recurrence relation
or in words, the nth Fibonacci number is the sum of the previous two Fibonacci numbers, may be shown by dividing the F(n) sums of 1s and 2s that add to n−1 into two non-overlapping groups. One group contains those sums whose first term is 1 and the other those sums whose first term is 2. In the first group the remaining terms add to n − 2, so it has F(n−1) sums, and in the second group the remaining terms add to n−3, so there are F(n−2) sums. So there are a total of F(n−1) + F n−2) sums altogether, showing this is equal to F (n).
Similarly, it may be shown that the sum of the first Fibonacci numbers up to the nth is equal to the (n + 2)-nd Fibonacci number minus 1. In symbols:
This is done by dividing the sums adding to n+1 in a different way, this time by the location of the first 2. Specifically, the first group consists of those sums that start with 2, the second group those that start 1+2, the third 1+1+2, and so on, until the last group which consists of the single sum where only 1's are used. The number of sums in the first group is F(n), F(n − 1) in the second group, and so on, with 1 sum in the last group. So the total number of sums is F(n) + F(n−1) + ... + F(1)+1 and therefore this quantity is equal to F(n+2)
A similar argument, grouping the sums by the position of the first 1 rather than the first 2, gives two more identities:
In words, the sum of the first Fibonacci numbers with odd index up to F2n−1 is the (2n)th Fibonacci number, and the sum of the first Fibonacci numbers with even index up to F2n is the (2n+1)-st Fibonacci number minus 1.
A different trick may be used to prove
or in words, the sum of the squares of the first Fibonacci numbers up to Fn is the product of the nth and (n+1)-st Fibonacci numbers. In this case note that Fibonacci rectangle of size Fn by F (n+1) can be decomposed into squares of size Fn, Fn−1, and so on to F1 = 1, from which the identity follows by comparing areas.
There are numerous other identities which can be derived using various methods. Some of the most noteworthy are:
where Ln is the n'th Lucas Number. The last is an identity for doubling n; other identities of this type are
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.
Putting k = 2 in this formula, one gets again the formulas of the end of above section Matrix form.
The generating function of the Fibonacci sequence is the power series
This series is convergent for and its sum has a simple closed-form:
This can be proven by using the Fibonacci recurrence to expand each coefficient in the infinite sum:
Solving the equation
for s(x) results in the above closed form.
If x is the inverse of an integer, the closed form of the series becomes
for all non-negative integers k.
Some math puzzle-books present as curious the particular value .
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.
Millin series gives a remarkable identity:
which follows from the closed form for its partial sums as N tends to infinity:
Primes and divisibility
Every 3rd number of the sequence is even and more generally, every kth number of the sequence is a multiple of Fk. Thus the Fibonacci sequence is an example of a divisibility sequence. In fact, the Fibonacci sequence satisfies the stronger divisibility property
A Fibonacci prime is a Fibonacci number that is prime. The first few are:
- 2, 3, 5, 13, 89, 233, 1597, 28657, 514229, … (sequence A005478 in OEIS).
Fibonacci primes with thousands of digits have been found, but it is not known whether there are infinitely many.
Fkn is divisible by Fn, so, apart from F4 = 3, any Fibonacci prime must have a prime index. As there are arbitrarily long runs of composite numbers, there are therefore also arbitrarily long runs of composite Fibonacci numbers.
With the exceptions of 1, 8 and 144 (F1 = F2, F6 and F12) every Fibonacci number has a prime factor that is not a factor of any smaller Fibonacci number ( Carmichael's theorem).
The only nontrivial square Fibonacci number is 144. Attila Pethő proved in 2001 that there is only a finite number of perfect power Fibonacci numbers. In 2006, Y. Bugeaud, M. Mignotte, and S. Siksek proved that 8 and 144 are the only such non-trivial perfect powers.
No Fibonacci number greater than F6 = 8 is one greater or one less than a prime number.
Any three consecutive Fibonacci numbers, taken two at a time, are relatively prime: that is,
- gcd(Fn, Fn+1) = gcd(Fn, Fn+2) = 1.
- gcd(Fn, Fm) = Fgcd(n, m).
Prime divisors of Fibonacci numbers
The divisibility of Fibonacci numbers by a prime p is related to the Legendre symbol which is evaluated as follows:
If p is a prime number then
It is not known whether there exists a prime p such that
Such primes (if there are any) would be called Wall–Sun–Sun primes.
Also, if p ≠ 5 is an odd prime number then:
Example 1. p = 7, in this case p ≡ 3 (mod 4) and we have:
Example 2. p = 11, in this case p ≡ 3 (mod 4) and we have:
Example 3. p = 13, in this case p ≡ 1 (mod 4) and we have:
Example 4. p = 29, in this case p ≡ 1 (mod 4) and we have:
For odd n, all odd prime divisors of Fn are congruent to 1 modulo 4, implying that all odd divisors of Fn (as the products of odd prime divisors) are congruent to 1 modulo 4.
All known factors of Fibonacci numbers F(i) for all i < 50000 are collected at the relevant repositories.
Periodicity modulo n
It may be seen that if the members of the Fibonacci sequence are taken mod n, the resulting sequence must be periodic with period at most n2−1. 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.
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:
Since Fn is asymptotic to , the number of digits in Fn is asymptotic to . As a consequence, for every integer d > 1 there are either 4 or 5 Fibonacci numbers with d decimal digits.
More generally, in the base b representation, the number of digits in Fn is asymptotic to .
The Fibonacci numbers are important in the computational 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 are also an example of a complete sequence. This means that every positive integer can be written as a sum of Fibonacci numbers, where any one number is used once at most. Specifically, 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. The Zeckendorf representation of a number can be used to derive its Fibonacci coding.
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.
The Fibonacci cube is an undirected graph with a Fibonacci number of nodes that has been proposed as a network topology for parallel computing.
A one-dimensional optimization method, called the Fibonacci search technique, uses Fibonacci numbers.
The Fibonacci number series is used for optional lossy compression in the IFF 8SVX audio file format used on Amiga computers. The number series compands the original audio wave similar to logarithmic methods such as µ-law.
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 sequences appear in biological settings, in two consecutive Fibonacci numbers, such as branching in trees, arrangement of leaves on a stem, the fruitlets of a pineapple, the flowering of artichoke, 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 in Fibonacci's own unrealistic example, the seeds on a sunflower, the spirals of shells, and the curve of waves. The Fibonacci numbers are also found in the family tree of honeybees.
Przemysław Prusinkiewicz advanced the idea that real instances can in part be 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.
The bee ancestry code
Fibonacci numbers also appear in the description of the reproduction of a population of idealized honeybees, according to the following rules:
- If an egg is laid by an unmated female, it hatches a male or drone bee.
- 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 parent (1 bee), 2 grandparents, 3 great-grandparents, 5 great-great-grandparents, and so on. This sequence of numbers of parents is the Fibonacci sequence. The number of ancestors at each level, Fn, is the number of female ancestors, which is Fn−1, plus the number of male ancestors, which is Fn−2. This is under the unrealistic assumption that the ancestors at each level are otherwise unrelated.
The Fibonacci sequence has been generalized in many ways. These include:
- Generalizing the index to negative integers to produce the Negafibonacci numbers.
- Generalizing the index 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. The resulting sequences are known as n-Step Fibonacci numbers.
- Adding other objects than integers, for example functions or strings—one essential example is Fibonacci polynomials.