ぎるばーとの日記

もっともっと遠くへ行きたい 空が広く見える場所まで

Stirlingの近似式

 Stirlingの近似式は、大きな数の階乗を見積もることができます。
\ln n! \simeq n \ln n - n \tag{1}
 この式は「両辺の比が1に収束する」という意味です。もっと強く、「両辺の差が0に収束する」近似式は次の通り。
\ln n! \simeq n \ln n - n + \frac{1}{2} \ln 2\pi n \tag{2}

 ところで、階乗の定義域を実数に広げたものはガンマ関数で、
\Gamma(x) = \int_0^\infty t^{x-1}e^{-t} dt
\Gamma(n + 1) = n! = 1 \times 2 \times 3 \times \cdots \times n
 ガンマ関数の対数をとって微分するとディガンマ関数になります。
\psi(x) = \frac{d}{dx} \ln \Gamma(x) = \frac{\Gamma'(x)}{\Gamma(x)}
 ディガンマ関数は調和級数の拡張版といったところ。nが非負整数なら、
\psi(n + 1) = -\gamma + H_n = -\gamma +1 + \frac{1}{2} + \frac{1}{3} + \cdots + \frac{1}{n}
 式中の\gammaは有名なEulerの定数です。これも語りたいことはあるけれど、また別の機会に……。(たぶん

 話を元に戻しまして、Stirlingの式(1)の両辺をnで微分してみます。
 左辺は、
\frac{d}{dn} \ln n! = \frac{d}{dn} \ln \Gamma(n + 1) = \psi(n + 1)
 右辺は、
\frac{d}{dn} (n \ln n - n) = \ln n
 ディガンマ関数と対数関数が出てきました! この二つは興味深い関係がたくさんありますが、発散する速さに注目すると、
\lim_{n \to \infty} \{\psi(n + 1) - \ln n\} = 0
 つまり同じ速さで発散します。(1を任意の実数\alphaに変えても同じ。)

 下の図はディガンマ関数と対数関数のグラフです。
f:id:zwxadz:20151001214330p:plain

 まとめると、Stirlingの式が示しているのは「階乗の対数(ディガンマ関数の積分)を対数関数の積分で近似できるよ!」ということになります。