対数の底の変換公式と対数の性質について、その証明について

アルゴリズムの本を読んでいる時など、なにかと色々な場面で登場する対数はちゃんとしたプログラマーには理解必須です。
対数の性質と底の変換公式とその証明方法について、まとめたいと思います。

対数の性質をまとめる

(M > 0,N > 0,kは実数とする)

$$log_{a}MN = log_{a}M + log_{a}N - ①$$

$$log_{a}\frac{M}{N} = log_{a}M - log_{a}N - ②$$

$$log_{a}M^k = klog_{a}M - ③$$

対数の性質の証明

$log_{a}M = p$
$log_{a}N = q$とすると、

$M = a^p$
$N = a^q$

指数法則より、

$MN = a^pa^q = a^{p + q}$から両辺aを底とする対数をとると

$log_{a}MN = p + q$
すなわち

$log_{a}MN = log_{a}M + log_{a}N$ - ①

また、指数法則より$\displaystyle \frac{M}{N} = \frac{a^p}{a^q} = a^{p - q}$
より、両辺にaを底とする対数をとると

$\displaystyle log_{a}\frac{M}{N} = p - q$,すなわち

$\displaystyle log_{a}\frac{M}{N} = log_{a}M - log_{a}N$ - ②

また、同じく指数法則より、
$M^k = (a^p)^k = a^{pk}$

両辺に底をaとする対数をとって

$log_{a}M^k = pk$,すなわち

$log_{a}M^k = klog_{a}M$ - ③

底の変換公式

$\displaystyle log_{a}b = \frac{log_{c}b}{log_{c}a}$(a,b,cは正の数で,$a \ne 1,b \ne 1,c \ne 1$)

底の変換公式の証明

$log_{a}b = p$とおくと、
$a^p = b$

両辺のcを底とする対数をとります

$log_{c}a^p = log_{c}b$

対数の性質③より

$plog_{c}a = log_{c}b$

$a \ne 1$だから、$log_{c}a \ne 0$

$log_{c}a$で両辺を割って

$\displaystyle p = \frac{log_{c}b}{log_{c}a}$よって、

$\displaystyle log_{a}b = \frac{log_{c}b}{log_{c}a}$

となり、底の変換公式を証明することができました。

初版:2019/8/9

このエントリーをはてなブックマークに追加