※:この記事は2017年1月に投稿されたもののリメイクです。


対数関数が苦手という人は多い。三角関数、指数関数までは分かったのに対数関数はよく分からなかったという人が結構いる。

はっきり言おう…それは「なんかの勘違い」だ。

 

対数関数が良くわからない人には何パターンかいる。多いのは、

 

1.三角関数、指数関数までの内容も本人が言うほどには把握できてない。

2.対数関数が何のために存在しているのかを知らない。

3.「対数関数の解析的定義」を知らない。

 

故にこの1.から3.について順に私流の克服法を伝授する。

なお、本稿では1.を詳しく、そして3.に最大の重きを置いて解説する。

 

1.


三角関数の本来の定義は、(1,0)を出発して単位円周上を左回りにθだけ進んだ時の座標が(cosθ,sinθ)である、というものである。

これにより特に0<θ<πの場合、「三角法として定義された三角関数」と一致することが分かる。またtanθ=sinθ/cosθと定義される。cosの零点、すなわちθ=π/2±nπ(n=0,1,2,…)ではtanθは定義されない。

 

指数関数の説明がこの節では一番本質的なので、少し丁寧に書いてみよう。

 

まず、1ではない正の実数aと自然数Nに対してのa^Nを定義する。これはいたって簡単で

 

a^N=a×…×a(aをN回かける)

 

である。たとえば2^3=2×2×2=8である。次に、Nが負の整数の場合は

 

a^N=1/a^(-N)

 

である。たとえば、3^(-2)=1/(3^2)=1/9である。

 

次に、有理数r=m/n(mは整数、nは0でない整数)に対してa^rを

 

a^r=(a^m)^(1/n)

 

で定義する。ここでs=r^(1/n)とは、n乗してrになるような正の実数sのことである。つまり、a^r=a^(m/n)とは、「n乗してa^mになるような正の実数」のことである。aが有理数でも一般にはa^rは有理数とはならない(たとえば、2^(1/2)=√2は無理数)し、一般にはaは実数なので、すでにこの定義をする時点で「実数の連続性並びに有理数の稠密性」と「極限」を使わないとならないのだが、今回もここに書いているのは『お話の数学』なんで、まぁそんなもんか…と納得していただこう。

 

例:27^(2/3)とは、「3乗して27^2(=(3^3)^2=(3^2)^3=9^3)になる正の実数」なので、27^(2/3)=9

4^(-3/2)=1/4^(3/2)=1/8

 

最後に、xが一般の実数の場合のa^xの定義である。これは次のような実数と有理数の数列に関する性質を使う。

 

性質:xを任意の実数とする。このとき、各項が有理数からなる数列{Pi}でxに収束するような数列が必ず存在する。 つまりある{Pi}(各Piは有理数)で、Pi→x (i→∞)

 

そして上のような{Pi}を使って、a^x=a^(lim i→∞ Pi)=lim i→∞(a^Pi)

                                                

と定義する。 この式において、何気なく極限とべき乗の順序交換をしてしまっているし、そもそも数列の取り方の条件はxに収束する有理数列というだけで、そのような数列すべてに対して同一の極限があるかのように議論してしまっているが、そんなんで大丈夫だろうか?と思われる向きもあるだろう。

勿論、こういった性質が成り立たない数学も本当はある。でもそんな難しい話をここで掘り下げてする気はさらさらないので、2つ目の「=」が成り立つ理由はここでは「自明」とさせていただきたい。

 

ともかくこうして実数の指数関数が定義された。複素数を変数とする指数関数を使えば、実は三角関数と指数関数の関係は、ネイピア数(後述)eにより

 

e^iz=cosz+isinz(z:複素数)

 

と書くことができ、三角関数は複素数を変数とする指数関数の一種であることすら分かるが、その話はここでは関係ないし難しいので省略する。

 

さて、この指数関数は解析学の主役である。なぜかといえば、指数法則:

 

a^(x+y)=a^x・a^y

 

が成立し、これが微分という演算ととても親和性が高いからである。実際、

 

F(x)=a^xとすると、その微分F’(x)は

 

F’(x)=lim δx→0 ((F(x+δx)-F(x))/δx)

=lim δx→0 (F(x)・(F(δx)-1)/δx)

=lim δx→0 (a^δx-1)/δx・F(x)

 

となり、この不定形極限 lim δx→0 (a^δx-1)/δx(0/0型)は、aにより一意に定まる実数値となる。そしてよく知られているように、ネイピア数eとは、この lim δx→0(a^δx-1)/δxを1とするようなaのことである。すなわち、eは

 

lim t→0 (a^t-1)/t=1を満たすような正の実数a

 

のことである。極限の中身を取り出して(a^t-1)/t=1とおけば、

 

a^t-1=t

a^t=t+1

a=(1+t)^(1/t)

 

となるから、eの定義式の一つである

 

e=lim t→0 (1+t)^(1/t)

  def.

 

が得られる。そして、eの定義より

 

(e^x)’=e^xである。

 

2.


対数関数のまず第一の存在意義は、簡単に言えば「桁数の拡張」であり「巨大な数や極小(絶対値が0にほど近い数)な数」を「そこまで大きくなかったり小さくなかったりする数」で表せることにある。また、酸性度を表すpHの定義や、刺激に関するウェーバーの法則に対数関数が登場する。「天文学的数字」というように、天文学における各種の計算を容易としその発展に貢献したのも対数であるし、コンピュータの世界では2を底とする対数が大活躍している。

 

そして対数とは「桁」の表現である。底を10とする対数(常用対数)は、そのまま元の量の「桁」(10進法での)を表している。また、2を底とする対数は情報量の理論で使われる。

たとえば10ビットあれば、最大で2^10=1,024個の異なる状態を表現できる。

20ビットなら100万個以上、30ビットなら10億個以上である。情報の世界においても、対数がなかったら大変なことになっていただろう。

 

さて、そんな対数の数学的な定義は次の通りである。

 

aを1でない正の実数、Xを正の実数とする。このとき、関係式a^Y=Xが成り立つならば、Yをaを底とするXの対数といい、Y=log(a)Xで表す。

 

これより即座に

 

log(a)(a^b)=b

 

という関係式が導ける。対数関数は、同じ底を持つ指数関数の逆関数になっている。すなわち、

 

a^x=y ⇔ log(a)y=x

 

が成り立つ。左辺の式は入力がxで出力yがなのに対して、右辺は入力がyで出力がxなのだから、互いに逆関数である。また、

 

指数法則 a^(x+y)=a^x・a^yから、ただちにA,B>0に対して

 

log(a)(A・B)=log(a)A+log(a)B…(*)

 

が従う。これより、対数関数の第二の存在意義は「積を和に変える」ことであるといえる。これは計算の面においても有利であるし、理論上でもかなり大きなアドバンテージである。

 

以下ではa=eとした「自然対数」を用いるとともに、対数の底(aのこと)の表記を省略する。

 

ここまでは準備であって、ここからが本論となる。

 

ちなみに、eは2.71828…というような値(ここでは、この値が1より大きいことに注意してほしい。底が1より小さいと、対数は真数の増加に伴い減少してしまう)を持つ。

 

3.


結論を先に書くと、対数関数は1/xの積分の為に作られたといっても過言ではない。また、変数を正の無限大に近づけたとき、最も遅く正の無限大に発散する関数(実質的に「果てしなく+0次関数」)でもある。

 

何を言っているのかわからないだろうが、こういうことである。

 

eを定数とする指数関数は、定義より(e^x)’=e^xを満たす。

y=e^xとおくとこれはy’=y、もしくはdy/dx=y(dy/dxのような記法は、微分積分学のニュートンともう一人の父、ライプニッツが創案したものである)を満たす。

 

さて、本当はdy/dxとは「yをxで微分する」という意味であり、その中に登場する「/」も決して単なる割り算の記号とは異なる。しかし、次のようなことが知られている。

 

■微分方程式における変数分離法

 

一般に

 

dy/dx=f(y)

 

という微分方程式が与えられたら、機械的に「/」を割り算と看做して

 

dy/f(y)=dx

 

と「移項」してよい。さらに不定積分の記号「∫」を付けて

 

∫dy/f(y)=∫dx 

 

としてよい(ただし、この式変形は本当は証明を要する内容である)。これを微分方程式における変数分離法という。

 

では、y=e^xのとき、この変数分離法はどのような威力を発揮するであろうか?

 

∫dy/f(y)とは「1/f(y)をyで積分せよ」という意味である。ここではf(y)=yだから、左辺は

 

∫1/y dy

 

である。対する右辺は一見何も積分するものがないが、これは∫1dxを略したものである。ゆえに、右辺は

 

∫1dx=x+C(C:積分定数)

 

となる。すなわち、

 

∫1/ydy=x+C

 

である。ここで、y=e^xなのだからx=log y。したがって、

 

∫1/ydy=log y+C

 

これが対数関数の解析的定義、すなわち「1/xの原始関数がlog x」ということの大体のからくりである。しかし、これは驚くべき結果ではないだろうか。

 

そう、我々は初等的に「積分は微分の逆演算」であると習っているし、べき乗関数の場合

 

∫ x^Ndx=1/(N+1)・x^(N+1)+C

 

であることも、文系数学の範囲で知っている。

 

そしてこの式はN=0でも成立するし、実はNが負の整数、もっといえば-1でない実数にまでこの式は拡張できる。しかし、この式はN=-1にできない。N=-1だと1/(N+1)が定義できないからだ。一方、基本的にべき乗関数の積分は必ず次数が1つ上がる。

 

そこで、このような予想が立てられないのだろうか?

 

予想:log xとは『xの0次式のようなもの』であり、x→∞のときどんな小さなα>0を取ってもx^αよりも遅く∞に発散する。つまり、任意のα>0に対して

 

lim x→∞ log x=∞ だけど、

lim x→∞ log x/x^α=0…★

 

そして、この★が正しいことはちゃんと証明することができる。

 

実はこれは逆関数である指数関数が、Maclaurin展開を用いて

 

e^x=1+x+x^2/2!+…=Σ(0≦N≦∞) (x^N/N!)

(実はこの式はxが全ての実数の範囲で成立する。)

 

であることと無縁ではない。指数関数のほうは、見ればわかるように「無限に正の係数のべき乗を足し合わせた式」なので、どんな有限次数の多項式よりも、x→∞での∞への発散が早い。式で書けば、

 

どんな大きなα>0に対しても、

lim x→∞ e^x/x^α=∞が成り立つ。

 

ということだ。


とはいえ、ここで肝心なのは★のほうである。これで、ようやく対数関数が「やたらと大きい数」や「やたら絶対値が小さい数」を扱うのに便利な理由(つまり、2.の問いの根源的な理由)もわかったはずである。

 

対数を取ると、もとの量の変化を最も有効にまったりとさせてくれる。でもちゃんと+∞では+∞に飛ぶし(0では-∞に飛ぶ)、単調増加関数でもある。なので、大きな数や絶対値の小さな数を多く扱う分野では、対数を取って解析するという手法が取られることも多い。そうしたところで、変化の本質を見逃すことなく、なおかつ取り扱いやすさは飛躍的に向上するからだ。

 

対数嫌いの多くは食わず嫌いである。退屈な人生を送りたくなかったら、この記事で紹介したような対数の本質にもっと触れたほうがいい。こんなに便利な概念を知らずに死んでしまっては、実に勿体ないと思うから。

 

最後に、とんでもない激辛カレーが意外と食える人がいる理由も紹介しておく。

それは実のところ10倍カレーの辛さも、100倍カレーの辛さもそんなに変わらないからである。なぜならば、刺激に関するウェーバーの法則により、普通のカレーの辛さと10倍カレーの辛さの差を「1」としたら、10倍カレーと100倍カレーの辛さの差もまた「1」しかないからだ。

一番肝心なのは、そもそもの「オリジナルのカレー」がさして辛いと感じずに美味しく食べられるかどうかなのである。

これはSMプレイがエスカレートしやすい理由にも似ている、とか書いたらさすがに怒られるだろうか。

だが、実際問題入り口を味わってしまうと結構抜け出せなくなるのも確かであり、その根本的な理由は「刺激は対数的である」からに他ならないのだ。てへぺろうさぎ

 

おあとがよろしいようで!サッ