Formule de Stirling

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Stirling.

La formule de Stirling, du nom du mathématicien écossais James Stirling, donne un équivalent de la factorielle d'un entier naturel n quand n tend vers l'infini :

\lim_{n \to +\infty} {n\,!\over \sqrt{2 \pi n} \; \left({n}/{\rm e}\right)^{n} } = 1

que l'on trouve souvent écrite ainsi :

n\,!\sim \sqrt{2\pi n}\,\left({n \over {\rm e}}\right)^n

où le nombre e désigne la base de l'exponentielle.

Histoire[modifier | modifier le code]

C'est Abraham de Moivre[1] qui a initialement démontré la formule suivante :

n\,!\sim C\; n^{n+\frac12}\, \mathrm{e}^{-n},

C est une constante réelle (non nulle).

L'apport de Stirling[2] fut d'attribuer la valeur C = à la constante et de donner un développement de ln(n!) à tout ordre.

Démonstration[modifier | modifier le code]

La détermination de la constante n'est pas immédiate, mais il est facile de montrer le résultat de De Moivre. La démonstration classique de la formule asymptotique est donnée dans l'article sur les intégrales de Wallis.

Généralisation[modifier | modifier le code]

On peut expliciter l'approximation de Stirling en utilisant le développement asymptotique de la fonction Γ ; on trouve :

n\,! = \sqrt{2\pi n}\,\left({n \over {\rm e}}\right)^n \left[1 + \frac{1}{12\ n} + \frac{1}{288\ n^2} - \frac{139}{51\ 840\ n^3} - \frac{571}{2\ 488\ 320\ n^4} + \frac {163\ 879}{209\ 018\ 880\ n^5} + \mathcal{O} \left(\frac{1}{n^6} \right) \right].

En fait, la formule d'Euler-Maclaurin fournit en toute généralité.

(*)\quad \ln\left(n!\right) =n\ln(n)-n + \dfrac12\ln(2\pi n)+\sum_{k=1}^K\frac{B_{2k}}{2k(2k-1)n^{2k-1}}+\mathcal{O} \left(\frac1{n^{2K+1}}\right)

pour tout entier fixé K ≥ 1, où les nombres B2k sont les nombres de Bernoulli. Il est à noter que la somme ci-dessus ne tend pas vers une limite finie lorsque K tend vers l'infini.

Écrite sous la forme

 n ! = \left(\frac{n}{\rm e}\right)^n\sqrt{2\pi n} \,{\rm e}^{\mu(n)},

on trouve la formule (et la fonction) de Binet (suites A001163 et A001164 de l'OEIS).

Version continue[modifier | modifier le code]

La formule précédente est une conséquence, pour le cas particulier d'un argument entier, de la formule asymptotique de Stirling pour la fonction Γ d'Euler :

\Gamma(z) \sim z^{z - \frac{1}{2}}{\rm e}^{-z} \sqrt{2\pi}, \quad |\arg(z)| < \pi.

Calculs numériques[modifier | modifier le code]

Précision de la formule de Stirling[modifier | modifier le code]

Pour juger de sa précision, on peut faire le tableau des premières valeurs de n :

n n ! \sqrt{2\pi n}\,\left({n \over {\rm e}}\right)^n \sqrt{2\pi n}\,\left({n \over {\rm e}}\right)^n \left(1 + \frac{1}{12\ n}\right)
1 1 0,93 0,999
2 2 1,92 1,999
3 6 5,84 5,998
4 24 23,51 23,996
5 120 118,02 119,99
6 720 710,08 719,94
7 5 040 4 980,4 5 039,7
8 40 320 39 902,4 40 318,1
9 362 880 359 536,9 362 866,0
10 3 628 800 3 598 696 3 628 685
15 1 307 674 368 000 1,300 431 × 1012 1,307 665 × 1012
20 2 432 902 008 176 640 000 2,422 787 × 1018 2,432 882 × 1018
25 15 511 210 043 330 985 984 000 000 1,545 959 × 1025 1,551 113 × 1025
30 265 252 859 812 191 058 636 308 480 000 000 2,645 171 × 1032 2,652 519 × 1032
40 815 915 283 247 897 734 345 611 269 596 115 894 272 000 000 000 8,142 173 × 1047 8,159 136 × 1047

Dans n, si on remplace n par n + 1/6 les calculs sont nettement améliorés, pour les petites valeurs de n (approximation de Gosper); on peut aussi préférer un encadrement[3] ; enfin on peut prendre la suite A055775 de l'OEIS.

Approximations exploitables pour des machines à calculer[modifier | modifier le code]

L'approximation

\Gamma(z) \approx \sqrt{\frac{2 \pi}{z} } \left( \frac{z}{\rm e}\sqrt{ z \operatorname{sh} \frac{1}{z}  + \frac{1}{810z^6} } \right)^{z},

ou de façon équivalente

2 \ln(\Gamma(z)) \approx \ln(2 \pi) - \ln(z) + z \left(2 \ln(z) + \ln \left( z \operatorname{sh} \frac{1}{z}  + \frac{1}{810z^6} \right) - 2 \right),

peut être obtenue en réarrangeant la formule étendue de Stirling et en remarquant une coïncidence entre la série des puissances résultante et le développement en série de Taylor de la fonction sinus hyperbolique. Cette approximation est valable jusqu'à plus de 8 décimales pour z ayant une partie réelle supérieure à 8. Robert H. Windschitl l'a suggérée en 2002 pour calculer la fonction gamma avec une bonne précision sur des machines à calculer à programme ou mémoire de registre limité(e)[4].

Gergő Nemes a proposé en 2007 une approximation qui donne le même nombre de chiffres exacts que celle de Windschitl mais qui est bien plus simple[5] :

\Gamma(z) \approx \sqrt{\frac{2 \pi}{z} } \left( \frac1{\rm e}\left( z + \frac{1}{12z- \frac{1}{10z}} \right) \right)^{z},

ou de façon équivalente

 \ln(\Gamma(z)) \approx \tfrac{1}{2} \left[\ln(2 \pi) - \ln(z) \right] + z \left[\ln \left( z + \frac{1}{12z- \frac{1}{10z}} \right)-1\right].

Une approximation alternative pour ln n! a aussi été donnée par Srinivasa Ramanujan (Ramanujan 1988) :

\ln(n!) \approx n\ln(n) - n + \tfrac{1}{6}\ln(n(1+4n(1+2n))) + \tfrac{1}{2}\ln(\pi).

Approximation logarithmique[modifier | modifier le code]

Comparaison des approximations logarithmiques de la formule de Stirling.

Dans le cadre de la thermodynamique statistique (distribution de Boltzmann) il est commode de considérer le logarithme népérien d'une factorielle en faisant l'approximation de Stirling[6]. L'approximation consiste à assimiler la somme à une intégrale quand n est suffisamment grand[7].

 \ln\left(n!\right) = \sum_{i=1}^n{\ln\left(i\right)} \simeq \int_1^n{\ln\left(x\right)\, \mathrm dx} = \left[ x\ln\left(x\right) - x \right]_1^n = n\ln\left(n\right) - n + 1.

Nous obtenons finalement l'approximation suivante :

\ln\left(n!\right) \simeq n\ln\left(n\right) - n,

pour laquelle l'erreur relative est inférieure à 1 % quand n > 100. Cette approximation est considérée comme valable (l'erreur est négligeable) dans le cadre de la distribution de Boltzmann étant donné les grandes valeurs de n utilisées (représentant les configurations microscopiques d'un état macroscopique).

Une approximation bien plus précise de ln(n!) a été donnée par Ramanujan[8] :


\ln(n!)=n\ln(n) - n + \frac {\ln(8n^3+4n^2+n+1/30+o(1))}6+ \frac {\ln(\pi)}2.

Notes et références[modifier | modifier le code]

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Stirling's approximation » (voir la liste des auteurs)

  1. à l'occasion de sa démonstration du théorème central limite dans le cas particulier de la loi binomiale.
  2. (la) Jacobo Stirling, Methodus Differentialis sive Tractatus de Summatione et Interpolatione Serierum Infinitarum (1730), proposition 28, p.135. La valeur du logarithme décimal de est donnée p. 137.
  3. (en) Eric W. Weisstein, « Stirling's Approximation », MathWorld.
  4. (en) V. T. Toth, Programmable Calculators: Calculators and the Gamma Function (2006).
  5. (en) Gergő Nemes, « New asymptotic expansion for the Gamma function », Archiv der Mathematik, vol. 95, no 2,‎ 2010, p. 161-169 (ISSN 0003-889X, DOI 10.1007/s00013-010-0146-9).
  6. Atkins, Chimie Physique, 3e éd., deBoeck, Bruxelles, 2008
  7. Jannès, Chimie Physique : Distribution de Boltzmann, HELdB IMC, Bruxelles, 2010
  8. (en) M. Trott, The Mathematica GuideBook for Symbolics, Birkhäuser,‎ 2006 (ISBN 978-0-38795020-4), p. 359