不動点を用いた関数方程式の解法

f(x)=xf(x)=x を満たす xx を関数 ff の不動点という。

関数方程式と不動点

関数方程式を変形して f(a)=af(a)=a という形を作り出せば aa が不動点であることが分かります。

実際にはこんなに分かりやすい場合は少なく,もう少し複雑な形で不動点がこっそり登場します。

関数方程式をいじって,f(f(1))=f(1)f(f(1))=f(1) が得られれば f(1)f(1) は不動点である。よって,もとの関数方程式に f(1)f(1) を代入すればよいことがありそう。

不動点が得られるとそれをもとの関数方程式に代入してさらなる情報を得ることができる場合が多いです。

f(a)=af(a)=a が分かれば,f(f(a))=a,f(f(f(a)))=af(f(a))=a,f(f(f(a)))=a なども分かるからです。

また,実際には 0011 が不動点になっている場合が多いです。

数オリの問題に挑戦

1983年国際数学オリンピックフランス大会の第一問です。

問題

正の実数全体から正の実数全体への関数 ff で以下の条件を満たすものを全て求めよ。

  • 任意の x,yx,y に対して f(xf(y))=yf(x)f(xf(y))=yf(x)
  • xx\to\infty のときに f(x)0f(x)\to 0
方針

Step1:関数方程式はとにかくいろいろな値を代入することからスタートします。定義域が正の実数で 00 が代入できないので 11 を代入します。すると,11 が不動点であることが分かります。また,xf(x)xf(x) も不動点であることが分かります。

Step2(難):2つめの条件を利用して不動点が 11 しかないことを示します。

解答

Step1:

x=y=1x=y=1 を代入して,f(f(1))=f(1)f(f(1))=f(1)

次に x=1,y=f(1)x=1,y=f(1) を代入して f(1)=f(1)f(1)f(1)=f(1)f(1)

よって,f(1)>0f(1) > 0 より f(1)=1f(1)=1 となり 11ff の不動点である。

また,x=yx=y を代入すると任意の xx に対して xf(x)xf(x)ff の不動点であることが分かる。

11 以外に不動点がないことを証明すれば,任意の xx に対して xf(x)=1xf(x)=1 つまり f(x)=1xf(x)=\dfrac{1}{x} であることが分かる。

Step2:

a>1a > 1 が不動点だとすると,関数方程式に x=y=ax=y=a を代入して

f(a2)=a2f(a^2)=a^2 となり a2a^2 も不動点。これを繰り返すと a2ka^{2^k} が不動点でいくらでも大きい不動点が作れるので2つめの条件に矛盾。

a<1a <1 が不動点だとすると,x=1a,y=ax=\dfrac{1}{a},y=a をもとの関数方程式に代入して f(1af(a))=af(1a)f\left(\dfrac{1}{a}f(a)\right)=af\left(\dfrac{1}{a}\right)

よって,f(a)=af(a)=a を使うと上式は f(1)=af(1a)f(1)=af\left(\dfrac{1}{a}\right) より,f(1a)=1af\left(\dfrac{1}{a}\right)=\dfrac{1}{a} となり,1a>1\dfrac{1}{a} > 1 が不動点になりさきほどの議論に矛盾。

コメント

Step1は難しい発想は必要ないので突破したいところです。

いろいろ実験していく中で 11 以外に不動点があったら2つめの条件に矛盾するのでは?と気づくのが一番の山場です。この事実に気づけば証明はさほど難しくありません。しかし,この事実はなかなか気づくのが難しい,さすがIMOの問題。

不動点の概念を理解しているだけでは解けません。しかし,不動点の概念を知らないと絶対に解けません。

ちなみに,不動点を背景とする問題は入試でも頻出です。→漸化式で表される数列の極限とバナッハの不動点定理

数オリでは1つのテクニックを知っていれば解けるような問題はなかなか出題されません

Tag:国際数学オリンピックの過去問