這么說迭代,你一定能懂
編者按
科學(xué)傳播當(dāng)中有個有意思的現(xiàn)象,就是越為基礎(chǔ)和艱深的學(xué)問,其相關(guān)的科普著作就越為豐富和繁多,很明顯的例證就是數(shù)學(xué)、物理方面的科普讀本遠(yuǎn)超其他學(xué)科,有關(guān)數(shù)學(xué)中著名的猜想和悖論、物理學(xué)中相對論和量子力學(xué)等的通俗解讀可以用汗牛充棟來形容。這起碼說明一點,艱澀的學(xué)問,也可以有淺顯易懂的切入點。高明的科普作者可以經(jīng)由作者在闡述上下的功夫降低讀者理解的難度。本文就想從初等數(shù)學(xué)出發(fā),來深入地談?wù)劇暗边@一數(shù)理學(xué)問中極重要的概念。
撰文?|?丁玖(美國南密西西比大學(xué)數(shù)學(xué)系教授)
迭代一詞對一些人或許生疏,但在數(shù)學(xué)上它歷史悠久。大約三千五百年前,古巴比倫人就想出了一個聰明的辦法來逐次近似給定正數(shù)A的平方根,以今日的標(biāo)準(zhǔn)說法,它就是用眾所周知的牛頓迭代法解方程x2?– A = 0。當(dāng)今,在數(shù)學(xué)天地的幾乎所有園區(qū),迭代都留下活躍的身影,而求解方程各式各樣的迭代法,則是計算數(shù)學(xué)家和工程學(xué)家們從不離手的利器。
為了形象地說明什么是迭代,讓我們拿出一只假設(shè)誤差為零的理想計算器,輸進(jìn)一個數(shù),比方說0.5,然后按一下標(biāo)有“x2”的那個平方鍵,小屏幕上就能看到結(jié)果:0.25,如果再按一次平方鍵,看到的結(jié)果是0.0625,再按一次,就有0.00390625,如此一次次地按下去,依次出現(xiàn)的是以“初始數(shù)”0.5開頭的一系列數(shù):
0.5, 0.25, 0.0625, 0.00390625, 0.0000152587890625, …
盡管算了這幾步后我們或許會失去耐心,不想再按下去,但我們至少可以從上面幾個數(shù)的變化趨勢知道,這些越來越小的數(shù)最終會趨向于0。
這樣的計算確實足夠簡單,似乎連幼兒園的孩子也能操作。即便丟掉計算器,小學(xué)生也可以用紙和筆一個接著一個地算出這樣的“平方”。如果用初中學(xué)過的數(shù)學(xué)概念表達(dá),那么計算器上的平方鍵就代表了“x平方”這個函數(shù)。
上述數(shù)列中的第一個數(shù)0.5是我們所選定的一個初始值,第二個數(shù)0.25是x平方函數(shù)在x = 0.5時的函數(shù)值,第三個數(shù)0.0625是x平方函數(shù)在x = 0.25時的函數(shù)值,而第四個數(shù)0.00390625是x平方函數(shù)在x = 0.0625時的函數(shù)值,第五個數(shù)0.0000152587890625則是x平方函數(shù)在x = 0.00390625時的函數(shù)值,等等。
如果把x平方函數(shù)看成是一只“黑箱”,那么輸入x的值,這只黑箱就會輸出x2這個函數(shù)值。上面的計算器操作實際上就是選取一個初始值輸進(jìn)黑箱,然后再一次次地將黑箱吐出的函數(shù)值輸入同一個黑箱,周而復(fù)始,直至無窮。這種“黑箱操作”的整個過程在數(shù)學(xué)上叫作函數(shù)迭代,簡稱迭代。
一般地,假定我們有定義在某個實數(shù)區(qū)間上的一個函數(shù)y = f(x),它把定義域區(qū)間映到自身內(nèi)——也就是說,這個函數(shù)的自變量x以及因變量y都取值于該定義域中。
這樣我們就可以隨心所欲、不停頓地迭代這個函數(shù)f:取定義域中的一個初始點x0,將它代入到f的具體代數(shù)表達(dá)式中,計算出其對應(yīng)的函數(shù)值,這樣就得到第一個迭代點x1;因為x1也屬于函數(shù)的定義域,再將x1代入到f的表達(dá)式中賦值,就得出第二個迭代點x2……如此進(jìn)行下去,對于所有的自然數(shù)n = 1, 2, 3, …,在得到第n-1個迭代點xn-1后,由于xn-1屬于函數(shù)的定義域,將它代入到f的表達(dá)式中計算,就得出第n個迭代點xn。這樣,我們獲得了函數(shù)f的一個迭代點數(shù)列:
x0, x1, x2, …, xn, …。
這個數(shù)列也稱為從初始點x0出發(fā)的f的迭代點軌道,或簡稱軌道?!败壍馈笔且环N很形象的說法,因為起步于初始點的迭代點數(shù)列看上去就像是向遠(yuǎn)處伸展而去的一條鐵路軌線。
在數(shù)學(xué)上,一個迭代過程可以寫成
xn?= f(xn-1),n = 1, 2, 3, …。
本文開頭時提到的數(shù)值求解方程g(x) = 0的牛頓迭代法就是一例,它具有形式
xn?= xn-1?- g(xn-1)/g’(xn-1),n = 1, 2, 3, …,
其中記號g’表示可微函數(shù)g的導(dǎo)函數(shù)。
迭代是一個從初始點出發(fā),一步步從當(dāng)前迭代點計算出后繼迭代點的遞歸過程。所以在一般情況下,如果想知道第100個迭代點是什么,只好耐住性子算一百步后才能知道答案。然而,如果我們運氣好到能“一步到位”地從0跳到n,寫出n個f的復(fù)合函數(shù)fn的簡潔表達(dá)式,那么就可以一步算出第n個迭代點xn?= fn(x0)??上В钊司趩实氖?,除了極少數(shù)簡單情形外,比如從線性函數(shù)f(x) = ax立刻可以導(dǎo)出的簡單式子fn(x0) = anx0,我們無力能將復(fù)雜的fn化簡到一個封閉的代數(shù)表達(dá)式。幸運的是,數(shù)學(xué)理解我們的苦衷而為我們提供了微積分的十八般武藝,這些武藝打造出一門專攻迭代的現(xiàn)代學(xué)科——離散動力系統(tǒng)。
考察迭代,就會不可避免地碰到“不動點”和“周期點”這兩個重要術(shù)語。如果在函數(shù)f的定義域中有個點x*,它滿足等式f(x*) = x*,即x*在f下的迭代結(jié)果還是它本身,這個點就被稱為是函數(shù)f的一個不動點。
不動點在代數(shù)上的意義就是方程f(x) = x的一個解x = x*,而在幾何上的意義是函數(shù)f在平面上xy-直角坐標(biāo)系中的圖象與坐標(biāo)系的對角線y= x之交點的坐標(biāo),因為這個交點既在函數(shù)f的圖象上,又在坐標(biāo)系的對角線上,它的兩個直角坐標(biāo)(x*, y*)同時滿足y* = f(x*)和y* = x*這兩個等式 。
對于一個初始點x0,如果函數(shù)f被迭代到第n步后,又首次返回到初始點x0,即從初始點x0開始迭代后的第一個迭代點直到第n-1個迭代點x1?= f(x0),?x2?= f(x1) = f2(x0), …, xn-1= f(xn-2) = fn-1(x0) 都不等于x0,但第n個迭代點xn= f(xn-1) = fn(x0)等于x0,則稱x0為f的一個周期為n的周期點,其對應(yīng)的有限數(shù)列x0, x1, x2, …, xn-1或集合{x0, x1, x2, …, xn-1}稱為f的一個周期為n的周期軌道或周期-n軌道。
注意:上面的記號fk并非表示f的k次方,而是表示k個f復(fù)合而成的復(fù)合映射,即f0(x) = x, f1(x) = f(x), f2(x) = f(f(x)) = f(f1(x)), f3(x) = f(f(f(x))) = f(f2(x)),依次類推。
顯而易見,如果n = 1,則周期為1的周期點就是不動點。找到函數(shù)f的所有不動點等價于求出方程f(x) = x的所有解,它們的幾何意義就是f的圖象與坐標(biāo)系對角線的所有交點。當(dāng)n大于1時,f的所有周期為n的周期點都是方程fn(x) = x的解,但反之,方程fn(x) = x的解卻不一定是f的周期為n的周期點,而可能是f的周期為k的周期點,其中k是n的一個真因子。舉個簡單的例子,設(shè)f(x) = -x,則f2(x) = -(-x) = x。顯然x = 0是f2(x) = x的一個解,但它卻不是f周期為2的周期點,而是f的不動點。此外,方程f2(x) = x的每個非零解都是f的周期為2的周期點。
另一方面,一個周期-n軌道中的每一個點都是周期為n的周期點。比如說,如果{x0, x1, x2}是一個周期-3軌道,則由f(x0) = x1, f(x1) = x2及 f(x2) = x0可知,{x1, x2, x0}和{x2, x0,?x1}都是周期-3軌道,因而組成同一個周期-3軌道的三個點x0, x1, x2都是周期為3的周期點。從一個周期點開始的迭代點無窮數(shù)列是其周期軌道“周而復(fù)始”的無窮次復(fù)制,因此該數(shù)列的最終走向是事先知道的,或言之,是可以預(yù)測的。我們對自然界中的周期現(xiàn)象太熟悉不過了,所以應(yīng)該對數(shù)學(xué)中的周期點感到親切。
由上可知,當(dāng)初始點是周期點時,給定的函數(shù)迭代到某一步就會首次返回到初始點,然后再重復(fù)地?zé)o限循環(huán)下去,就像一個體格健壯的學(xué)生每天早晨繞著學(xué)校的橢圓形跑道一圈又一圈地跑個不停。當(dāng)初始點不是周期點時,由此點出發(fā)后的所有迭代點自然永遠(yuǎn)不會回到初始點。既然永遠(yuǎn)不會回到初始點,這些迭代點的最終性態(tài)一定會是不可預(yù)知的嗎?
答案是不確定。它既可能可以預(yù)知,也可能不可預(yù)知。先看一種只需要上述簡單概念而無需高深一點的初等微分學(xué)知識就能理解的情形。如果初始點x0不是周期點,即對任意的自然數(shù)j都有不等式fj(x0) ≠ x0,但它的某次迭代點xm?= fm(x0)卻首次成為周期點,周期為n,即x0, x1, …, xm互不相同,但 fn(xm) = xm并且對所有的k = 1, 2, …, n-1,都有fk(xm) ?≠ xm,那么這條迭代點軌道的最終走向還是可以預(yù)知的,亦即軌道的尾巴都是有限片段xm, xm+1, …, xm+n-1無限次的復(fù)制。這個初始點x0稱為最終周期點;如果n = 1,最終周期點也稱為最終不動點。這樣從初始點x0啟程的迭代點數(shù)列,前m+1個點互不相同,但從xm開始就一個周期-n軌道一個周期-n軌道地重復(fù)行進(jìn)下去,如此一來,這個迭代點數(shù)列的最終性態(tài)當(dāng)然還是可以預(yù)測的。例如對于簡單的二次函數(shù)f(x) = x(1-x),x = 1是一個最終不動點,因為它的第一次迭代點f(1) = 0是f的不動點。因而從最終不動點1開始的軌道是1, 0, 0, …。
還有一種情形,初始點既不是周期點,也不是最終周期點,即它對應(yīng)的所有迭代點都互不相同,但我們依然可以預(yù)測迭代點數(shù)列的最終走向,比如說這個數(shù)列最終收斂到一個固定的數(shù),或與一個固定的周期軌道越來越靠近,或發(fā)散到正無窮大,或發(fā)散到負(fù)無窮大,或其絕對值的數(shù)列發(fā)散到正無窮大。對這些不同狀況下可預(yù)測性的分析求解,初等代數(shù)的數(shù)學(xué)工具則顯得不夠用了,需要一點初等微分學(xué)的知識。這就是為什么高等數(shù)學(xué)是一門很有用途的學(xué)問。具體來說,微分學(xué)中的“中值定理”或“單調(diào)收斂定理”常常是這個解析過程的數(shù)學(xué)后盾。既然本文是“淺說迭代”,我在后面將依然用淺顯的語言解釋其中一個定理的應(yīng)用,但如果輔之以圖象的視覺效應(yīng),則會幫助理解。為此,我們先介紹關(guān)于函數(shù)迭代眼睛看得更清楚的“圖象表示法”,相對于前述依賴于函數(shù)賦值的“代數(shù)表示法”。
在檢查迭代點數(shù)列的最終走向時,如果覺得一次又一次地用手或計算器算出函數(shù)值來得到一個又一個的迭代點太費時間,我們也可以借函數(shù)的圖象來做與代數(shù)方法等價的事,只要圖象曲線能夠足夠精確地畫出。該幾何方法讓我們從初始點出發(fā)沿著一條上下和左右方向交替轉(zhuǎn)彎的快捷路徑急速地向前移動,這樣就能直觀地觀察到迭代點列的“運動軌跡”,進(jìn)而很方便地看出軌道的最終目標(biāo)。
首先在平面上的xy-直角坐標(biāo)系中作出函數(shù)y = f(x)的圖象,然后在x-軸上取一個初始點x0,再從這個點出發(fā),沿著y-軸的平行線朝著圖象方向走,一直走到與它相交為止,在交點處向左或向右沿著x-軸的平行線走,一直走到和坐標(biāo)系的對角線相交為止,這個交點的坐標(biāo)為(x1, x1),代表著第一個迭代點x1。然后從這點起沿著鉛錘線走,直到和圖象相交,在交點處沿著水平線走,直到和對角線相交,這個交點則代表著第二個迭代點x2。如此這般地走下去,我們就依次得到對角線上代表著各個迭代點x1,?x2, x3, x4, x5, … 的一個幾何點列。
讀者如果將上一段的走路加轉(zhuǎn)彎法則分別用到函數(shù)f(x) = x/2和g(x) = 2x,就很容易地幾何論證出下列結(jié)論:對于函數(shù)f,從任一初始點出發(fā)的迭代點軌道最終將趨向于f 的唯一不動點0,而對于函數(shù)g,從任一正的初始點出發(fā)的迭代點軌道最終將發(fā)散到正無窮大,而從任一負(fù)的初始點出發(fā)的迭代點軌道最終將發(fā)散到負(fù)無窮大。這自然和從代數(shù)表達(dá)式fn(x0) = x0/2n及gn(x0) = 2nx0得到的結(jié)論一致。第一個函數(shù)的迭代令人想起兩千三百年前戰(zhàn)國時期的學(xué)者莊子?(約公元前369-約公元前286)?已包含樸素極限思想的那句名言“一尺之捶,日取其半,萬世不竭”。
更一般地,用上述的“圖象迭代法”就能快速地證明:對于線性函數(shù)f(x) = ax + b,只要x項的系數(shù)a的絕對值嚴(yán)格小于1,即|a| < 1,則以任意實數(shù)作為初始點的迭代點數(shù)列最終都將趨向于f 唯一的不動點x* = b/(1-a),而若|a| > 1,則從任意不等于b/(1-a)的實數(shù)出發(fā)的迭代點數(shù)列最終都將發(fā)散到無窮遠(yuǎn)處。相比之下,這兩個事實的分析證明則要多花一點時間了。
對于上述其直線圖象相當(dāng)平坦以至于斜率絕對值小于1的線性函數(shù),因為不動點x* = b/(1-a)像美麗的姑娘吸引周圍的男孩一樣將其周圍的各點吸引到自己,令從這些附近點出發(fā)的所有迭代點軌道統(tǒng)統(tǒng)最終將趨向于它,所以這個不動點被形象化地稱為是吸引的。其實,不動點x*不光吸引了它附近的所有點,而且也吸引了實數(shù)軸上所有的點,因而它是一個全局吸引的不動點。
另一方面,當(dāng)線性函數(shù)的直線圖象看上去相當(dāng)陡峭,以至于其斜率絕對值大于1時,由于不動點x* = b/(1-a)像戰(zhàn)爭狂人遠(yuǎn)離周圍的和平主義者那樣“排斥”了其周圍與之相異的各點,令從這些點出發(fā)的迭代點數(shù)列統(tǒng)統(tǒng)最終將對它“敬而遠(yuǎn)之”而不愿與之靠近,這個不動點被稱之為是排斥的,更進(jìn)一步它還是全局排斥的。
由上可知,對于滿足條件|a| ≠ 1的任意線性函數(shù),其唯一的不動點不是全局吸引的就是全局排斥的。一個直接的推論是該函數(shù)沒有其他周期點。理由很簡單,因為如果有一個周期大于1的周期點,比方說其周期為三,那么從這個周期點出發(fā)的所有迭代點總是在同一個周期-3軌道的三個點中間“輪流坐莊”,它們怎么可能會趨向于不動點或發(fā)散到無窮大?
讀到這里,我相信讀者們不僅讀懂了其中的數(shù)學(xué),而且還會將獲得的知識用到不符合上述條件的兩個剩余的線性函數(shù)f(x) = x + b和g(x) = -x + b上,看一看它們各自的迭代軌道最終將走向何方。
看來既有不動點又有周期點的例子只能在非線性函數(shù)堆里去找了,好在這樣的例子無窮多,隨便抓來一個:f(x) = -x3。易見,0還是f唯一的不動點,但由于f(1) = -1并且f(-1) = 1,這個三次多項式函數(shù)有了一個周期為2的周期軌道{1, -1}。
本文的讀者一定能夠作出y = -x3的圖象,然后用圖象迭代法就會發(fā)現(xiàn):對位于開區(qū)間(-1, 1)內(nèi)的任意一個初始點x0,迭代點數(shù)列{fn(x0)}將趨向于極限0,故不動點0是吸引的;而當(dāng)初始點x0的絕對值大于1時,迭代點的絕對值數(shù)列{|fn(x0)|}將趨向于正無窮大。也就是說,f的周期-2軌道{1, -1}排斥了它附近不等于1和-1的各個點。
上面函數(shù)f的反函數(shù)f-1(x) = - x1/3則給出了周期軌道的另一個性質(zhì)。對f-1的圖象進(jìn)行幾何迭代就會知道,不動點0具有排斥性,而周期-2軌道{1, -1}則成為吸引的了,理由是當(dāng)非零初始點x0的絕對值小于1或大于1時,迭代點數(shù)列{(f-1)n(x0)}都將會無限接近于這個周期-2軌道{1, -1}。
再一次地,上面這兩個非線性函數(shù)都展示出其迭代點軌道的正規(guī)性態(tài):對所有的初始點,迭代點數(shù)列的最終走向都是可以預(yù)測的,并且,除了唯一的不動點和兩個周期為2的周期點外,它們都沒有其他的周期點。我將在下一篇的科普文章中討論既有不動點又有周期為2的更高次方的周期點的那些簡單函數(shù),并追溯它們與自然科學(xué)的一些歷史因緣。
到目前為止,我還沒有正式地運用過高等數(shù)學(xué),全是用初等數(shù)學(xué)談?wù)摰鷨栴},引進(jìn)基本概念,可能一部分擁有博士、碩士甚至學(xué)士學(xué)位的理工科讀者感到“內(nèi)容太淺”,然而正如數(shù)學(xué)寫作與演講大師、匈牙利裔的美國數(shù)學(xué)家哈爾莫斯(Paul Halmos,1916-2006)在生前一直強(qiáng)調(diào)的那樣,越是初等的公眾報告越能俘獲人心?,F(xiàn)在,我試圖用一個二次多項式來示范一下初等微分學(xué)在函數(shù)迭代中的一個妙用,即便讀者沒有接觸過微積分,那也無妨,因為我知道她或他至少懂得中學(xué)代數(shù)并具有一定的幾何直覺力,而且我在之前已經(jīng)保證過用淺顯的語言解釋數(shù)學(xué),否則我就愧對標(biāo)題中保證的“你一定能懂”五字。
我所給出的函數(shù)是f(x) = 2x(1-x),但將它的定義域限制在閉區(qū)間[0, 1]上。顯然f的圖象是經(jīng)過兩點(0, 0)和(1, 0)、開口朝下、對稱軸為x = 1/2、最高點為(1/2, 1/2)的一段拋物線,它位于坐標(biāo)平面上的單位正方形內(nèi),故f的值域是[0, 1/2],因而f將[0, 1]映到自身內(nèi)。所以,從定義域區(qū)間中的任意一點出發(fā),我們可以無限地將f迭代下去。
這條拋物線與坐標(biāo)系的對角線有兩個交點(0, 0)和(1/2, 1/2),換言之,f有兩個不動點0和1/2。我們給自己提出的問題是:從[0, 1]中任一初始點x0啟程的迭代點軌跡,最后將通向何方?自然,當(dāng)x0分別取為0、1/2或1時,讀者馬上就知道它們對應(yīng)的軌道,因為前兩者是不動點,第三者是最終不動點。所以我們只需著眼于初始點x0為正但小于1,而且不為1/2。
當(dāng)然,滿心希望快速求得答案的那些人馬上會想起“圖象迭代法”,用鉛筆尖在拋物線和對角線之間豎直線段、水平線段地畫上幾筆,就能獲得結(jié)論:對所有的大于0并且小于1的初始點,由此出發(fā)的迭代點數(shù)列總是趨向于第二個不動點1/2。然而,一位分析學(xué)家不會僅僅滿足于幾何直覺帶來的結(jié)果,他追求的是怎樣嚴(yán)格地證明它。
下面就是證明,除了最后一步外,前幾步都屬于中學(xué)代數(shù)。首先我們提請注意,如果初始點x0選在(1/2, 1)內(nèi),那么第一個迭代點x1就落到(0, 1/2)內(nèi)了,之后的迭代點最終走向就與初始點選在(0, 1/2)之內(nèi)沒有什么兩樣了?;谶@個觀察,不失一般性,我們可以假設(shè)初始點x0滿足0 < x0?< 1/2。那么2(1-x0) > 1,故2x0(1-x0) > x0。注意2x0(1-x0)即為第一個迭代點x1,從而x1?> x0。這就嚴(yán)格論證了為什么在開區(qū)間(0, 1/2)上,拋物線嚴(yán)格位于對角線的上方。顯然x1?< 1/2。
第二步,我們證明f在[0, 1/2]上是嚴(yán)格遞增的。一個函數(shù)在其定義域的某個子區(qū)間上被稱為是嚴(yán)格遞增的,如果在此區(qū)間上,自變量的值變大導(dǎo)致因變量的值也變大。設(shè)0 ≤ s < t ≤ 1/2,則t – s > 0及0 < t + s < 1,故t2?– s2?= (t + s)(t - s) < t - s,即s – s2?< t – t2,因而f(s) = 2s(1-s) < 2t(1-t) = f(t)。這就證明了f在[0, 1/2]上的嚴(yán)格遞增性。
第三步,我們用數(shù)學(xué)歸納法證明迭代點數(shù)列{xn}是嚴(yán)格單調(diào)遞增的,并且總是小于1/2。既然f在[0, 1/2]上是嚴(yán)格遞增的正函數(shù),不等式0 < x0?< x1?< 1/2推出不等式0 < x1?= f(x0) < f(x1) = x2?< f(1/2) = 1/2。假設(shè)對自然數(shù)n > 1有0 < xn-1?< xn?< 1/2,則0 < xn?= f(xn-1) < f(xn) = xn+1?< f(1/2) = 1/2。這就證明了數(shù)列{xn}的嚴(yán)格單調(diào)遞增性并以1/2為一嚴(yán)格上界。用數(shù)學(xué)符號表示,就是:
0 < x0?< x1?< x2?< x3?< ··· < xn-1?< xn?< xn+1?< ··· < 1/2。
這時,我們不得不從初等數(shù)學(xué)一躍跳上高等數(shù)學(xué),需要的就是上文提及過的“單調(diào)收斂定理”:單調(diào)有界數(shù)列一定有極限。它的證明需要關(guān)于實數(shù)全體的“完備性公理”,此公理在美國是《高等微積分》教材的起點,在中國屬于數(shù)學(xué)系的《數(shù)學(xué)分析》課程。但是我們可以用如下形象化的例子來幫助理解上述定理:設(shè)想一列有上萬名士兵組成的隊伍步行前進(jìn),這相當(dāng)于一個單調(diào)遞增的數(shù)列,如果前方永遠(yuǎn)沒有障礙,這隊士兵將一直走向遠(yuǎn)方,然而如果前面有一座爬不過去的城墻擋住他們,則這群保持向前走的士兵最終只能聚集在城墻腳下,這就相當(dāng)于有上界的遞增數(shù)列一定收斂到一點。
這樣,從位于(0, 1/2)的初始點x0出發(fā)的迭代點數(shù)列{xn}將趨向于一個極限x*。但是,x*為什么一定就是1/2呢?要回答這個問題,我們又得求助于在高等數(shù)學(xué)里學(xué)過的“連續(xù)性”概念了。我們說一個函數(shù)h在其定義域區(qū)間中的一點x = a連續(xù),是指這個函數(shù)h當(dāng)自變量x趨向于a時不僅極限存在,而且極限等于它在a點的函數(shù)值,這個定義可用一個數(shù)學(xué)表達(dá)式完全概括:limx→a?h(x) = h(a)。連續(xù)性定義還有一個等價性的數(shù)列說法,即函數(shù)h在a點連續(xù)當(dāng)且僅當(dāng)對于定義域中任一個收斂于a的數(shù)列{xn},對應(yīng)的函數(shù)值數(shù)列{h(xn)}也都收斂于同一個數(shù)h(a)。哪些函數(shù)是連續(xù)函數(shù)呢?所有的“初等函數(shù)”,即有單個代數(shù)表達(dá)式的函數(shù),包括那些代數(shù)課本里人人熟知的多項式函數(shù),在它們的“自然定義域”內(nèi)是處處連續(xù)的,這里的二次函數(shù)f(x) = 2x(1-x)為其一例,它在每一個實數(shù)點連續(xù)。
好了,我們可以快樂地用到如上的基本事實了。對所有自然數(shù)n都成立的恒等式xn?≡ f(xn-1),其左右兩端是一模一樣的數(shù)列,故它們的極限也必定是一模一樣的數(shù)。左端數(shù)列{xn}的極限從上一段已知是x*,而數(shù)列{xn-1}只是數(shù)列{xn}的“左移一位”的平移,因而它也收斂到極限x*,故根據(jù)上一段中關(guān)于連續(xù)性的數(shù)列說法,右端數(shù)列{f(xn-1)}收斂到極限f(x*)。由于收斂數(shù)列的極限是唯一的,我們便得到等式x* = f(x*)。換句話說,x*是f的某個不動點。
然而二次多項式方程x = f(x)有兩個解,一個是0,另一個是1/2。試問,x*會是不動點0嗎?不可能!原因是x*是從一個大于0的數(shù)x0出發(fā)的遞增的無窮數(shù)列的極限,這個向前推進(jìn)的數(shù)列怎么可能后退收斂到比初始點還要后的0呢?因此,唯一的可能是x* = 1/2。這樣,我們嚴(yán)格地證明了如下結(jié)論:對于定義在[0, 1]上的函數(shù)f(x) = 2x(1-x), 從(0, 1)中任意一點出發(fā)的迭代點軌道都收斂到1/2。
事實上,我們在上面順便證明了一個一般性的斷言。我們將它作為本文的最后禮品:
命題. 若函數(shù)f的一個迭代點數(shù)列收斂到x*,且f在x*連續(xù),則x*是f的不動點。
“函數(shù)迭代”是一個內(nèi)容豐富、用途寬廣的數(shù)學(xué)話題,鑒于篇幅,我在本文中僅僅普及了“可以預(yù)見未來”的某些有序迭代過程。然而,從有序到無序——即混沌,更為神奇的情景還在前頭,用淺顯的初等語言解釋背后的數(shù)學(xué)操作,將是繼續(xù)講述迭代的指導(dǎo)思想。
寫于2023年3月27日星期一美國哈蒂斯堡夏日山莊
