合成関数の微分
合成関数とは
次に示すような2つの関数があるとします。
式(9)\[ \begin{align*} & y = f(x) \\[10pt] & x = g(t) \end{align*} \]
式(9)の1行目の式は、ある \(x\) を一つ選択して関数 \(f\) 代入すると値 \(y\) が返ってくる関係式で、これまでにもよく見てきたものです。
これだけが与えられる状況では、普通変数 \(x\) は自由に選択することができます。
しかしここに2行目の関係が加わると、少し状況は変わってきます。
2行目の関係式は \(x\) が実は別の変数 \(t\) によって操作されている事を表します。
私達が手を自由に動かしているつもりが実は脳の司令によって動かされているかのようです。
以上の関係は模式的に表すと理解しやすくなります。
まずは順番に式(9)の1行目の関係式から考えて、\(x\) と \(y\) が関数 \(f\) によって対応付けられている状況を次のように記述してみましょう。
対応関係(1)\[ x \xrightarrow{~~~ f ~~~} y \]
また同様に \(t\) と \(x\) が関数 \(g\) によって対応付けられた状況は次のように記述できます。
対応関係(2)\[ t \xrightarrow{~~~ g ~~~} x \]
これら2つの関係を見ると、両方に \(x\) が含まれていることが分かります。
この \(x\) を仲介させて2つの関係を連結させると、\(t\) と \(y\) の間の関係も考えることができるようになります。
対応関係(3)\[ t \xrightarrow{~~~ g ~~~} x \xrightarrow{~~~ f ~~~} y \]
具体的には、ある \(t\) に対して関数 \(g\) が返す値 \(x\) を、続けて関数 \(f\) に代入することを意味し、結果として \(y\) が返されるのですね。
そしてこれは \(x\) の仲介を明示せずに \(t\) と \(y\) の関係をダイレクトに記述しても問題ありません。
対応関係(4)\[ t \xrightarrow{~~~ (?) ~~~} y \]
ただし、このときどのような関数が \(t\) と \(y\) を関係づけているのかはまだ示していないために (?) という記号を用いています。
先程の対応関係(3)を見ながら、\(t\) と \(y\) の関係を表す関数を作ってみましょう。
これは先程述べた数学的操作を書き下せばいいので、実際に \(f(x)\) に \(x = g(t)\) を代入すれば次のように記述されるようになります。
式(10)\[ y = f\left(g(t)\right) \]
式(10)のように、ある関数に対して別の関数が代入されたものを合成関数と呼びます。
合成関数の具体的な表式は後ほど例題で示していますので、参考にしてください。
合成関数の微分
\(y = f(x)\) が \(x\) について微分可能であり、かつ \(x = g(t)\) が \(t\) について微分可能である状況を考えます。
数学的に表現すれば次のようになりますね。
式(11)\[ \begin{align*} \frac{dy}{dx} = \frac{df(x)}{dx} \\[10pt] \frac{dx}{dt} = \frac{dg(x)}{dt} \end{align*} \]
このとき合成関数 \(f\left(g(t)\right)\) の \(t\) についての微分を考えることができます。
式(12)\[ \frac{df\left(g(t)\right)}{dt} \]
これから計算を進めていきたいのですが、この状態では少し複雑なので、一旦 \(g(t)\) を \(x\) に戻しておくことにします。
式(13)\[ \frac{df(x)}{dt} \]
ここで微分の定義式(1)を利用したいのですが、\(\frac{df}{dx}\) は変化量の比 \(\frac{\Delta f}{\Delta x}\)( ただし \(\Delta f = f(x + \Delta x) - f(x)\) )に対して \(\Delta x \rightarrow 0\) の操作を施したものであることを思い出すと、式(13)は次のように書けることが分かります。
式(14)\[ \frac{df(x)}{\textcolor{red}{dt}} = \lim_{\textcolor{red}{\Delta t \rightarrow 0}}\frac{\Delta f}{\textcolor{red}{\Delta t}} \]
単に \(d\) を \(\Delta\) で置き換えて、余分に \(\lim\) が付いたくらいという話です。
更に式(14)の右辺を次のように書き換えてみましょう。
式(15)\[ \begin{align*} \frac{df(x)}{dt} &= \lim_{\Delta t \rightarrow 0} \left\{ \frac{\Delta f}{\textcolor{red}{\Delta x}} \cdot \frac{\textcolor{red}{\Delta x}}{\Delta t} \right\} \\[20pt] &= \lim_{\textcolor{red}{\Delta x \rightarrow 0}} \frac{\Delta f}{\Delta x} \cdot \lim_{\Delta t \rightarrow 0}\frac{\Delta x}{\Delta t} \end{align*} \]
式(15)2行目で、\(t \rightarrow 0\) を \(x \rightarrow 0\) で置き換えている箇所にも注意してください。
\(t\) と \(x\) は関数 \(g\) で関係付けられているため、連動してこのような変換が可能になります。
また冒頭で仮定しているように、関数 \(f\) および \(g\) は考えている \(x\) および \(t\) の範囲内で微分可能で式(11)が定義されるので、このことから式(15)は次のようになります。
式(16)\[ \begin{align*} \frac{df(x)}{dt} &= \lim_{\Delta x \rightarrow 0} \frac{\Delta f}{\Delta x} \cdot \lim_{\Delta t \rightarrow 0}\frac{\Delta x}{\Delta t} \\[20pt] &= \frac{df(x)}{dx} \cdot \frac{dx}{dt} \\[20pt] &= \frac{df(x)}{dx} \cdot \frac{dg(t)}{dt} \end{align*} \]
結果は合成関数を構成する関数 \(f\), \(g\) それぞれの導関数の積となることが分かりました。
式(16)2行目よく観察すると、微分の記号を分数に見立てて \(dx\) を約分すると左辺に戻るかのようです。
実際に、微分の記号は分数であるかのように扱うことが可能なのです。
※微分演算は分数として扱うことが可能ではありますが注意しなければならない点があります。微分演算には別のコンテンツで扱っている「偏微分 \(\partial\)」という演算も存在し、その際には分数のように扱うことは許されません。 そういった計算ミスを防ぐためにも微分は分数ではないと耳にタコができるほど主張される所以なのでしょうか。ちなみに偏微分と区別するために \(d\) で表現される微分は「常微分」と呼ばれることがあります。
具体例
三角関数を含んだ合成関数は頻出なので例に取り上げます。
関数 \(f(x) = \cos x\), \(g(x) = x^2\) があるとき、合成関数 \(f\left(g(x)\right)\) の微分を求めたいとしましょう。
公式に当てはめればいいので次のようになります。
\[ \begin{align*} \frac{df\left(g(x)\right)}{dx} &= \frac{df(y)}{dx} \\[10pt] &= \frac{d}{dx}\cos y \\[10pt] &= \frac{dy}{dx} \cdot \frac{d}{dy} \cos y \\[10pt] &= \frac{d}{dx}x^2 \cdot (-\sin y) \\[10pt] &= 2x \cdot (-\sin x^2) \\[10pt] &= -2x\sin x^2 \end{align*} \]
実際、簡単な合成関数の場合はこのような過程を踏む必要なくほぼ暗算可能ではありますが、複雑な関数の場合には丁寧に過程を踏めるようになっておくと計算ミスを防ぐことができます。