概要
この記事ではガンマ関数を定義し、それが階乗の一般化として扱えることを示す。
また、ガンマ関数を階乗の比で表現する公式についても導出する。
最後に、公式を用いて、階乗の比をガンマ関数で表現することにより、数値計算上有利になることができる例を示す。
ガンマ関数の定義
\(z>0\) となる実数(または、 \(\mathfrak{Re}\{z\}>0\) となる複素数)に対し、
$$\Gamma(z)=\int_0^\infty t^{z-1}e^{-t}dt$$
をガンマ関数という。
ガンマ関数は階乗の一般化
公式
ガンマ関数は以下の性質をみたす。
$$\Gamma(z+1)=z\Gamma(z)\tag{1}$$
$$\Gamma(1)=1\tag{2}$$
$$\Gamma(n+1)=n!\tag{3}$$
証明
部分積分により
$$\Gamma(z+1)=\int_0^\infty t^{z}e^{-t}dt$$
$$=\int_0^\infty t^{z}(-e^{-t})'dt$$
$$=[-t^{z}e^{-t}]_0^\infty+\int_0^\infty zt^{z-1}e^{-t}dt$$
$$=z\int_0^\infty t^{z-1}e^{-t}dt=z\Gamma(z)$$
より、公式 \((1)\) が導かれる。
また、
$$\Gamma(1)=\int_0^\infty e^{-t}dt=[-e^{-t}]_0^\infty=1$$
であり(公式 \((2)\) )、公式 \((1)\) を繰り返し用いて
$$\Gamma(n+1)=n\Gamma(n)=n(n-1)\Gamma(n-1)$$
$$=\cdots=n(n-1)\cdots 1\Gamma(1)=n!\cdot 1=n!$$
より、公式 \((3)\) が得られる。
ガンマ関数を階乗で表現する
公式
以下の性質に基づいて、ガンマ関数を階乗を用いて表現することができる。
$$\Gamma\left(\frac{1}{2}\right)=\sqrt{\pi}\tag{4}$$
$$\Gamma\left(m+\frac{1}{2}\right)=\sqrt{\pi}\frac{(2m)!}{2^{2m}m!}\tag{5}$$
証明
定義式より、 \(t=s^2\) の置換積分を行うことで、
$$\Gamma\left(\frac{1}{2}\right)=\int_0^\infty t^{-\frac{1}{2}}e^{-t}dt$$
$$=\int_0^\infty s^{-1}e^{-s^2}2sds=2\int_0^\infty e^{-s^2}ds=\sqrt{\pi}$$
より、公式 \((4)\) が得られる。なお、最後の等式ではガウス積分を用いた。
公式 \((3)\) に \(n=m+\frac{1}{2}\) を代入し、公式 \((1)\) を繰り返し用いると、
$$\left(m+\frac{1}{2}\right)!=\Gamma\left(m+\frac{3}{2}\right)$$
$$=\left(m+\frac{1}{2}\right)\left(m-\frac{1}{2}\right)\cdots\frac{1}{2}\Gamma\left(\frac{1}{2}\right)$$
$$=\sqrt{\pi}\prod_{k=0}^{m}\frac{2k+1}{2}\qquad(\because(4))$$
$$=\sqrt{\pi}\frac{(2m+1)(2m-1)\cdots 3\cdot 1}{2^{m+1}}$$
$$=\sqrt{\pi}\frac{(2m+1)(2m)(2m-1)(2m-2)\cdots 4\cdot 3\cdot 2\cdot 1}{2^{m+1}(2m)(2m-2)\cdots 4\cdot 2}$$
$$=\sqrt{\pi}\frac{(2m+1)(2m)!}{2^{m+1+m}m(m-1)\cdots 2\cdot 1}$$
$$=\sqrt{\pi}\left(m+\frac{1}{2}\right)\frac{(2m)!}{2^{2m}m!}$$
両辺を \(\left(m+\frac{1}{2}\right)\) で割ると
$$\left(m-\frac{1}{2}\right)!=\Gamma\left(m+\frac{1}{2}\right)=\sqrt{\pi}\frac{(2m)!}{2^{2m}m!}\tag{5}$$
が得られる。
応用例
公式 \((5)\) は、階乗の割り算 \((2m)!/m!\) を、ガンマ関数を用いて表現する際にも用いられる。(階乗を計算するよりも、ガンマ関数を用いた方が、数値計算等で有利になる場合がある)
例えば、標準正規分布 \(\mathcal{N}(x|0,1)\) の \(m\) 次モーメントについて、積率母関数 \(M_X(t)\) を用いて計算すると、
$$M_X(t)=\mathbb{E}[e^{tX}]=\int_{-\infty}^\infty e^{tx}\frac{1}{\sqrt{2\pi}}e^{-\frac{x^2}{2}}dx$$
$$=\int_{-\infty}^\infty \frac{1}{\sqrt{2\pi}}\exp\left(-\frac{x^2}{2}+tx\right)dx$$
$$=\int_{-\infty}^\infty \frac{1}{\sqrt{2\pi}}\exp\left(-\frac{(x-t)^2}{2}\right)\exp(t^2)dx$$
$$=e^{t^2}=\sum_{k=0}^{\infty}\frac{1}{k!}(t^2)^k$$
より、
$$M_X(t)=\sum_{k=0}^{\infty}\frac{1}{k!}t^{2k}$$
$$M_X'(t)=\sum_{k=1}^{\infty}\frac{2k}{k!}t^{2k-1}$$
$$M_X''(t)=\sum_{k=1}^{\infty}\frac{2k(2k-1)}{k!}t^{2k-2}$$
$$M_X'''(t)=\sum_{k=2}^{\infty}\frac{2k(2k-1)(2k-2)}{k!}t^{2k-3}$$
$$\cdots$$
と続けることで、
$$\mathbb{E}[X^n]=M_X^{(n)}(0)=\begin{cases}\frac{n!}{(n/2)!}&&(n\text{が偶数}) \\ 0&&(n\text{が奇数})\end{cases}$$
となることがわかる。すなわち、 \(n=2m,\quad(m=0,1,2,\cdots)\) と置いて
$$\mathbb{E}[X^{2m}]=M_X^{(2m)}(0)=\frac{(2m)!}{m!}$$
が得られる。ここで公式 \((5)\) を用いると、
$$\mathbb{E}[X^{2m}]=\frac{2^{2m}}{\sqrt{\pi}}\Gamma\left(m+\frac{1}{2}\right)$$
と表せることがわかる。
Comments