最初にお説教(^_^;)。
前回の「感想・コメント」を見ていると、$1=\cos^2\theta+\sin^2\theta$を始めて知った、あるいは「覚えていた(暗記してた)けど意味は知らなかった」という人が数名見受けられた。
こういう勉強の仕方をしてはいけません!
我々にとって、数学というのは「商売道具」です。単に「覚えているだけ」ではなく、理屈を知って使いこなしてなくては「商売道具」ではありません。
それに「商売道具」としてみた場合、公式を「覚える」必要なんてないのです。必要なときには教科書なり公式集なりを見ればよいだけのこと、暗記しておく必要なんてまったくない(試験の時は必要な式は問題用紙に書いておきます)。どうやってでてきたかを理解せずに式を暗記していたのでは、「道具を使いこなす」段階に達してません。
また、「三角関数苦手です」という声もありましたが、三角関数も我々にとっては商売道具です。
病院に行って看護婦さんに「私注射苦手なんです」と言われたらどんな気分になりますか。「プロなんだからしっかりしてよ」と思うでしょう(それ以前に怖いけど)。私たちは「科学のプロ」なんだからプロの商売道具には慣れましょう。
とにかく「科学のプロになるための勉強」をしてください。
というわけで、今日は合成関数、逆関数、それから指数関数の基礎をやろう。
プログラムについて御質問、御要望、バグ報告などございましたら、前野[いろもの物理学者]昌弘へメールくださるか、または、twitterにてirobutsuまでメンションしてください。
関数は「数→数」の対応関係であるが、この対応関係を二段階にしたもの「数→数→数」を「合成関数」と呼ぶ。
たとえば、ある気体を電気ヒーターで暖めているとしよう。ヒーターの電力を変えれば温度が変わる(電力→温度)。そして、温度が変わればその気体中の音速が変わる(温度→音速)。こうすると「電力を変えれば(温度の変化を通じて)音速が変わる」(電力→温度→音速)という関数関係ができることになる(こういう例を自分でも考えてみよう)。
数式の例をあげよう。${y}=1-{x^2}$という${x}\to {y}$という対応関係があり、さらに${z}=\sqrt{{y}}$という${y}\to {z}$の対応関係があれば、この二つをまとめて、${z}=\sqrt{1-{x}^2}$という${x}\to{z}$という「合成関数」を作ることができる。
二つの関数を${y}=f({x})$(yがxの関数である)および${z}=g({y})$(zがyの関数である)と書けば、合成関数は${z}=g(f({x}))$のように書ける(この式の意味は「まず$f({x})$を計算して、計算結果を$g({y})$のyに代入すると、zが求められる」ということだ)$g(f({x}))$を$(g\circ f)({x})$と書くこともある。。
三つの変数が関与する関数なので、立体的に図を描くと左のようになる。
図は
$f({x})={x}^3-{x}^2-2{x}+1$
$g({y})=\sin 3{y}$
の場合で、この時、
\begin{equation} {z}=g(f({x}))= \sin \left(3({x}^3-{x}^2-2{x}+1)\right) \end{equation}ということになるyの変化の激しいところでは合成関数の結果であるzが激しく振動する、という様子が見て取れる。。
合成関数の定義域と値域には注意する必要がある。たとえば上にあげた例(${y}=1-{x^2}$と${z}=\sqrt{{y}}$を合成して${z}=\sqrt{1-{x}^2}$)の場合、${y}=1-{x^2}$だけを見ればxはどんな実数でもよさそう(定義域を$-\infty<{x}<\infty$としてもよさそう)に見えるが、その後で${z}=\sqrt{{y}}$という式にこの答えであるyが代入されることを思えば、$-1\leq{x}\leq 1$という定義域にしておかないと、${z}=\sqrt{1-{x}^2}$という関数が定義されてないことになる(虚数を含めれば話は別であるが)。
下に、動かせる合成関数の図をつける。
ここでは、
y=xという関数と
z=yという関数が合成され、
z=(x)という関数になっている。
◆や◆や◆のような形が走り回っているが、これはx,y,zの変化を表したものである。
1 y |
1 x2 |
のように関数が合成されるところを確認しよう(もちろん他にももっといろいろなパターンがあるので、試してみよう)。
たとえば、
1 x |
3 x |
のようになる。このx=0付近のぐしゃっとなっているところは、実は無限回の振動が隠れているなぜ無限回振動するのか、考えてみよう!。しかしコンピュータの画面も内部での計算でも「無限回の振動」を表すようにはできていない。実際にはxを0.01とか0.02とか、小さなステップで増加させては線を引く、というのを繰り返している。そのステップとステップの間に関数が激しく振動してしまうと、描かれたグラフは正確なものにはならないのである。
これらの関数は互いに逆関数になっているペアがある。それらを確認しよう。
上の図ではx→y→zという合成関数を考えているが、2個めのy zが1個めのx yの逆関数であるので、x→y→xというつながりで元に戻ってくる。
よって、正しく逆関数になっていれば、z=xになるはずだ。
1 b |
a x |
a y |
|y| a |
arcsin(y) a |
|y| a |
ただし、実際やってみるとわかるように、これらは全てがちゃんとした逆関数にはなっていない。たとえばy=x2という関数はxが正でも負でも結果のyは正になる。そして、x=√|y|)の結果はどちらにしろ正の数になる。よって、x<0である状況では「xの符号を外す(絶対値を取る)」ということをしてしまって、逆関数にならないじゃあどうなるか、は上で確認すべし!。
同じような状況が他の場合でも起こり、上の例が逆関数になっていると言ってよいxの範囲は制限されることになる。これも、確認しよう。
x→yという対応に対してこの逆のy→xという対応を元の関数の「逆関数」と呼ぶ$y=f(x)$に対して${x}=f^{-1}({x})$と書くこともある。。
たとえば${y}=2{x}$、すなわちあるxに対しその2倍を対応させる関数の逆関数は${x}={1\over 2}{y}$、すなわち、あるyに対しその${1\over 2}$倍を対応させる関数である。この${x}={1\over 2}{y}$という書き方では、独立変数がyで従属変数がxだということになる。前にも書いたように「独立変数にx、従属変数にyを使うことが多い」のは単なる慣習であり、こだわる必要は何もない。もしどうしても「独立変数はx、従属変数はy」という形にしたければ、「ここでxとyを取り替えます」と宣言した上で${y}={1\over 2}{x}$と書き直せばよいそれで何か本質的なことが変わるわけではない。自然科学ではむしろ「この文字は何を表すか」(質量だったり、圧力だったり温度だったり時間だったり)の方が大事なので、同じ量なら従属変数だろうが独立変数だろうが同じ文字を使い、取り替えたりしない事が多い。。
逆関数を考える時にも定義域と値域に対する注意は必要である。たとえば、「${y}={x}^2$という関数の逆関数は${x}=\sqrt{{y}}$」と言いたくなるが、これは${x}\geq0$という範囲で考えないと正しくない。${x}<0$の範囲であれば、「${y}={x}^2$という関数の逆関数は${x}=-\sqrt{{y}}$」となる。つまりxの領域によって逆関数の形を変えてやらなくてはいけない(これはすぐ下で述べる「関数が1対1か?」という問題のせいでもある)。また、${y}=\sin{{x}}$の逆関数は${x}=\arcsin {y}$と書く($\arcsin$は「アークサイン」と読む)のだが、${x}=\arcsin {y}$のyは$-1\leq{y}\leq1$の範囲になくてはいけない(こう書いた時にはyは独立変数なので、この範囲は「定義域」である)。
もう一つ、逆関数を考える時に気をつけなくてはいけないのは、元の関数が「1対1対応」かどうか、という点である。たとえば${y}=a{x}$(逆関数は${x}={1\over a}{y}$または${y}={a\over {x}}$(逆関数は${x}={1\over a{y}}$)などは、一つのxに対応するyはただ一つであり(でなかったらそもそも関数ではない)、さらに一つのyに対応するxもただ一つである。
しかし、上でも例にした${y}={{x}^2}$はそうではない。たとえば${x}=1$でも${x}=-1$でも${y}=1$になってしまうから、x二つとy一つが対応している(${x}=0$を除く)。このような場合には${x}\to {y}$は関数であるが、${y}\to{x}$は関数ではない。このような場合は前に書いたように、定義域を制限するか、代表を一つ取り出すことでyに対してxが一つだけ決まるようにする。${y}={{x}^2}$の場合であれば、${x}\geq 0$の範囲しか考えないことにすればよい。
より深刻な「1対1対応でない例」が${y}=\sin{{x}}$の逆関数${x}=\arcsin {y}$である。${y}=\sin{{x}}$は$x$に$x+2n\pi$($n$は整数)を代入しても値が変わらない。つまり、y一つ(ただし、$-1\leq {y}\leq 1$)に対して無限個のxが対応してしまう。
では、ここで${y}=\sin {x}$と${x}=\arcsin{y}$のグラフを描いてみよう。
関数と逆関数のグラフの関係は、(独立変数と従属変数の役割を取り替えるものだから)上の図に示したように「${y}={x}$の線、つまり斜め45度$\left({\pi\over 4}\right)$の線を対称線にして折り返す」ことで得られる。しかしこのままでは、${x}=\arcsin{y}$の方が関数になっていない。一つのyに対しxがたくさんあるからである。そこでグラフのうち太い線にした部分$-{\pi\over 2}\leq {x}\leq {\pi\over 2}$だけを取り出して、残りは捨てることにする。結果、${x}=\arcsin{y}$の定義域は$-1\leq {y} \leq 1$、値域は$-{\pi\over 2}\leq {x}\leq {\pi\over 2}$だということになる(こうしないと一つのyに対して一つのxが対応しない)ここで、xのうちどの部分を選ぶかには任意性があるが、対称性のよい$-{\pi\over 2}\leq {y}\leq {\pi\over 2}$を使うことが多い。。
この二つの関数を合成するとこれはx=xに戻る…と期待したいところだが、そうはいかない。右に${y}=\sin {x}$と${z}=\arcsin{y}$(まだ元に戻るとは限らないから左辺はxにせず新しい変数zとした)のグラフが合成されるとどのようになるかを描いた。順番に見ていくと、${y}=\sin {x}$という関数の「答え」は$-1\leq {y} \leq 1$の範囲である。さらに${z}=\arcsin {y}$という関数による「答え」は$-{\pi\over 2}\leq {z}\leq {\pi\over 2}$に制限されてしまう。
つまり元々のxの範囲は任意の実数であったのに、二つの関数を(元に戻ると期待して)作用させた結果、$-{\pi\over 2}\leq {z}\leq {\pi\over 2}$に制限された答えが返ってきたということである。よって、この範囲であれば確かに$\arcsin$は$\sin$の逆関数になっている(グラフの形からわかるように、1対1対応にするためにはこんなふうに変数の領域を制限する他はない)。逆関数を作る時にはこの点に注意が必要である。
${y}=\cos{x}$の逆関数は${x}=\arccos{y}$である($\arccos$は「アークコサイン」と読む)。こちらも変数の範囲に注意が必要だが、ここではグラフだけを載せておこう。
$y=\arccos x$の値域は$0\leq y \leq \pi$にすることが多い。$\tan$の逆関数である$y=\arctan x$もある。
$\arctan$は「アークタンジェント」と読む。値域は$-{\pi\over 2}<{y}<{\pi\over 2}$とすることが多い。グラフからわかるように、$\tan {x}$のグラフは同じ形の繰り返しだが、その一つだけを取り出して考えないと、逆関数は定義できない。
階段関数
\begin{equation} \theta({x})=\begin{cases}1&{x}>0\\ 0&{x}<0\end{cases} \end{equation}符号関数
\begin{equation} \epsilon({x})=\begin{cases}1&{x}>0\\ -1&{x}<0\end{cases} \end{equation}しかし、`計算'はしてないかもしれないがxを決めればyが決まるという対応である以上、これも立派な関数であるなお、${\theta}({x})$も$\epsilon({x})$も、${x}=0$での値を示していないが、${\theta}(0)={1\over 2},\epsilon(0)=0$とすることが多い。。
もっと「変」な関数正確には、デルタ関数は関数として認められないのだが、細かい議論はここでは省く。の例が
Diracのデルタ関数
\begin{equation} \delta({x})=\begin{cases}0&{x}\neq 0\\ \infty &{x}=0\end{cases} \end{equation} \begin{equation} かつ~~~~~ \int_a^b \delta({x})\mathrm dx =\begin{cases} 0& 区間(a,b)が{x}=0を含まないとき\\ 1& 区間(a,b)が{x}=0を含むとき \end{cases} \end{equation}である(本書ではまだ積分について説明してないので、後半部分については積分まで勉強した後で理解して欲しい)。こういう関数をどう使うのか(どんな使い途があるのか)についてはずっと後で述べることにしよう。
とっても変な関数としては、
\begin{equation} f(x)=\begin{cases} 0&xが無理数のとき\\ 1&xが有理数のとき \end{cases} \end{equation}もある。これは何かに使うというより「こういう変なものも関数だから、気をつけろ」という「例外を示す」のによく使われるようだ。この関数はありとあらゆる場所で連続でない、という病的な性質を持っている。
$x\times x={x}^2,x\times x\times x={x}^3$などと、同じ数を複数回掛ける計算を右肩に小さい字で回数を示して表すが、この${x}^2,{x}^3,{x}^4,\cdots$などの右肩の数字を「指数(expornent)」、冪乗されている方の数を「底(base)」と呼ぶ。$x^n$と書いた時、$n$が指数で$x$が底である(つまり、$底^{指数}$)。底は正の定数としておこう負になった場合は定義の仕方に注意が必要である。。
関数${y}={x}^n$の時は底xが独立変数であって指数$n$が関数の形を決めるパラメータとなっている。つまり$(従属変数)=(独立変数)^{(パラメータ)}$であった。
「指数関数」というのはこの指数の方が独立変数になっている関数である。指数関数を${y}=a^{{x}}$と表現すると、指数xが独立変数で、底$a$がパラメータである。つまり$(従属変数)=(パラメータ)^{(独立変数)}$である(式の形は同じでも「何を変化させた時の変化が見たいのか」が違う)一般的には、${y}=C a^{{x}}$のように、指数関数に更に定数$C$が掛かった関数を考えることが多い。。
こういう関数が必要になる例は自然科学でも日常生活でもある。たとえば年10%の利子がつく借金があったとすると、最初10000円借りても、1年ほっておくと$10000\times 1.1=11000$円になる。そして2年ほっておくと、12000円になるのではなく、$11000\times 1.1=12100$円になる(3年だと$12100\times 1.1=13310$円である)。この場合はx年経った時、借金は${y}=10000\times 1.1^{{x}}$になっている(ちなみに10年だと25937.42460100002円である)。指数関数はこんなふうに「毎回同じ割合で増えていく(あるいは減っていく)」時に使われる。
例として、${y}=2^{{x}}$という関数を考えて、まずはxが0以上の整数である場合(負の場合についてはすぐ後で考える)の表を作ってみると、
x | 0 | 1 | 2 | 3 | 4 | 5 | … |
---|---|---|---|---|---|---|---|
y=2x | 1 | 2 | 4 | 8 | 16 | 32 | … |
のようになる。
説明なしに書き込んだので、上の表で$x=0$の時${y}=1$であること($2^0=1$)を不思議に思う人は多いかもしれない。
しかし上の表および右のグラフを見ると、この関数は「xが1増えると2倍になる」「xが1減ると半分になる」という変化をしている。だから、$x=1$から1減って$x=0$になれば、$x=1$の時の値である2の半分になる(つまり1になる)方が筋が通っている。 それに、$2^0=0$にしてしまうと
同じ底の冪の掛算は、指数の足算
\begin{equation} a^{x_1}\times a^{x_2}=a^{x_1+x_2}\label{sisuukakezan} \end{equation}という関係が、$x_1$もしくは$x_2$が0の時に成り立たなくなってしまう。$x_1$と$x_2$が自然数である時は、この式は「$a$を$x_1$回掛けたものと$a$を$x_2$回掛けたものの掛算は$a$を$x_1+x_2$回掛けたものだ」と主張している。$x_1=0$にするとこの式は
\begin{equation} a^{x_1} \times a^{0}=a^{x_1+0} \end{equation}となるから、$a^0$は($a$が0でない、どんな数であろうが!)1でなくてはいけない。
いや、俺は$2^0=0$がいいねと思う人もいるかもしれない。どうしてもそうしたければ、$a^{x_1}\times a^{x_2}=a^{x_1+x_2}$という計算ルールは、指数が0の時を例外とする定義を使うしかない。なるべくなら例外のないルールの方がいいので、世間ではそうしていないのである。
別の言い方をすれば、以下のようにも考えられる。掛算における「なにもしない」という計算は「1を掛ける」ことである。掛算を指数を使った計算に直すと足算になるが、足算における「なにもしない」という計算は「0を足す」である。よって、「1を掛ける」と「指数に0を足す」が同じ計算になるためには、$a^0=1$でなくてはいけない。
以下で、この$x_1$や$x_2$を自然数および0以外の数にも拡張していこう。
まず、$x_1$もしくは$x_2$が負の整数である場合はどうだろう?---グラフをxが負の領域まで伸ばしてみたのが右の図で、これから、$2^{-1}={1\over 2},2^{-2}={1\over 4}$と半分にしていけばよいのではないかと思われる。
これが上の計算ルールに即していることを確認しよう。 \begin{equation} \underbrace{2^{4}}_{16}\times 2^{-1}=2^{4-1}=2^3=8 \end{equation}
という式が成立するためにも、$2^{-1}={1\over 2}$であればよいことがわかる。こうして、
と気づくだろう。これから、
同じ底の冪の割算は、指数の引算
\begin{equation} {a^{x_1}\over a^{x_2}}=a^{x_1-x_2} \end{equation}ということもわかる。$2^{x}\times 2^{-x}=2^{x-x}=2^0$という式を書いてみれば、$2^0=1$が妥当な選択だということが再び確認された。
「$a^{x_1}\times a^{x_2}=a^{x_1+x_2}$という計算ルールを尊重する」という立場に立てば、$a^{1\over 2}$や$a^{1\over 3}$(あるいは$a^{1\over 100}$だろうと)をどのように定義すべきかわかる。$a^{1\over 2}\times a^{1\over 2}=a$となるためには$a^{1\over 2}=\sqrt{a}$となるわけである。同様に、$a^{1\over 3}=\sqrt[3]{a}$であり、$a^{1\over 100}=\sqrt[100]{a}$である$\sqrt[n]{a}$は「$n$乗すると$a$になる正の数字」という定義だから、これは定義を別の書き方で書きなおしているだけのことだ。。こうしてたとえば$a^{3.42}$という量を計算する方法を我々は知ることができる(たとえば100回掛けたら$a^{342}$になる数だと思えばよい---計算で求めるのはたいへんそうだが!しかしそんなたいへんな計算も、後で出てくる対数関数や、微分やテイラー展開の助けを借りて楽に計算できるようになる。)。こうして$a^{{x}}$という関数をxが小数、分数などで表現される有理数である場合について計算できるようになる。
ではxが無理数である場合(たとえば$2^{\sqrt{2}}$は?---あるいは$5^\pi$は?)はどう考えようか。
たとえば、$\sqrt{2}\fallingdotseq1.41421356237\cdots$であるから、
$2^1$ | =2 |
$2^{1.4}$ | ≒ 2.63901582… |
$2^{1.41}$ | ≒ 2.65737162… |
$2^{1.414}$ | ≒ 2.66474965… |
$2^{1.4143}$ | ≒ 2.66530382… |
$2^{1.41435}$ | ≒ 2.66539620… |
$2^{1.414356}$ | ≒ 2.66540728… |
のようにどんどん精度を上げつつ計算していけば、$2^{\sqrt{2}}$の値が計算できる実際には我々は後で説明する微積分の応用であるテイラー展開という方法を使ってこの値を計算する。。もちろん有限桁の小数では$\sqrt{2}$は絶対に表せない($\sqrt{2}$は有理数ではない)から、値そのものが計算できるとはいえない。しかし、「$2^{\sqrt{2}}$の値が必要な精度(有効数字)に達するまで、いくらでも$\sqrt{2}$の近似値の精度を挙げて、その精度で$2^{\sqrt{2}}$に近い数字を計算することが可能である」ということであるこの「必要な精度になるまでいくらでも桁数を上げていける」という考え方は重要である。。
右の図は$2^{{x}},3^{{x}},4^{{x}},5^{{x}},6^{{x}}$のグラフである。グラフの形状は、xが増加するに従って急速に(グラフの傾きが大きくなりながら)増大していく関数である。そのため「指数関数的に増大する」という言葉はしばしば「手に負えないほど非常に速く増える」を意味するものとして使われる既に述べたように借金の増大は指数関数的だから、放っておくと手に負えなくなる。。グラフは${x}=2$までしか描かれていないが、例えば${x}=10$では$2^{10}=2014$であり、右のグラフはあっという間に天井を突き抜けてしまうのである。さらに、${x}=100$では$2^{100}=1267650600228229401496703205376$というとんでもない数字になる。
上で指数の足算が冪の掛算になる、という話をしたが、では指数の掛算はどうなるかというと、$\left(x^2\right)^3=x^2\times x^2\times x^2=x^6$(2乗してから3乗するのは6乗するのと同じ)なお「2乗」だけは「自乗」という言い方もある。}などの類推からわかるように、
冪乗の冪乗は指数の積
\begin{equation} \left( a^{x_1} \right)^{x_2} = a^{x_1x_2} \end{equation}という式が成り立つ(当然ながら、$n$乗してから${1\over n}$乗すると元に戻る)。
上のグラフは指数関数y=axのグラフである。
y=(2.0)x
底(a)を大きくすると、あっというまに線がグラフの上端を突き抜けてしまう。
グラフ一番上のy座標が4
青字は受講者からの声、赤字は前野よりの返答です。