【数Ⅱ指数対数】なぜ対数というものがあるのか?(1) その仕組みと工学での使い方

対数って公式覚えて解けるようにはなったけど、対数習う意味が分からない。
もともとは工学分野とかで必須技能だったのよ。今でも不要な知識ってわけじゃない。

対数の仕組み

対数は $\log_a M$ の形で表し、$a$ を(てい)、$M$ を真数(しんすう)と言います。

例えば、$\log_2 8=3$ となります。このとき、$2^3=8$ という関係になります。実際に計算をするときには、$2$ の何乗で $8$ になる?と考えるとうまくいきます。

練習だけど、$\log_2 16$ は?

$2$ の $4$ 乗で $16$ だから $4$。

正解。では次。$\log_2 7$は?

えーと、$2$ を何乗しても $7$ にならないですよ。

$\log_2 8$ ならいちいちそのような書き方をしないでも、初めから $3$ と書けば済む話です。しかし、$\log_2 7$ は数値で表せません。ちなみに $\log_2 7=2.807354\cdots$という感じで無理数になります。

つまり $\displaystyle 2^{2.807354\cdots}$≒$7$ という関係が成り立ちます。

対数を使う理由は、$\log$ でしか表せない数があるからです。とは言え、そんな数を表すことに意味があるのか?と思うかもしれません。ここから、対数が役に立つ場合があるという事例を見ていきましょう。

積・商の対数の公式と常用対数

対数の公式をおさらいします。

$\displaystyle\log_a MN=\log_a M+\log_a N\\\displaystyle\log_a \frac{M}{N}=\log_a M-\log_a N$

この公式が大事なのは、かけ算は足し算に、割り算は引き算に直せるということです。

もう一つ習うのが常用対数です。これは $10$ を底とする対数です。これは、大きな数を表すのに役に立ちます。例えば、

$\log_{10} 100000=5\\\log_{10} 385793=5.586354\cdots\\\log_{10} 1000000=6$

という具合です。

$385793$ は $10$ の $5.586354$ 乗である、と表すことができます。

で、それが何の役に立つの?

かけ算と割り算で使える。

常用対数の使い方

あなたが電卓のない昔の時代に住んでいたとしましょう。

ここに、$267052$ と $172259$ の2つの数があったとします。これをかけ算する場合、ひっ算で求めることになります。答えは $46002110468$ です。

今度は $267052$ を $172259$ で割ってみましょう。答えは $1.550293\cdots$ となります。

こんなのひっ算でやったら死ぬ!

昔の時代にもエンジニアの人たちがいて、彼らは測量や実験の結果を処理するためにこうした大きな数の計算を大量にこなす必要がありました。しかし、これを普通にひっ算でやっていたらきりがありません。そこで、常用対数表を用いて工学で使える範囲の近似値を出す方法が編み出されたのです。

教科書の最後のページあたりに常用対数表が付いていると思いますが、昔のエンジニアの人々はそれよりももっと詳しく書かれたケタ数の多い常用対数表を使っていました。教科書の常用対数表は3ケタの数で調べるので2ページで収まっていますが、もしもっと細かく5ケタの数で調べたいとなれば、その100倍のページ数の表が必要になります。教科書1冊分ほどのページ数になりますね。

では実際に、先ほどの計算を常用対数表を用いてやってみましょう。今回は5ケタの数で調べられる常用対数表を使います。

まず常用対数表で調べられる形にするために、$267052=2.6705\times10^5$、$172259=1.7226\times10^5$ とします。有効数字5ケタで表記するということです。

まずはかけ算から。底は$10$ ですが省略します。

$2.6705$ を調べると $0.4265926$ と書いてあります。次に$1.7226$ を対数表で見ると $0.2361844$ と書いてあります。

ここで先ほどの公式、$\log_a MN=\log_a M+\log_a N$ を使います。

$\log {(2.6705\times1.7226)}=\log 2.6705+\log 1.7226$
$\text{≒}0.4265926+0.2361844$
$\text{≒}0.662777$

今度は、この $0.662777$ を逆引きします。常用対数表から $0.662777$ に最も近い数を探していくと $0.6627767$ が見つかりました。元の数を見ると $4.6002$ となっています。

つまり、

$\log {(2.6705\times1.7226)}\text{≒}0.662777\text{≒}\log 4.6002\\2.6705\times1.7226=4.6002$

ということです。また、この数にはもともと $10^5$ がくっついていたのを忘れないように。

よって、

$2.6705\times10^5\times1.7226\times10^5=4.6002\times10^{10}$

となります。これは最初にひっ算で求めた値 $46002110468$ に十分近い値であることが分かります。工学分野では有効数字で計算するので、これで十分実用的な計算ができることが分かります。

今度は割り算をしてみましょう。公式は

$\displaystyle\log_a \frac{M}{N}=\log_a M-\log_a N$

を使います。

先ほどは足し算をしましたが、今度は引き算をします。

$\begin{aligned}\displaystyle\log\frac{2.6705}{1.7226}&=\log 2.6705-\log 1.7226\\&\text{≒}0.4265926-0.2361844\\&\text{≒}0.1904082\end{aligned}$

同様に、常用対数表を逆引きしましょう。$0.1904157$ という値が見つかりました。これは 元は$1.553$ という値です。

$\displaystyle\log\frac{2.6705}{1.7226}\text{≒}0.1904082\text{≒}\log 1.553\\\displaystyle\frac{2.6705}{1.7226}\text{≒}1.553$

ひっ算で求めた値は $1.550293\cdots$ だったので、これもかなり近い数値が出てきたことが分かります。

常用対数表は実用計算のためのツール

こうして実際に計算してみると、常用対数表を使ってそれなりの精度で大きな数のかけ算や割り算ができることが分かります。かけ算をひっ算でやれば大変ですが、足し算に直せばかけ算のひっ算よりは効率的に計算ができます。割り算の場合はなおさら大変なので引き算に直すことの恩恵は大きかったでしょう。こうして常用対数表は、計算機が登場するまでの時代において計算を素早く行うための道具として重宝されていたのです。

電卓の無い頃ってタイヘンだったんですね。

そうね。でも、だからこそ対数の概念を発明して計算を効率化しようとした昔の人って凄いって思わない? ヘタに電卓があったらこういう発想って出てこなかったかも。