コーシーの関数方程式の解法と応用

関数方程式の意味や,コーシーの関数方程式について解説します。

関数方程式とは

関数方程式とは「関数を求める」ような方程式です。

関数方程式の問題例

f(x+y)=f(x)f(y)f(x+y)=f(x)f(y) を満たす連続関数 f(x)f(x) を求めよ。

答え: f(x)=Cx,(Cf(x)=C^x,\:(C は定数,解き方は後述)

関数方程式は大学入試ではあまり出題されないので,慣れないうちは非常に難しく感じます。

しかし,関数方程式は解法のパターンがいくつかあり,知っていると差をつけることができます。このページでは関数方程式の最も基本的な例であるコーシーの関数方程式を紹介します。

コーシーの関数方程式

コーシー(cauchy)の関数方程式

f(x+y)=f(x)+f(y)f(x+y)=f(x)+f(y)

この関数方程式を満たす関数を求めたいわけですが,この式が線形性を表していることに気づけば,比例 f(x)=axf(x)=ax が答えっぽいと予想できます。そして実際 f(x+y)=a(x+y)=ax+ay=f(x)+f(y)f(x+y)=a(x+y)=ax+ay=f(x)+f(y) となり方程式を満たします。

しかし,関数方程式を満たす全ての関数を求めなければいけないので,コーシーの関数方程式を満たす他の関数がないことを示す必要があります。つまり,十分条件だけではだめで必要条件も求めないといけません。

ちなみに,関数方程式の問題は,

  1. 関数方程式の解を予想する
  2. 実際に代入して予想が正しいことを示す
  3. 他に解がないことを証明する

という流れで解く場合も多いので,関数方程式の解を予想するというのは重要です。残念ながらコーシーの関数方程式は直線以外の解がないことを証明するのが難しいので別の方法で解くことになりますが, 関数方程式を見たら答えを予測する癖をつけておきましょう。

コーシーの関数方程式の解法

1:まずは xx が整数のときに f(x)f(x) の値がどうなるか調べる

関数方程式の多くの問題では,まず x,yx,y にいろいろ値を代入して様子を調べます。

x=y=0x=y=0 を代入して,f(0)=f(0)+f(0)f(0)=f(0)+f(0) よって,f(0)=0f(0)=0

y=xy=-x を代入して,0=f(0)=f(x)+f(x)0=f(0)=f(x)+f(-x) よって f(x)f(x) は奇関数。

次に,nn が自然数のとき,関数方程式を繰り返し使って,

f(n)=f(1)+f(n1)=f(1)+f(1)+f(n2)==nf(1)f(n)=f(1)+f(n-1)\\=f(1)+f(1)+f(n-2)=\cdots=nf(1)

奇関数であることに注意すると,負の整数に対しても同様に,

f(n)=f(n)=nf(1)f(-n)=-f(n)=-nf(1)

つまり,nn が任意の整数のときに以下が成立する:

f(n)=nf(1)f(n)=nf(1)

2:次に,xx が有理数のときを考える

整数→有理数の順に考えるのは,関数方程式の問題の定石の1つです。

1と同様な考え方により,任意の実数 xx と自然数 mm に対して f(xm)=mf(x)f(xm)=mf(x) が分かります。これを利用します。

mm が自然数,nn が整数のとき,

f(n)=f(nm×m)=mf(nm)f(n)=f(\dfrac{n}{m}\times m)=mf(\dfrac{n}{m})

より,

f(nm)=f(n)m=nmf(1)f(\dfrac{n}{m})=\dfrac{f(n)}{m}=\dfrac{n}{m}f(1)

つまり,xx が任意の有理数のときに以下が成立する:

f(x)=xf(1)f(x)=xf(1)

3:仕上げ

連続関数の場合は有理数のみ考えればよい(有理数の稠密性)から, 連続関数に限定すればコーシーの関数方程式の解は f(x)=axf(x)=ax のみ。

ここでは連続関数に限定して考えましたが,多くの問題では関数の連続性は仮定されています(or導くことができます)。

コーシーの関数方程式の応用

以下の3つの関数方程式はどれもコーシーの関数方程式を応用して解くことができます。(連続性を仮定しています)

例1

f(x+y)=f(x)f(y)f(x+y)=f(x)f(y)(値域は正)

g(x)=logf(x)g(x)=\log f(x) とおけば g(x+y)=g(x)+g(y)g(x+y)=g(x)+g(y) となるので,g(x)=axg(x)=ax

つまり,f(x)=eax=Cxf(x)=e^{ax}=C^x

CC は任意の正の実数)

ちなみにこの関数方程式は指数法則 Cx+y=CxCyC^{x+y}=C^xC^y を表しています。

例2

f(xy)=f(x)+f(y)f(xy)=f(x)+f(y)(定義域は正)

g(x)=f(ax)g(x)=f(a^x) とおけば g(x+y)=f(ax+y)=f(ax)+f(ay)=g(x)+g(y)g(x+y)=f(a^{x+y})=f(a^x)+f(a^y)=g(x)+g(y) となるので,コーシーの関数方程式から g(x)=bxg(x)=bx

つまり,f(x)=g(logax)=blogax=Clogxf(x)=g(\log_a x)=b\log_a x=C\log x

CC は任意の実数)

ちなみにこの関数方程式は対数の和の公式 logxy=logx+logy\log xy=\log x+\log y を表しています。

例3

f(xy)=f(x)f(y)f(xy)=f(x)f(y)(定義域は正,値域は正)

上記の2つを組み合わせます。

g(x)=logf(ax)g(x)=\log f(a^x) とおけば,

g(x+y)=logf(ax+y)=logf(ax)f(ay)=logf(ax)+logf(ay)=g(x)+g(y)g(x+y)=\log f(a^{x+y})=\log f(a^x)f(a^y)\\=\log f(a^x)+\log f(a^y)=g(x)+g(y)

となるので,コーシーの関数方程式から g(x)=bxg(x)=bx

つまり,f(x)=eblogax=xlogaeb=xCf(x)=e^{b{\log_a x}}=x^{\log_a{e^b}}=x^C

CC は任意の実数)

ここで,最後の対数の計算には対数の有名な公式を使いました。

ちなみにこの関数方程式は指数法則 (xy)C=xCyC(xy)^C=x^Cy^C を表しています。

いずれも基本的な形なので,コーシーの関数方程式に帰着できると覚えておくとよいでしょう。

関数方程式の解き方のコツまとめ

このページで扱ったコツです。

  • 解を予想して代入して確かめる(十分性)のも重要。
  • 連続性は仮定されているか導くことができる場合が多い。
  • まずは適当に代入して f(0)f(0) を求める。
  • 整数→有理数の流れで考える。

数学オリンピックでは,関数方程式は頻出です。

Tag:いろいろな方程式の解き方まとめ