階乗の大きさはどれくらいか?
How Big Are Factorials? (eli.thegreenplace.net)
要約
この記事では、電卓やコンピュータを使わずに階乗の大きさを推定する方法について解説しています。まず、n!の桁数を推定する近似式を示し、具体例として52!の桁数を計算しています。次に、ガンマ関数が階乗の正の実数への補間であることを説明し、スターリングの近似式の導出過程をガンマ関数から解説しています。最後に、スターリングの近似式を用いて階乗の桁数を推定する方法を示しています。
全文翻訳
階乗の大きさはどれくらいか?
先日、52!(52の階乗)がどれくらいの大きさになるのか疑問に思い、計算機やコンピュータなしでこれらの値を推定する方法はないかと考えました。
階乗のサイズ(桁数)をかなり正確に推定できる、かなり興味深い数学的背景があることがわかりました。この記事では、まず推定方法を述べ、興味のある方は数学的な背景を読み進めてください。
早速ですが、その近似式は次のとおりです。
例として、元の疑問である52!について推定してみましょう。
52をで割ると…20くらいでしょうか?そして、約1.3 [1] です。したがって、推定値は次のようになります。
実際の値は68なので、これは非常に近いです!このような推定、特に巨大な数を扱う場合、数桁の誤差は通常大きな問題ではありません。
ガンマ関数
実数に対するガンマ関数は次のように定義されます [2]。
この積分は一般的なケースでは解析的な表現を持ちませんが、利用できる非常に便利な性質があります。を見てみましょう。
そして、次のように置換して部分積分を行います。
すると、次のようになります。
したがって:
しかし、最後の積分は単にであることに注意してください。したがって、次のことを示しました。
も計算してみましょう。これは解析解を持つ特別なケースです。
これは帰納的議論を確立するのに役立ちます。
言い換えれば、ガンマ関数はすべての正の実数にわたる階乗の補間です。ここでは、ガンマ関数を小さい範囲でプロットしたものを示します。y軸は関数の急速な成長のため対数スケールになっていることに注意してください。
[画像: ガンマ関数のプロット]
スターリングの近似
スターリングの近似式を目にしたことがあるかもしれません。
これは、小さいでもかなりうまく機能する優れた近似式です。このセクションでは、スターリングの公式がガンマ関数からどのように導出されるかの簡単な概要を説明します。
次のように取ります。
まず、被積分関数を少し整形します。
そして、変数を次のように変更します。これは、次のことを意味します。
これらのステップにより、積分は次の形式の定積分を近似できるラプラスの方法を適用できるようになります。
ここで、は二回微分可能な関数であり、は大きな数です。ラプラスの方法によれば、このような積分は次のように近似できます。
ここで、はのグローバル最大値です。
この方法 [3] を、最新の式の(ダミー積分変数を再びに戻します)に適用する方法を見てみましょう。
この場合、です。この関数が二回微分可能であり、でグローバル最大値を持つことを示すのは簡単です。さらに:
これらをラプラス近似の適切な場所に代入すると、次のようになります。
スターリングの近似からの桁数
スターリングの公式の10を底とする対数を取ることで、の桁数を計算できます。
最初の項は自身に掛けられていないことに注意してください。したがって、が増加するにつれて、それはますます目立たなくなります。それでも、数桁を追加するので、より正確な近似が必要な場合は考慮に入れるべきです [4]。
| [1] | 52! の計算の暗算テクニックは別のトピックですが、を覚えておくと非常に役立ちます。また、様々な対数法則を使用して倍数を推定することも役立ちます。 |
| [2] | 実際、ガンマ関数は複素数に対して定義されていますが、ここでは実数について話すだけで十分です。 |
| [3] | この近似がなぜ機能するのかについて詳しく説明したいのですが、この記事のウサギの穴はすでに十分に深いです! |
| [4] | これは、が約1600未満である限り、2桁を追加します。また、それ以降は2桁以上追加する可能性がありますが、160000になるまでは3桁を超えることはありません。1600!(ちなみに約4450)の桁数を推定したい人がいるとは考えにくいです。ましてや160000!など。 |