前回の記事「スターリングの公式(対数近似編)」では階乗の対数logn!の漸近近似
logn!∼nlogn–n
を求めました。ただ、対数を戻したn!と(ne)nの比較では誤差がどんどん大きくなっていくこともわかりました。ここではスターリングの公式として知られる漸近近似
n!∼√2πn(ne)n
を導出します。ここではスターリングの公式が解決されるまでの歴史に沿う形で
- n!nne−nの挙動から漸近近似式を予想
- 数列an=n!√nnne−nの収束を証明
- 数列anの極限の算出
の順で説明していきます。また、数列anの性質から不等式評価
√2πn(ne)n≤n!≤e√n(ne)n
も求めることができます。途中、やや難しいところもありますが初等的(高校数学の範囲)に示すことができます。
なお、以下の2つの記事の結果を用いるので合わせて参照ください。
n!nne−nの挙動
まずn!とその対数近似(ne)nのずれを見るために比n!nne−nをplotしたのが下図です。
n=200,600,1000で約35,60,80とnの増加につれ比も緩やかに大きくなります。
ここで両対数グラフを描くと
とほぼ直線になることがわかります。
サンプル(logn,logn!nne−n), (n=1,…,1000)から直線を推定すると
推定式y=0.498logn+0.930が得られます。これより
logn!nne−n≒0.498logn+0.930⇔ n!nne−n≒e0.930n0.498
となるのでn!nne−nの漸近近似式としてある定数C>0が存在して
n!nne−n∼C√n
となるのではと「予想」できます。
数列an=n!√nnne−nの収束を証明
「予想」が正しいことを示すには数列
an=n!√nnne−n
がある定数Cに収束することを示せばよいです。ここでは
を示します。まず定義よりan>0は自明です。
次にbn=anan+1とおくとbnは
bn=anan+1=n!√nnne−n⋅√n+1(n+1)n+1e−(n+1)(n+1)!=1e(n+1n)n+12
と整理でき対数をとると
logbn=(n+12)logn+1n–1
となります。ここでy=1xを考えます。
y=1xの区間[n,n+1]の面積Snを考えるとSn=log(n+1)–lognになります。次に点P(n+1/2,1n+1/2)における接線を考えると台形ABCDの面積TnはTn=1n+1/2になります。図よりTn<Snなので
1n+1/2<log(n+1)−logn⇔0<(n+12)logn+1n−1⇔0<logbn
が示せます。つまりbn>1なのでan>an+1となり単調減少することがわかります。
単調減少する下に有界な数列は収束するので定数Cが存在して
limn→∞an=limn→∞n!√nnne−n=C
となります。つまりn!の漸近近似として
n!∼C√n(ne)n
が成立することがわかります。
数列anの極限の算出
ここからは数列anの極限を具体的に求めます。「ウォリスの公式」から二項係数2nCn=(2n)!n!n!の漸近近似4n√πnがわかっているので2nCnが現れるようにa2na2nを考えます。
a2na2n=(2n)!√2n(2n)2ne−2n⋅n2n+1e−2nn!n!=14n√n22nCn
となります。これより
limn→∞a2na2n=limn→∞14n√n2⋅4n√πn=1√2π
となります。また、n→∞でan→Cなのでa2na2n→1Cより
C=√2π
がわかります。以上よりスターリングの公式
n!∼√2πn(ne)n
を求めることができました。
n!の不等式評価
数列anの性質からn!の漸近近似だけではなく上下からの評価を得ることができます。
√2πn(ne)n≤n!≤e√n(ne)n
数列anは単調減少かつC=√2πに収束するので任意のnで√2π≤an≤a1, つまり
√2π≤n!√nnne−n≤a1=e
が成立し、整理すると求める不等式が得られます。
√2πn(ne)nの近似精度
最後にスターリングの公式√2πn(ne)nの近似精度を求めてみましょう。
n=5,10,20,50,100の値を計算してみると
と最初から正確なだけでなくnが大きくなるにつれどんどん正確になっていくという漸近近似のスゴさがよくわかると思います。