数式で独楽する

数式を使って楽しむブログです

[tex: ]

対数計算のアルゴリズム log 3

本稿では、対数を計算する手法を見ていきます。


toy1972.hatenablog.com

では、以下の2つの式を駆使すれば、計算していくことができることを述べました。
\begin{eqnarray}
(1) && \ \log_a x &=& \frac{1}{2} \log_a x^2 \\
(2) && \ \log_a x &=& 1+ \log_a \frac{x}{a}
\end{eqnarray}

具体例を見ていきます。次はlog 3です。
底を省略していますが、底は10の常用対数です。

上記の(1)と(2)は、次のようになります。
\begin{eqnarray}
(1) && \ \log x &=& \frac{1}{2} \log x^2 \\
(2) && \ \log x &=& 1+ \log \frac{x}{10}
\end{eqnarray}
ここまでは、
対数計算のアルゴリズム log 2 - 数式で独楽する
と同じです。

3×3=9、9×9=81です。
(1)と(2)を駆使していくと次のようになります。
なお、10桁の電卓を使って計算しています。
4行目から誤差が出てきます。

\begin{eqnarray}
\log 3 &=& \frac{1}{2^2} (1+\log 8.1) \\
&=& \frac{1}{2^2} + \frac{1}{2^3} (1+\log 6.561) \\
&=& \frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4} (1+\log 4.3046721) \\
&=& \frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4} + \frac{1}{2^5} (1+\log 1.85302188) \\
&=& \frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4} + \frac{1}{2^5} + \frac{1}{2^7} (1+\log 1.17908455) \\
&=& \frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4} + \frac{1}{2^5} + \frac{1}{2^7} + \frac{1}{2^{11}} (1+\log 1.394214671) \\
&=& \frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4} + \frac{1}{2^5} + \frac{1}{2^7} + \frac{1}{2^{11}} + \frac{1}{2^{14}} (1+\log 1.427700745)
\end{eqnarray}
最後の行の真数は3の16384乗が由来で、7818桁の数です。
ここまでで2の冪乗分の1の和を計算すると、
\begin{equation}
\frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4} + \frac{1}{2^5} + \frac{1}{2^7} + \frac{1}{2^{11}} + \frac{1}{2^{14}} \approx 0.477111865
\end{equation}となります。
一方、
\begin{equation}
\log 3 = 0.4771212547 \cdots
\end{equation}です。
ここまでやって、やっと4桁が一致します。
そもそも、2の4乗分の1すなわち16分の1で、初めて小数第1位すなわち1/10の位が確定するので、これだけやっても4桁しか確定しないわけです。