怎樣證明 0.999… = 1?數值上是相等的,那麼兩者的區別是什麼?

用戴德金分割很容易定義實數集上的全序性質,這也是大家喜歡用戴德金分割的原因。用柯西序列構造實數,四則運算很容易定義,不過要用到(ε, δ)語言。但是定義實數集的全序性質並不自然,當然你可以選取由有理數組成的單調柯西列。我以為戴德金分割更簡單。

用Cauchy系列構造實數序列,證明實數全序不必選取單調的比例數列。首先定義正實數:正限制離開0的Cauchy序列的形式極限,負實數類似.然後證明一個實數x只能是下面三種之一1.正實數2.負實數3.零

直觀地說,Dedekind-MacNeille completion是一個偏序集的“最小”的完備化。這也能從另一個角度直觀理解為什麼0.999...=1 —— 否則,實數集就不是有理數集的“最小”完備化了(這時,你可以去掉0.999...或1中的一個,而得到一個仍然完備的真子集)。

設0.999999999…為x
10x=9.9999999999…
10x—x=9.999999999…—0.999999999…
9x=9 x=1 即 0.999999999=1

這樣一個經典的問題,難道數學界沒有定論嗎?問題主要出現在處理無限小數和有限小數“序”關係上。事實上靠平時比有限小數的這種大小這種方法已經不對了。小數模型本身就是實數這個概念的一個載體。用分式直接表示有理數就可以了。dedkind的做法比較直觀,缺點是不易引入實數的運算。而cantor基本列的引入符合數學分析的主流,因為極限語言本身就能很好的說明實數應該具有的四則運算性質。

怎樣證明 0.999… = 1?數值上是相等的,那麼兩者的區別是什麼?

"所有的實數,當它是有限小數(即從小數點後某位開始全是零的數)時,它有兩種十進>製表示,當它不能表示成有限小數時,它只有一種十進制表示",似乎有點問題,0.98,0.998,0.9998也可以表達成一個Cauchy序列,與1.000序列等價,同樣的表示有無數種,只不過按你寫的實數定義,所有這樣的無限趨近同一極限值的有理序列被定義為等價,所趨向的數值定義為唯一的實數,這樣定義的所有實數的集合才有了可以用極限來表述的基礎,然後才能用極限來求此序列的極值。

但還是有需要證明的地方,就是當n為任一確定的數值,0.9n是有理數無疑,但n趨向無窮時還是有理數卻並非顯然,所以你還需要證明0.9n當n>趨於無窮大時是一個有理數。

在證明過程中提到0.999……≤1顯然是成立的,那麼如果要在證明0.999……=1的過程中證明x顯然小於1,是x<0.999……≤1。那麼在數學中≤是小於或等於,也就是兩個中有一個成立。如果是0.999……<1,那麼可證0.999……=1。如果0.999……=1,那麼就是在證明0.999……=1的過程中默認了0.999……=1。

這個問題的本質,應該是解釋0.999...(後記為x)到底是個啥東西,或者說他的定義是什麼。最後的結果無非就是將實數同構與有理數的分割,然後證明分割相等,故而x=1。事實上,作者的論證基於兩點:第一: x \\leq 1, 第二, for all y<1, can prove y

說這個是花架子是因為:這個證明完全沒有必要先介紹戴德金分割。只要承認以上兩點,立刻可以寫出一個“直觀”的證明。

怎樣證明 0.999… = 1?數值上是相等的,那麼兩者的區別是什麼?

既然想用戴德金分割來解釋這個問題,只需要把0.9...的戴德金分割給明明白白地定義出來就行了吧。我是這樣證明的: 若存在一個分割A|B,記為0.9...,其中A無上界,B有下界,並且滿足
1) 若有理數x屬於A,則x<1;
2) 若存在某個有限小數0.9...9, 使得有理數y<0.9...9,則y屬於A.
那麼A={x<1}.
我說,首先定義分割0.9...=A={x<1}|B={x>=1},然後說該分割是具有那兩條性質的唯一分割不是說得更清楚些嗎?你辛辛苦苦證明了這個分割的唯一性,為什麼不幹乾脆脆地告訴大家,0.9...就是A={x<1}|B={x>=1}?
用戴德金分割的眼光來看,對於所有原有的有理數r有個現象,A={x=r}和分割C={x<=r}|D={x>r}是兩個不同的分割。但是直覺應該能告訴我們它們其實是定義了同一個實數,只不過在定義實數的時候,為了方便需要約定一種形式。
那麼在我看來,要用戴德金分割來解釋,這就是0.9...和1!
0.9... = A={x<1}|B={x>=1}
1 = A={x<=1}|B={x>1}

事實上,x並沒有什麼神秘的,這就是一個記號,首先需要的是對它進行一個明確的定義。如果有人認為它定義就是級數求和,那可以證明它收斂到1,這在我看來也是十分嚴格的,而且這些收斂數列的逐項加減也完全合符。如果向作者定義x是滿足以上兩個性質的實數,自然也可以用序來證明。

並非“初等方法不行”,而是“錯誤的初等方法不行”——即不能對無限小數做想當然的四則運算(例如,一般來說,我們不知道兩個隨意給出的無理數的乘積是否無理數),一開始所指出的三個錯誤的初等方法都犯的是這個錯誤。而對實數比較大小則是正確的方法,這基於實數集的全序性和稠密性。通過確定“小於”的定義來理解0.9999...與1的相等性,如果一個數小於另一個數,那麼我們可以認為其實在兩個數之間是有空隙的,或者可以說是至少有一個數可以插入到這兩個數之間,如果這樣的定義成立,則0.9999.......與1中間是不能插入其他數,那麼就沒有大小之分,所以他們是相等的。

怎樣證明 0.999… = 1?數值上是相等的,那麼兩者的區別是什麼?

這個問題的本質本來就很簡單,在任何數學系的大一學生眼中這都是個顯然的事情。如果不科普會有什麼後果呢,就強硬地說“要有一點前提共識,0.99999...只是一個記法,其實表示的是 1-1/10^n,當 n 趨向於無窮時的極限”,於是就有人反駁說“極限等於一,0.999999……不等於1”……其實本質上來說,嚴格這個問題的關鍵點就在於“無限小數的嚴格表示”。有的人採用了級數的方式,我採用了Dedekind分割的方式,這兩種方式都是大一的數學分析課裡會講到的。我的區別只是在於其他人沒解釋為什麼“級數可以嚴格表示所有的無限小數”,而我解釋了為什麼Dedekind分割可以做到。

在我們看來顯然的東西,非數學系的同學未必覺得顯然。所以,我的想法是,你向他們解釋“所有實數都能用級數嚴格表示”,這樣他們就更能接受“0.999...也能用級數表示”;同理,你向他們解釋“所有實數都能用分割唯一確定”,這樣他們就更能接受“0.999...也能用分割唯一確定”。

但不管用什麼辦法解釋,你知道不管什麼數學理論總會有一個不言自明的“起點”而無法無限制地追溯。

對於一般人來說,接受“0.999<0.999...”作為起點,要比接受“用級數定義0.999...”更自然——雖然在我們看來確實“一樣強硬”,但對不學數學的同學來說,心理接受度是不一樣的。換句話說,他們“直覺上”就會覺得“0.999<0.999...”成立(這個“直覺”也確實是正確的),所以容易接受這個結論;但沒接受過數學分析訓練的他們“直覺上”不太容易接受“0.999...是1-1/10^n,當 n 趨向於無窮時的極限”。

“從1/q>0,怎麼推出1/q>1/10的n次方>0”——注意1/q是一個確定的有理數而不是一個變量,你只需要取n使得10^n比q大就可以做到。“引入了一個極限為0的數”——注意只有數列或函數才能談“極限”,沒有極限為0的“數”這種說法,我們談一個“數”時,它是一個確定的常量,而不是變量。“但不能上面科普時用分割,到下面證明時候就變成了四則運算和極限”——我並沒有說證明中不能用四則運算,只是不能用“錯誤的四則運算”——對無限小數做想當然的四則運算就是錯誤的(例如,一般來說,我們不知道兩個隨意給出的無理數的乘積是否無理數),在任何中學數學課本里你都找不到“無限小數的四則運算”的定義的。我的證明中只用到了有理數的四則運算,這是在初中課本里就定義過的(即分數的四則運算),是合法可行的。

另外,我的證明中沒有用到任何“極限”的概念“這還不如直接定義0.999...的極限等於1”——如上所說,0.999...是一個確定的常數,沒有“0.999...”的極限這種說法。你只能談數列0.9, 0.99, 0.999, ...的極限。

怎樣證明 0.999… = 1?數值上是相等的,那麼兩者的區別是什麼?

做數學就是建立一套遊戲規則,然後自娛自樂。這裡的“遊戲”就是不同的數學分支,“遊戲規則”就是各個分支裡的公理。公理無所謂對錯,只是你要玩這遊戲,就要接受這套規則;這就好像你問“為什麼足球比賽要每隊11人?為什麼只有守門員可以用手碰球”?沒有為什麼,這就是”規則“。當然設定規則並不是沒有道理胡亂設定的,一般情況下,就是為了“讓遊戲更好玩”,或者為了“讓遊戲更逼真”。你如果不喜歡現在某個數學分支裡的遊戲規則,你也可以改變它,去提出你自己的規則,只不過那樣的話你就不是玩這個遊戲了,而是建立了一個新遊戲。至於你能不能說服其他做數學的人也來跟著你玩這個新遊戲,這就看你的本事了。


分享到:


相關文章: