探求f(x)的存在性比尋找f(0)的值更有意思,雖然較繁。 我之前的f(x)不存在的猜想是錯誤的,在實數範圍內的確
可以找到一個(其實有無數個)函數f(x)滿足
f(f(x)) = x^2 - x + 1 ------ (1)
過程如下:
設g(x)=f(f(x)) = x^2-x+1
首先注意 g(x)=(x-1/2)^2 + 3/4 關於x=1/2對稱,而且對任何x都有g(x) >= 3/4 > 1/2
假若我們能找到一個定義在[1/2, ∞)範圍內f(x)滿足(1), 則很容易把它擴展到所有實數範圍,
隻需對所有 t<1/2, 定義
f(t) = f(1-t)
因為g(t)=g(1-t), 而且沒有任何一個實數u能使得g(u)=t<1/2, 這樣擴展的f(x)對所有實數都滿足(1)
因此,問題歸結為尋找定義在[1/2, ∞)中的一個函數f(x)滿足(1)
基本思路是"函數鏈條"
--- 定義1
設有實數列a[i]
..., a[-n], a[-n+1], ... a[-1], a[0], a[1], ... a[n], ...
滿足
a[i+2] = g(a[i]) = a[i]^2 - a[i] + 1 i=...-n,...-1,0,1,...n...
則稱a[i]是一個"函數鏈"。 不同於通常的數列,函數鏈沒有第一項,我們可把它理解為定義在整數集Z上的函數
** 注意: 函數鏈中的遞推關係是從i到i+2,跳過了中間的i+1
如果能把區間[1/2,∞)分解為許多函數鏈的並集, 並且任何兩個函數鏈之間沒有相同數, 則我們可把[1/2,∞)中任意點t的
函數值f(t)定義為它在函數鏈中所處位置的下一個元素的值:
f(a[i]) = a[i+1]
這樣的函數f顯然滿足(1)
如是,問題歸結為把區間 A=[1/2,∞) 分解為許多函數鏈的非交並集, 解法如下:
注意g(x)在A中單調,因此它有反函數 g^(-1)(x)
定義
g^0(x) = x
g^1(x) = g(x)
g^2(x) = g(g(x))
...
g^n(x) = g(g^(n-1)(x))
g^(-1)(x) = g^(-1)(x)
g^(-2)(x) = g^(-1)(g^(-1)(x))
...
g^(-n)(x) = g^(-1)(g^(-n+1)(x))
...
定義A中一個關係~如下:
a~b 如果有整數m(可為正,0或負)使得
a = g^m(b)
不難驗證~是等價關係, 因此它把A分為許多等價類的非交並集合, 等價類的個數有無窮多個(而且是不可數的)
注意g(1)=1,因此1的等價類隻有它一個元素,而對不等於1的任意數t,有g(t)>t (因g(t)-t=(t-1)^2>0), 因此t的等價
類有無窮個元素(注意是可數無窮)。
對於這些無窮多個等價類(每個類又有無窮個元素), 由選擇公理,我們可以把這些等價類每兩個組成一組,這些組之間也是彼此非交的
考慮其中任意一組 {B, C}, B, C分別是等價類,因此可把B列為
..., b[-n], b[-n+1], ...., b[-1], b[0], b[1], ... b[n], ...
滿足 b[i+1] = g(b[i])
又把C列為
..., c[-n], c[-n+1], ...., c[-1], c[0], c[1], ... c[n], ...
滿足 c[i+1] = g(c[i])
現在是關鍵的一步: 我們把上麵兩個數列合並,得到一個滿足定義1的函數鏈:
定義數列E為
..., b[-n],c[-n],b[-n+1],c[-n+1], ..., b[-1],c[-1],b[0],c[0],b[1],c[1],...,b[n],c[n],...
則有 e[i+2] = g(e[i]), 即它滿足前麵定義1條件。 合並B和C得到的E是一個函數鏈
至此,我們已經把A中所有不等1的數的集合分成了非交函數鏈的集合,因此可再其上定義滿足(1)式的函數f(x), 再加上定義f(1)=1, 對A
中所有數(從而所有實數)f都有定義, 證畢。
此存在性證明是非構造性的(用了選擇公理),不夠完美,但我們可從中知道與原題相關的兩點:
1. 我們能求出f(1)的值是因為1的等價類隻有它一個元素。 能求出f(0)的值是因為0與1關於1/2對稱
2. 對於A中不同於1的任何數(例如2), 我們可以任意選擇一個等價類與之配為一組,因此,它的值可以有無數種可能