第224回 平均値の定理(後編)

「僕」とテトラちゃんが《平均値の定理》の証明に挑戦。証明できたと思っていたけれど……「関数を組み立てよう」シーズン第2章後編。

登場人物紹介

:数学が好きな高校生。

テトラちゃんの後輩。 好奇心旺盛で根気強い《元気少女》。言葉が大好き。

平均値の定理をどうやって証明する?

テトラちゃんに、平均値の定理の証明について話そうとしているところ(第223回参照)。

平均値の定理

二つの実数a,bは、a<bを満たすとする。

関数f(x)は、axbで連続とする。

さらに関数f(x)は、a<x<bで微分可能とする。

このとき、

f(b)f(a)ba=f(c)
を満たす実数cが、abのあいだに存在する(a<c<b)。

テトラ「でも、条件って……これだけですよね?」

  • 二つの実数a,bは、a<bを満たす。
  • 関数f(x)は、axbで連続である。
  • 関数f(x)は、a<x<bで微分可能である。

「そうだね。これだけ。これだけで証明できる。これだけといっても、連続微分可能というのはとても強い条件だよ」

テトラ「どんな証明になるのか、まったく想像が付きません……先輩は証明をご存じなんですよね?」

「うん、うろ覚えだけど以前やったことがあるよ」

テトラ「平均値の定理の証明、教えてください。よろしくお願いします、先輩!」

「こんなふうにして、僕たちの旅が始まった。このときには、未来にどんな困難が待ち受けているのか二人とも想像できなかったのだ……」

テトラ「はい?」

「いやいや独り言。証明を少しずつ思い出すから、ゆっくりいっしょに行こう」

テトラ「はいっ!」

「平均値の定理の証明は、まず最初に関数f(x)を単純化するところから始めよう。《両端の関数値が等しい》という条件を付けてやるんだよ。つまり、f(a)=f(b)という条件で考えることにする。 そうすると、f(b)f(a)=0になるから、証明すべきことがシンプルにできる。f(c)=0になるcを見つければいいということだから」

テトラ「えっ? そんな勝手な条件をつけてもいいんでしょうか。そのようなことをしたら、平均値とは違う定理を証明したことになってしまいますよね」

「そうなっちゃうね。関数f(x)に条件を付けた平均値の定理は、ロルの定理っていうんだ。 だから、平均値の定理とロルの定理のあいだはちゃんとつないでやる必要がある」

テトラ「つなぐ?」

「うん、ちゃんと順序を追って説明するよ。混乱しないようにロルの定理で証明する関数の方はg(x)という別の名前をつけておくね」

ロルの定理

二つの実数a,bは、a<bを満たすとする。

関数g(x)は、axbで連続とする。

さらに関数g(x)は、a<x<bで微分可能とする。

またg(a)=g(b)であるとする。 ←ここが違うところ!

このとき、

g(c)=0
を満たす実数cが、abのあいだに存在する(a<c<b)。

テトラ「なるほど……意味はわかります。平均値の定理で証明すべきことは、両端点を結んだ線分と平行な接線が引けるということでした。 ロルの定理で証明すべきことは、水平な接線が引けるということですね? g(c)=0は接線が水平ということですから」

「そういうこと。g(a)=g(b)のとき両端点(a,g(a))(b,g(b))を結んだ線分は水平だから、水平な接線が引けるなら、線分と接線は平行になってることになる。 つまりロルの定理は、平均値の定理の特別な場合ということだね」

テトラ「でも、f(x)g(x)は違うものですよね」

「うん、そうだね。平均値の定理とロルの定理は別の定理。でも、ロルの定理が証明できれば、そこからすぐに、平均値の定理も証明できるんだ」

テトラ「へ、へえ……そうなんですか。そういう感覚は想像が付きません」

「だって、平均値の定理に出てくるf(x)が与えられたなら、そこからg(a)=g(b)を満たすようなg(x)はすぐに作れるよ」

テトラg(x)を……作る?」

「だって、

y=f(x)
のグラフを、
y=f(b)f(a)ba(xa)
のグラフの分だけ下げてやるだけでいいからね。 引き算して、こんなg(x)を作ればいいんだ」

g(x)=f(x)f(b)f(a)ba(xa)

テトラ「ははあ……」

「こんなふうにg(x)を作れば、g(a)=g(b)という式になっていて、しかもf(x)の連続性や微分可能性が、そのままg(x)にも引き継がれる。 平均値の定理で与えられている条件を持つf(x)があったとしたら、 そのf(x)からg(x)を作る。 そしてそのg(x)についてロルの定理を証明する。 そのときに存在が証明されたcを使って、 f(x)について平均値の定理が証明できたことになる」

テトラ「そう……なりますか?」

「なるよ。だって、

g(x)=f(x)f(b)f(a)ba(xa)
xで微分してみよう。そうすると、
g(x)=f(x)f(b)f(a)ba
になるよね。g(x)xcを代入すると、
g(c)=f(c)f(b)f(a)ba
になる。 もしもこのcが、ロルの定理でg(c)=0が成り立つようなcだとしたら、右辺も0に等しくなる。 つまり、
f(c)f(b)f(a)ba=0
が成り立つということ。 こういうcが存在するといえるなら、
f(c)=f(b)f(a)ba
が成り立つcが存在するといえる。そしてそれが平均値の定理の証明で言いたかったこと」

テトラ「な、なるほどです!」

「だから、ロルの定理を証明しさえすれば、平均値の定理が証明できたことになる」

テトラ「そんなふうにf(x)からg(x)を作ればいいなんて、あたしはとうてい思いつきそうもありません……」

「僕だってそうだよ。平均値の定理を証明するときに、いきなりこんなこと思いつかない。ロルの定理については本を読んで覚えていただけだよ」

テトラ「覚えてるというのがすごいです」

「細かいところまで暗記しているって意味じゃないよ。こんなふうにして証明するんだなあ……という方針を理解したっていうこと。 ともかくこれで、僕たちが証明すべきことは、平均値の定理からロルの定理に移ったことになるね」

テトラ「ドミノ倒しのように、ロルの定理が平均値の定理を倒してくれるんですね!」

「ロルの定理を倒すのは、僕たちだけどね」

テトラ「そうですね……」

ロルの定理

「ということで、僕たちの目標はロルの定理を証明すること」

ロルの定理

二つの実数a,bは、a<bを満たすとする。

関数g(x)は、axbで連続とする。

さらに関数g(x)は、a<x<bで微分可能とする。

またg(a)=g(b)であるとする。

このとき、

g(c)=0
を満たす実数cが、abのあいだに存在する(a<c<b)。

テトラ「ここでもやはりg(x)は何だかわからないんですよね? 連続性と微分可能性とg(a)=g(b)という条件はありますが、ほかには何もわかっていない関数……何をどうすればいいのか、さっぱりわかりません。 手の付け所がない問題って、いったいどうしたらいいんでしょう」

「ポリヤの問いかけには、《問題の一部分をとくことができるか》や、 《もっと特殊な問題はとくことができるか》 というものがあるね」

テトラ「平均値の定理を証明する代わりにロルの定理を証明するのは、もっと特殊な問題を解くことですね」

「そうだね。ロルの定理でも、関数g(x)が特殊な場合を考えてみることができるよ。たとえば関数g(x)が、axbの範囲で、

g(x)=f(a)
という定数関数だったらどうなると思う?」

テトラg(x)がずっとf(a)ということですね。それならy=g(x)のグラフは水平線ですから、ロルの定理は成り立つと思います。abのあいだのどの点をとっても、接線は水平になりますから。 接線というのも何だか変な感じがしますけれど」

y=f(a)という水平線のグラフになるからね。でも、ともかくg(x)が定数関数だったら、g(c)=0という実数cは存在するのは確か。 a<c<bを満たすどんな実数cでもg(c)=0になってくれる」

テトラ「でも、それは特殊なg(x)ですから、ロルの定理を証明したことにはなりませんよね?」

「ならないね。でも、ここから僕たちは、

g(x)f(a)
を満たすxa<x<bに存在するときの関数g(x)に限って考えればいいわけだ」

テトラ「それは、y=g(x)のグラフでいうと、上に出たり下に出たりする部分があるというイメージでいいですよね。水平線じゃないグラフ」

「うん、それでいいよ」

テトラ「ちょっとお待ちください。たとえばy=g(x)のグラフはこのような形になって、 見つけたいのは、g(c)=0となるcですよね。接線が水平になるときの接点のx座標」


「そうだね。たとえば」

テトラ「だったら、g(c)というのはy=g(x)最大値ということじゃないでしょうか! だって最大値を取るところでは、接線は水平になりますから!」

「すごい! それは、ほとんど正解。ただ、注意点が一つあるんだ」

テトラ「注意点……と、いいますと?」

「それはね、a<x<bの範囲で関数g(x)最大値をとらない場合があるということ」

テトラ「ええっ?」

「だって、y=g(x)がこういうグラフだったら、g(x)a<x<bで最大値をとらないよね」

a<x<bで最大値をとらない場合

テトラ「あっ、確かにそうですね……この場合には最大値ではなくて最小値を考えることになりますね」

「そうだね。うん、テトラちゃんと話しているうちに思い出してきたよ。g(x)が最大値を取る場合と取らない場合で分けて考えるのはたいへんだから、 最大値を取らない関数の場合は、上下反転させた関数で考えることにする。 そうすれば、最大値を取る場合のロルの定理だけを証明すればいいことになる。 上下反転を元に戻せば最小値について考えていることになるからね。 《最大値を取らない関数の場合》を《最大値を取る関数の場合》に帰着したことになる」

a<x<bで最大値をとらない場合は、上下反転して考える

テトラ「おもしろいです! 何だか犯人を追い詰めているみたいです!」

  • あたしたちは、平均値の定理を証明するために、ロルの定理を証明しようとしています。
  • ロルの定理のうち、定数関数についてはすぐに証明できました。
  • ロルの定理のうち、最大値を取らない関数については上下反転させることで最大値を取る関数に帰着しました。
  • すると残っているのは……?

「残っているのは?」

テトラ「残っているのは、最大値を取る関数でロルの定理を証明することです!」

「そうだね! じゃあ、僕たちが証明したいことを改めて書いてみよう」

テトラ「はい!」

あたしたちが証明したいこと

二つの実数a,bは、a<bを満たすとします。

関数g(x)は、axbで連続とします。

さらに関数g(x)は、a<x<bで微分可能とします。

またg(a)=g(b)であるとします。

しかも関数g(x)は、a<c<bなる実数cで最大値g(c)を取るとします。

このとき、

g(c)=0
が成り立ちます。

テトラ「……ということを証明したいです」

「そうだね」

テトラ「なるほどです。証明したいことに、少しずつ条件を増やしていったことになるんですね」

「うんうん。関数g(x)は、a<c<bなる実数cで最大値g(c)をとる……という条件を付けた。 そのときのcが、僕たちの求めたいcのはず。g(c)=0になるcのはず」

テトラ「でも、先輩。g(c)=0って証明できるんですか? グラフで見ると、最大値を取るところで接線が水平になるのは《あたりまえ》に見えます。 あたりまえに見えるものを証明するって……難しいです」

「そういうときこそ《定義にかえれ》だよね」

テトラ「《定義にかえれ》……何の定義でしょう。微分?」

「そうだね。g(c)というのは、x=cでの関数g(x)の微分係数。それが0に等しいということは、

limh0g(c+h)g(c)h=0
が成り立っているということ。別の言い方をすれば、
h0ときg(c+h)g(c)h0
が成り立っているということ。 g(c)が最大値になるとき、この式が成り立っていると証明すれば終わり」

テトラ「すみません……あたしは《定義にかえれ》がうまく使えないようです。これは極限ですよね。これが出てきたとたん、どうしたら考えを進めることができるか、 途方に暮れてしまうんです」

「極限は無限がでてくるから難しいけど、その一歩手前まではテトラちゃんでも行けるはずだよ」

テトラ「極限の一歩手前とはどういうことですか?」

「うん、この式は何を表しているかということ」

g(c+h)g(c)h

テトラ「……」

「これは極限じゃないよね。関数と引き算と分数しか出てこない。そしてh0だ」

テトラ「これは、直線の傾き……ですか?」

「そうだね。(c,g(c))という点と(c+h,g(c+h))という点を結んだ直線の傾きだよね」


テトラ「二本?」

h<0の場合とh>0の場合の両方を描いたんだよ。h0だから、h<0の場合とh>0の場合があるよね」

テトラ「……」

「……」

テトラ「先輩!あたし、わかったかもしれません! 《あたしたちが証明したいこと》の証明!」


「どうぞどうぞ。お話しください、テトラちゃん」

テトラ「あのですね。あたしがいま使える武器……使える条件は《g(c)は最大値である》ということですよね。この二本の直線を見ていて気がついたんですが……

  • h<0では直線は右上がり
  • h>0では直線は右下がり

……になります。 だって、《g(c)は最大値》なんですから、g(x)の他の値は《必ずg(c)以下》のはずですっ!」

「その通りだね」

テトラ「それはちゃんと式でも書けます。《g(c)は最大値》ですから、h>0のときもh<0のときも、

g(c+h)g(c)
が成り立ちます。つまり、
g(c+h)g(c)0
がいえます! いえますよね?」

「いえるよ!」

テトラ「この式、微分係数の定義に出てくる式です!

g(c+h)g(c)h
を考えますと、
h>0ときg(c+h)g(c)h0
h<0ときg(c+h)g(c)h0
とがいえることになります。 だったら《g(c)は最大値》という条件があれば、
h0ときg(c+h)g(c)h0
がいえたことになります!」

「はい、正解。ちょっぴり補足すると、 g(x)a<x<bで微分可能だから、a<c<bなるcでの微分係数g(c)が存在することが保証されている。 g(c)が存在するということは、直線の傾き、

g(c+h)g(c)h
の値は、 hを正の方から0に近付けたときと負の方から0に近付けたときで等しい値に収束しなくてはいけない。 hをどんなふうに0に近付けても等しい値に収束するというのが極限値だから。 ところで、h>0のときの直線の傾きはいつも0以下で、h<0のときの直線の傾きはいつも0以上。 だから、極限値は0でなくちゃいけない。これでロルの定理の証明は終わりだよ」

テトラ「おもしろいです!」

ミルカ「今日は、どんな話?」

テトラ「ミルカさん!」

登場人物紹介(追加)

ミルカさん:数学が好きな高校生。のクラスメート。長い黒髪の《饒舌才媛》。

テトラ「今日は、平均値の定理の証明をしていたんです!」

ミルカ「ロルの定理に帰着」

テトラ「そうです、そうです!」

「ちょうどいま、ロルの定理の証明が終わったところなんだよ」

テトラ「証明の流れがおもしろかったです」

  • 平均値の定理を、ロルの定理に帰着させます。
  • ロルの定理のうち、定数関数についてはすぐに証明できます。
  • ロルの定理のうち、最大値を取らない関数については上下反転させることで最大値を取る関数に帰着して証明できます。
  • 残っているのは、最大値を使ってロルの定理を証明することです。
  • 最大値であるという性質と微分係数の存在を使って証明ができました。

ミルカ「ふうん……これはこれで楽しいけれど、もう一歩踏み込もう」

「もう一歩って?」

ミルカ「ここまでで証明できたことは、もしg(x)a<x<b最大値を取るならば、 ロルの定理が成り立つということだ」

テトラ「最大値を取らない関数については上下反転させて考えることにしたんですが……」

ミルカ「そういう話ではない」

「どういう話なんだろう」

ミルカ「こういう話」

問題

以下の条件をすべて満たす関数F(x)は、a<x<bで最大値を取ることを証明せよ。

  • F(x)は、axbで連続である。
  • F(a)=F(b)である。
  • F(x)は、a<x<bで最小値を取らない。

ミルカ「関数g(x)が、a<x<bで最小値か最大値を取ってくれれば証明は終わっている。 だとしたら、残るピースはこれだ」

「これは……あたりまえじゃないんだろうか」

テトラ「あたりまえに見えるものを証明するって……難しいです」

(第224回終わり。第225回に続く)

ケイクス

この連載について

初回を読む
数学ガールの秘密ノート

結城浩

数学青春物語「数学ガール」の女子高生たちが数学トークをする楽しい読み物です。中学生や高校生の数学を題材に、 数学のおもしろさと学ぶよろこびを味わってください。本シリーズはすでに何冊も書籍化されている人気連載です。 (毎週金曜日更新)

この連載の人気記事

関連記事

関連キーワード

コメント

012F840A_orange なんでちょっとシャーロック・ホームズ風なんですか( 約1時間前 replyretweetfavorite

shu1023soa 特殊から一般へ、また定義に帰れ。 大切な考え方だと思います。 読み終えた後の爽快感が心地よく、楽しかったです。 約1時間前 replyretweetfavorite

aokiaji 平均値の定理とロルの定理 大学一年生の解析学の講義で証明を習ったのを覚えています。私はテトラちゃんのようには閃きませんでしたが...笑 約2時間前 replyretweetfavorite

MQ_null 数学の言葉で、当たり前を解き明かす 当たり前だけど大切なこと 約15時間前 replyretweetfavorite