関数の不動点
実数空間\(\mathbb{R} \)もしくはその部分集合\(X\)を定義域とし、実数値をとる1変数関数\begin{equation*}f:\mathbb{R} \supset X\rightarrow \mathbb{R} \end{equation*}が与えられているものとします。関数\(f\)が以下の条件\begin{equation*}\exists c\in X:f\left( c\right) =c
\end{equation*}を満たす場合には、このような点\(c\)を関数\(f\)の不動点(fixed point)と呼びます。
\end{equation*}を定めるものとします。つまり、\(f\)は定数関数です。このとき、\begin{equation*}\exists c\in \mathbb{R} :f\left( c\right) =c
\end{equation*}が成り立つため、点\(c\)は関数\(f\)の不動点です。
\end{equation*}を定めるものとします。つまり、\(f\)は恒等関数です。このとき、\begin{equation*}\forall c\in \mathbb{R} :f\left( c\right) =c
\end{equation*}が成り立つため、\(\mathbb{R} \)上の任意の点が\(f\)の不動点です。
\end{equation*}を定めるものとします。このとき、\begin{eqnarray*}
\exists 0 &\in &\mathbb{R} :f\left( 0\right) =0 \\
\exists 1 &\in &\mathbb{R} :f\left( 1\right) =1
\end{eqnarray*}が成り立つため、点\(0,1\)はともに\(f\)の不動点です。
関数は不動点を持つとは限りません。以下の例より明らかです。
\begin{array}{cl}
1 & \left( if\ x<0\right) \\
-1 & \left( if\ x\geq 0\right)
\end{array}\right.
\end{equation*}を定めるものとします。\(x<0\)を満たす\(x\in \mathbb{R} \)を任意に選んだとき、\begin{eqnarray*}f\left( x\right) &=&1\quad \because f\text{の定義} \\
&\not=&x\quad \because x<0
\end{eqnarray*}となるため、\(x\)は\(f\)の不動点ではありません。また、\(x\geq 0\)を満たす\(x\in \mathbb{R} \)を任意に選んだとき、\begin{eqnarray*}f\left( x\right) &=&-1\quad \because f\text{の定義} \\
&\not=&x\geq 0\quad \because x\geq 0
\end{eqnarray*}となるため、\(x\)は\(f\)の不動点ではありません。以上より、\(f\)の不動点は存在しないことが明らかになりました。
\end{equation*}を定めるものとします。任意の\(x\in \left[ 0,1\right] \)について、\begin{eqnarray*}f\left( x\right) &=&x+1\quad \because f\text{の定義} \\
&>&x
\end{eqnarray*}が成り立つため、\begin{equation*}
f\left( c\right) =c
\end{equation*}を満たす\(c\in \left[ 0,1\right] \)は存在しません。したがって、\(f\)は不動点を持ちません。
連続関数の不動点
関数の中には不動点を持つものと不動点を持たないものの双方が存在することが明らかになりました。では、関数の不動点が存在するための条件を特定できるのでしょうか。
\(a<b\)を満たす実数\(a,b\in \mathbb{R} \)を端点とする有界閉区間上に定義された関数\begin{equation*}f:\mathbb{R} \supset \left[ a,b\right] \rightarrow \mathbb{R} \end{equation*}が\(\left[ a,b\right] \)上において連続であるとともに、\(f\)の値域が定義域の部分集合である場合、すなわち、\begin{equation*}f\left( \left[ a,b\right] \right) \subset \left[ a,b\right] \end{equation*}が成り立つ場合、\(f\)は不動点を持ちます。証明では中間値の定理を利用します。
\end{equation*}が成り立つ。
\end{equation*}を満たす定数\(c\in \mathbb{R} \)を用いて、\begin{equation*}f\left( x\right) =c
\end{equation*}と表されるものとします。\(f\)は有界閉区間\(\left[ a,b\right] \)上に定義された連続関数であり、その値域は、\begin{eqnarray*}f\left( \left[ a,b\right] \right) &=&\left\{ c\right\} \\
&\subset &\left[ a,b\right] \quad \because a\leq c\leq b
\end{eqnarray*}を満たすため、先の命題より\(f\)は不動点を持ちます。実際、\begin{equation*}\exists c\in \left[ a,b\right] :f\left( c\right) =c
\end{equation*}が成り立つため、点\(c\)は\(f\)の不動点です。
\end{equation*}を定めるものとします。\(f\)は有界閉区間\(\left[a,b\right] \)上に定義された連続関数であり、その値域は、\begin{equation*}f\left( \left[ a,b\right] \right) =\left[ a,b\right] \subset \left[ a,b\right] \end{equation*}を満たすため、先の命題より\(f\)は不動点を持ちます。実際、\begin{equation*}\forall c\in \left[ a,b\right] :f\left( c\right) =c
\end{equation*}が成り立つため、\(\left[ a,b\right] \)上の任意の点が\(f\)の不動点です。
先の命題では有界閉区間上に定義された関数\(f\)に対して2つの条件を要求しています。1つ目は\(f\)が連続関数であること、2つ目は\(f\)の値域が定義域の部分集合であることです。これらの条件の少なくとも一方が満たされない場合、上の命題の主張は成り立つとは限りません。
まずは、\(f\)が連続ではない例を提示します。
\begin{array}{cl}
1 & \left( if\ x\leq \frac{1}{2}\right) \\
0 & \left( if\ x>\frac{1}{2}\right)
\end{array}\right.
\end{equation*}を定めるものとします。\(f\)は有界閉区間\(\left[0,1\right] \)上に定義されており、その値域は、\begin{equation*}f\left( \left[ 0,1\right] \right) =\left\{ 0,1\right\} \subset \left[ 0,1\right] \end{equation*}を満たします。その一方で、\(f\)は点\(x=\frac{1}{2}\)において連続ではないため、この関数\(f\)は先の命題が要求する条件を満たさず、不動点の存在を保証できません。実際、\(f\)は不動点を持ちません。
続いて、\(f\)の値域が定義域の部分集合ではない提示します。
\end{equation*}を定めるものとします。\(f\)は有界閉区間\(\left[0,1\right] \)上に定義された連続関数である一方で、その値域は、\begin{equation*}f\left( \left[ 0,1\right] \right) =\left\{ -1\right\}
\end{equation*}であり、これは定義域\(\left[ 0,1\right] \)の部分集合ではありません。したがって関数\(f\)は先の命題が要求する条件を満たさず、不動点の存在を保証できません。実際、\(f\)は不動点を持ちません。
タルスキの不動点定理
有界閉区間上に定義された連続関数の値域が定義域の部分集合である場合、その関数には不動点が存在することが明らかになりました。実は、関数が連続ではない場合にも、その関数が単調増加(単調非減少)であれば、不動点が存在することを保証できます。具体的には以下の通りです。
\(a<b\)を満たす実数\(a,b\in \mathbb{R} \)を端点とする有界閉区間上に定義された関数\begin{equation*}f:\mathbb{R} \supset \left[ a,b\right] \rightarrow \mathbb{R} \end{equation*}が\(\left[ a,b\right] \)上において単調増加であるものとします。つまり、\begin{equation*}\forall x,x^{\prime }\in \left[ a,b\right] :\left[ x<x^{\prime }\Rightarrow
f\left( x\right) \leq f\left( x^{\prime }\right) \right]
\end{equation*}が成り立つということです。さらに、\(f\)の値域が定義域の部分集合である場合、すなわち、\begin{equation*}f\left( \left[ a,b\right] \right) \subset \left[ a,b\right]
\end{equation*}が成り立つ場合、\(f\)は不動点を持ちます。これをタルスキの不動点定理(Tarski’s fixed point theorem)やクナスタ・タルスキの不動点定理(Knaster-Tarski Theorem)などと呼びます。
\end{equation*}が成り立つ。
\begin{array}{cl}
0 & \left( if\ x\leq \frac{1}{2}\right) \\
1 & \left( if\ x>\frac{1}{2}\right)
\end{array}\right.
\end{equation*}を定めるものとします。\(f\)は有界閉区間\(\left[0,1\right] \)上に定義されており、その値域は、\begin{equation*}f\left( \left[ 0,1\right] \right) =\left\{ 0,1\right\} \subset \left[ 0,1\right] \end{equation*}を満たします。その一方で、\(f\)は点\(x=\frac{1}{2}\)において連続ではありませんが、\(\left[ 0,1\right] \)上において単調増加です。したがって、タルスキの不動点定理より、\(f\)は不動点を持ちます。実際、\begin{eqnarray*}\exists 0 &\in &\left[ 0,1\right] :f\left( 0\right) =0 \\
\exists 1 &\in &\left[ 0,1\right] :f\left( 1\right) =1
\end{eqnarray*}が成り立つため、点\(0,1\)はともに関数\(f\)の不動点です。
プレミアム会員専用コンテンツです
【ログイン】【会員登録】