紙と鉛筆しかないときに便利な暇つぶし

紙と鉛筆しかないときってありますよね。今日まさにそういう状況が発生したので、そういった際に私が行う様々な暇つぶしのうちの一つを紹介しようと思います

 

公式

$\frac{n!}{\left(\frac{n+x}{2}\right)!\left(\frac{n-x}{2}\right)!}\approx\frac{2^{n+1}}{\sqrt{2\pi n}}e^{-x^{2}/2n}$ という近似公式があります。*1 ということで、これを使って遊んでみましょうというのが今回のお題です。

 

n=6, x=2 のとき

左辺は $\frac{6!}{4!2!}=\frac{6\times5}{2}=15$。ということで、右辺に突っ込むことで、n とか x が小さいときにこの公式がどれくらいの精度で成り立つのかを確認したいわけです。

 

とりあえず $\frac{2^{7}}{\sqrt{6.28\cdot6}}e^{-4/12} \approx \frac{128}{6.14} e^{-1/3}$。えーっと $e^{-1/3}$ ってどうやって求めよう。あ、$e^{-1} \approx 0.367$ は覚えてる。つまり $0.7^3 \approx 0.343$ よりちょっと多い。よって $(0.7+x)^3 \approx 0.343 + 3\cdot 0.49 x$ を解きたい。引き算して $3\cdot 0.49 x = 0.024$。3で割って2を掛けると $x = 0.016$ といったところか。ということで $e^{-1/3} \approx 0.716$ が無事求まった。 

 

$\sqrt{6.28\cdot6} \approx 6.14$ だから、結局 $\frac{128}{6.14} \times 0.716$ だから、えーと $128 \times 716$ を真面目に筆算して、$\frac{91.6}{6.14} = \frac{1}{2}\times\frac{91.6}{3.07}$。はいはいだいたい15っぽいですね。オーケー。

 

n=100, x=4 のとき

右辺は $\frac{2^{101}}{\sqrt{6.283\cdot100}}e^{-\frac{16}{200}}$ 。えー $e^{-0.08} = 1 - 0.08 + 0.0032 = 1-0.00768$ としてやればよい。2の常用対数は $0.3010299$ とかのはずなので、101倍してやって $2^{101} \approx 10^{30.404}$。平方根はだいたい$\sqrt{625} = 25$ ……だとちょっと精度が足らん気がするな。精度というのは稼げるところで稼いでおきたいので、もうちょい頑張っておくか。えっと $\sqrt{625 + 3.3} = 25\sqrt{1+\frac{3.3}{625}} = 25\sqrt{1+\frac{52.8}{10000}}$ だから、全体に $1-0.00528$ を掛けてやればいい。(※計算ミス!平方根の中から取りだしたのだから、本当は半分にしてやらなきゃいけない。あとそもそもここまでの精度要らない)

 

ということで求めるべきは $\frac{10^{30.404}}{25}\left(1-0.00528\right)\left(1-0.0768\right)$ であって、100を25で割ってやって  $4\cdot 10^{28.404} \cdot \left(1-0.0821\right)$。

 

さて残るは $10^{0.404}$ の処理だけども……あ、$10^{0.404} \approx \left(10^{0.301}\right)^{4/3}$ としてやれば、これはオクターブと長三度。完八が2/1、完五が3/2、完四が4/3、長三が5/4、短三が6/5なのだから、$2^{1/3} \approx 1.25$。

……真の値はもうちょい大きかった気がする。まあたしかに $125/64 < 2$ だもんな。じゃあ $1.26$ にしておくか。ということで $4\cdot2.52\cdot(1-0.0821)\cdot 10^{28} \approx 9.26\times 10^{28}$ かな。

 

答え合わせ

  • $\frac{2^{7}}{\sqrt{6.28\cdot6}}e^{-4/12} \approx 14.94$
  • $\frac{100!}{48!52!} \approx 9.32\times10^{28}$
  • $\frac{2^{101}}{\sqrt{6.28\cdot100}}e^{-\frac{16}{200}} \approx 9.34 \times 10^{28}$

ということで、だいぶいい線いけた。

 

実際の計算用紙

f:id:hsjoihs:20211102041302p:plain

 

 

*1:これの導出は本筋と関係がないので省略。スターリングで愚直にやるもよし、ランダムウォークを考えて正規分布で近似したときを考えるもよし。