next up previous
Next: C言語のソースの清書(インデントをつける) Up: 補足 Previous: 補足

数学の事(Taylor 展開)

以前に $\log 2$ の値を精度を保証して計算せよという問題を出しましたが, まだレポートとして受け取っていないので, ここでヒントを出します. このような内容を書くべきか否かを迷いましたが, 最初の一歩は書いておいた 方が良いとの判断です.

さて, 自然対数については, 次の Taylor 展開が $\vert x\vert <1 $ で成立します. ($\vert x\vert <1 $ なら右辺の無限級数が収束して, $\log (1-x)$ に一致する という意味です. 詳しくは解析学 I で勉強して下さい.)


\begin{displaymath}\log(1-x) = -x - \frac{x^2}{2} - \frac{x^3}{3} - \cdots
= \sum_{n=1}^{\infty} \frac{x^n}{n} \end{displaymath}

この式に $\displaystyle{ x=\frac{1}{2}}$ を代入しますと, $\displaystyle{\log\frac{1}{2} = - \log 2}$ですから,


\begin{displaymath}\log 2 = \frac{1}{2} + \frac{1}{2^2 2} + \frac{1}{2^3 3}+ \cdots
= \sum_{n=1}^{\infty} \frac{1}{2^n n} \end{displaymath}

となります. この無限級数の第 $N$ 項までの部分和を $S_N$ と おくと,


\begin{displaymath}0 < \log 2 - S_N = \sum_{n=N+1}^{\infty} \frac{1}{2^n n}
< \...
...1} \sum_{n=N+1}^{\infty} \frac{1}{2^n}
= \frac{1}{2^N (N+1)} \end{displaymath}

というふうに, 打ちきり誤差が評価されます. この評価を使って, $\log 2$ の近似計算ができます.



Next: C言語のソースの清書(インデントをつける) Up: 補足 Previous: 補足