Stirling's approximation
From Wikipedia, the free encyclopedia
In mathematics, Stirling's approximation (or Stirling's formula) is an approximation for large factorials. It is named in honour of James Stirling.
The formula is written as
- Failed to parse (Missing texvc executable; please see math/README to configure.): n! \approx \sqrt{2\pi n}\, \frac{n^n}{e^n}.
Roughly, this means that these quantities approximate each other for all sufficiently large integers n. More precisely, Stirling's formula says that
- Failed to parse (Missing texvc executable; please see math/README to configure.): \lim_{n \rightarrow \infty} {n!\over \sqrt{2 \pi n} \; \frac{n^n}{e^n} } = 1.
or
- Failed to parse (Missing texvc executable; please see math/README to configure.): \lim_{n \rightarrow \infty} {\frac{e^n n!}{n^n \sqrt{n}}} = \sqrt{2 \pi}
Contents |
[edit] Derivation
The formula, together with precise estimates of its error, can be derived as follows. Instead of approximating n!, one considers its natural logarithm:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln( n!) = \ln 1 + \ln 2 + \cdots + \ln n.
The right-hand side of this equation is (almost) the approximation of the integral Failed to parse (Missing texvc executable; please see math/README to configure.): \int_1^n \ln(x)\,dx = n \ln n - n + 1
using the trapezoid rule,
and the error in this approximation is given by the Euler-Maclaurin formula:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln (n!) - \frac{\ln n}{2} = \frac{\ln 1}{2} + \ln 2 + \cdots + \ln(n-1) + \frac{\ln n}{2} = n \ln n - n + 1 + \sum_{k=2}^{m} \frac{B_k {(-1)}^k}{k(k-1)} \left( \frac{1}{n^{k-1}} - 1 \right) + R_{m,n},
where Bk is Bernoulli number and Rm,n is the remainder term in the Euler-Maclaurin formula. Take limits to find that
- Failed to parse (Missing texvc executable; please see math/README to configure.): \lim_{n \to \infty} \left( \ln n! - n \ln n + n - \frac{\ln n}{2} \right) = 1 - \sum_{k=2}^{m} \frac{B_k {(-1)}^k}{k(k-1)} + \lim_{n \to \infty} R_{m,n}.
Denote this limit by y. Because the remainder Rm,n in the Euler-Maclaurin formula satisfies
- Failed to parse (Missing texvc executable; please see math/README to configure.): R_{m,n} = \lim_{n \to \infty} R_{m,n} + O \left( \frac{1}{n^m} \right),
where we use Big-O notation, combining the equations above yields the approximation formula in its logarithmic form:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln n! = n \ln \left( \frac{n}{e} \right) + \frac{\ln n}{2} + y + \sum_{k=2}^{m} \frac{B_k {(-1)}^k}{k(k-1)n^{k-1}} + O \left( \frac{1}{n^m} \right).
Taking the exponential of both sides, and choosing any positive integer m, we get a formula involving an unknown quantity ey. For m=1, the formula is
- Failed to parse (Missing texvc executable; please see math/README to configure.): n! = e^{y} \sqrt{n}~{\left( \frac{n}{e} \right)}^n \left( 1 + O \left( \frac{1}{n} \right) \right).
The quantity ey can be found by taking the limit on both sides as n tends to infinity and using Wallis' product, which shows that Failed to parse (Missing texvc executable; please see math/README to configure.): e^y = \sqrt{2 \pi} . Therefore, we get Stirling's formula:
- Failed to parse (Missing texvc executable; please see math/README to configure.): n! = \sqrt{2 \pi n}~{\left( \frac{n}{e} \right)}^n \left( 1 + O \left( \frac{1}{n} \right) \right).
The formula may also be obtained by repeated integration by parts, and the leading term can be found through the method of steepest descent. Sterling's formula, without the factor Failed to parse (Missing texvc executable; please see math/README to configure.): \sqrt{2 \pi n}
that is often irrelevant in applications, can be quickly obtained by approximating the sum
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln(j!) = \sum_{j=1}^{n} \ln j
with an integral:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \sum_{j=1}^{n} \ln j \approx \int_1^n \ln x \, dx = n\ln n - n + 1.
[edit] Speed of convergence and error estimates
More precisely,
- Failed to parse (Missing texvc executable; please see math/README to configure.): n! = \sqrt{2 \pi n} \; \left(\frac{n}{e}\right)^{n}e^{\lambda_n}
with
- Failed to parse (Missing texvc executable; please see math/README to configure.): \frac{1}{12n+1} < \lambda_n < \frac{1}{12n}.
Stirling's formula is in fact the first approximation to the following series (now called the Stirling series):
- Failed to parse (Missing texvc executable; please see math/README to configure.): n!=\sqrt{2\pi n}\left({n\over e}\right)^n \left( 1 +{1\over12n} +{1\over288n^2} -{139\over51840n^3} -{571\over2488320n^4} + \cdots \right).
As Failed to parse (Missing texvc executable; please see math/README to configure.): n \to \infty , the error in the truncated series is asymptotically equal to the first omitted term. This is an example of an asymptotic expansion.
The asymptotic expansion of the logarithm is also called Stirling's series:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln n!=n\ln n - n + {1\over 2}\ln(2\pi n) +{1\over12n} -{1\over360n^3} +{1\over1260n^5} -{1\over 1680n^7} +\cdots.
In this case, it is known that the error in truncating the series is always of the same sign and at most the same magnitude as the first omitted term.
[edit] Stirling's formula for the Gamma function
Stirling's formula may also be applied to the Gamma function
- Failed to parse (Missing texvc executable; please see math/README to configure.): \Gamma(z+1) = \Pi(z) = z!\,
defined for all complex numbers other than non-positive integers. If Failed to parse (Missing texvc executable; please see math/README to configure.): \Re(z) > 0
then
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln \Gamma (z) = \left(z-\frac12\right)\ln z -z + \frac{\ln {2 \pi}}{2} + 2 \int_0^\infty \frac{\arctan \frac{t}{z}}{\exp(2 \pi t)-1}\, dt.
Repeated integration by parts gives the asymptotic expansion
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln \Gamma (z) = \left(z-\frac12\right)\ln z -z + \frac{\ln {2 \pi}}{2} + \sum_{n=1}^\infty \frac{B_{2n}}{2n(2n-1)z^{2n-1}}
where Bn is the nth Bernoulli number. The formula is valid for z large enough in absolute value when Failed to parse (Missing texvc executable; please see math/README to configure.): |\arg z| < \pi - \epsilon , where ε is positive, with an error term of Failed to parse (Missing texvc executable; please see math/README to configure.): O(z^{-m - 1/2})
when the first m terms are used. The corresponding approximation may now be written:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \Gamma(z) = \sqrt{\frac{2 \pi}{ z}}~{\left( \frac{z}{e} \right)}^z \left( 1 + O \left( \frac{1}{z} \right) \right).
[edit] A convergent version of Stirling's formula
Thomas Bayes showed, in a letter to John Canton published by the Royal Society in 1763, that Stirling's formula did not give a convergent series.[1]
Obtaining a convergent version of Stirling's formula entails evaluating
- Failed to parse (Missing texvc executable; please see math/README to configure.): \int_0^\infty \frac{2\arctan \frac{t}{z}}{\exp(2 \pi t)-1}\, dt = \ln\Gamma (z) - \left( z-\frac12 \right) \ln z +z - \frac12\ln(2\pi).
One way to do this is by means of a convergent series of inverted rising exponentials. If Failed to parse (Missing texvc executable; please see math/README to configure.): z^{\overline n} = z(z+1) \cdots (z+n-1) , then
- Failed to parse (Missing texvc executable; please see math/README to configure.): \int_0^\infty \frac{2\arctan \frac{t}{z}}{\exp(2 \pi t)-1} \, dt = \sum_{n=1}^\infty \frac{c_n}{(z+1)^{\overline n}}
where
- Failed to parse (Missing texvc executable; please see math/README to configure.): c_n = \frac{1}{n} \int_0^1 x^{\overline n} \left( x-\frac12 \right) \, dx.
From this we obtain a version of Stirling's series
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln \Gamma (z) = \left( z-\frac12 \right) \ln z -z + \frac{\ln {2 \pi}}{2}
-
-
- Failed to parse (Missing texvc executable; please see math/README to configure.): {} + \frac{1}{12(z+1)} + \frac{1}{12(z+1)(z+2)} + \frac{59}{360(z+1)(z+2)(z+3)} + \frac{29}{60(z+1)(z+2)(z+3)(z+4)} + \cdots
-
which converges when Failed to parse (Missing texvc executable; please see math/README to configure.): \Re(z)>0 .
[edit] A version suitable for calculators
The approximation
- Failed to parse (Missing texvc executable; please see math/README to configure.): \Gamma(z) \approx \sqrt{\frac{2 \pi}{z} } \left( \frac{z}{e} \sqrt{ z \sinh \frac{1}{z} + \frac{1}{810z^6} } \right)^{z},
or equivalently,
- Failed to parse (Missing texvc executable; please see math/README to configure.): 2 \ln \Gamma(z) \approx \ln(2 \pi) - \ln z + z \left(2 \ln z + \ln \left( z \sinh \frac{1}{z} + \frac{1}{810z^6} \right) - 2 \right),
can be obtained by rearranging Stirling's extended formula and observing a coincidence between the resultant power series and the Taylor series expansion of the hyperbolic sine function. This approximation is good to more than 8 decimal digits for z with a real part greater than 8. Robert H. Windschitl suggested it in 2002 for computing the Gamma function with fair accuracy on calculators with limited program or register memory (see ref. 'Toth').
Gergő Nemes proposed in 2007 an approximation which gives the same number of exact digits as the Windschitl approximation but is much simpler:
- Failed to parse (Missing texvc executable; please see math/README to configure.): \Gamma(z) \approx \sqrt{\frac{2 \pi}{z} } \left( \frac{1}{e} \left( z + \frac{1}{12z- \frac{1}{10z}} \right) \right)^{z},
or equivalently,
- Failed to parse (Missing texvc executable; please see math/README to configure.): \ln \Gamma(z) \approx \frac{1}{2} \left(\ln(2 \pi) - \ln z \right) + z \left(\ln \left( z + \frac{1}{12z- \frac{1}{10z}} \right)-1\right).
[edit] History
The formula was first discovered by Abraham de Moivre in the form
- Failed to parse (Missing texvc executable; please see math/README to configure.): n!\sim [{\rm constant}]\cdot n^{n+1/2} e^{-n}.
Stirling's contribution consisted of showing that the constant is Failed to parse (Missing texvc executable; please see math/README to configure.): \sqrt{2\pi} . The more precise versions are due to Jacques Binet.
The "first-order" version of Stirling's approximation, Failed to parse (Missing texvc executable; please see math/README to configure.): n! \approx n^n
, was used by Max Planck in his 1901 article on the black body radiation formula. It linked Planck's concept of energy elements to the black body radiation formula for very large numbers of energy elements and oscillators. The approximation was often used in quantum theory, for example by Debye and de Broglie. Einstein and Bose took a different approach. For very large n, the graph of the probability expression Planck obtained using the "first order" Stirling's formula, plotted in a logarithmic coordinate system, is almost parallel to the line obtained direct from the idea of separated light quanta.
However, the system entropy calculated by using the "first order" approximation is different and the ratio gets strongly nonlinear for small n. One can only speculate that a similar total effect on entropy could be obtained by introducing the uncertainty principle and the photon spin as well as other quantities which were unknown at the time when the old quantum theory was created. Unfortunately, the experimental verification of the link between the "first order" Stirling's approximation and modern physical theories is still missing.
[edit] See also
[edit] References
- Abramowitz, M. and Stegun, I., Handbook of Mathematical Functions, http://www.math.hkbu.edu.hk/support/aands/toc.htm
- Paris, R. B., and Kaminsky, D., Asymptotics and the Mellin-Barnes Integrals, Cambridge University Press, 2001
- Whittaker, E. T., and Watson, G. N., A Course in Modern Analysis, fourth edition, Cambridge University Press, 1963. ISBN 0-521-58807-3
- Toth, V. T. Programmable Calculators: Calculators and the Gamma Function. http://www.rskey.org/gamma.htm, modified 2006
- Eric W. Weisstein, Stirling's Approximation at MathWorld.
- Stirling's approximation at PlanetMath.de:Stirling-Formel
es:Fórmula de Stirling fr:Formule de Stirling it:Approssimazione di Stirling he:נוסחת סטירלינג lt:Stirlingo formulė hu:Stirling-formula nl:Formule van Stirling ja:スターリングの近似 ko:스터링 근사 pl:Wzór Stirlinga pt:Fórmula de Stirling scn:Formula di Stirling sv:Stirlings formel uk:Формула Стірлінґа zh:斯特靈公式

