嗨 我有一些不同的看法 :)
我覺得關鍵在於 你要把"無窮"用嚴謹的方式去看
姑且先聽我講個廢話舉個例子
假設[0,1]的實數可數(可以排序) 那麼它的子集合也可數(課本應該有證)
所以讓我們來排"小數點後為1或2,且整數位為0的無限小數"
( 也就是a(k)*10^(n) mod 10 = 1 or 2 )
而這種小數的個數顯然是無限多
例如
a(1)=0.1122211......
a(2)=0.1222111......
a(3)=0.1112222......
......
請注意在我的語言中 我不把a(1)看成小數
而把它成是 lim sigma(k=1~n) b(k)
n->∞
其中b(1)=0.1,b(2)=0.01,......(看你想要排什麼數)
因此 在這邊 我把a(1),a(2),......看成極限值
(sigma b(k)為什麼會收斂是因為有界+遞增)
所以這邊"a(k)的小數點後第k位" 指的是 a(k)*(10^k) mod 10
(因為我不把a(k)看成小數)
好 目前為止都跟原本想法差不多 但現在開始有差了
我要製造另一個數列c(k)
而 我來慢慢看 設c(1)=0.2
c(k)=c(k-1)+[與a(k)的小數點後第k位不同的數]*(0.1)^k
(也就是使得c(k)*(10^k) mod 10 不等於 a(k)*(10^k) mod 10 )
也就是 c(1)=0.2 , c(2)=0.21 , c(3)=0.212 , ......
首先 你可以確定 c(k)這個數列有無窮項(因為a(k)有無窮項)
我們可以一直照著這個步驟走下去
然後 c(k)是遞增且有界的 所以c(k)會收斂到一個實數x
而且你可以藉由反證法得知 這個實數x的第n位會是1 or 2 (x*10^(n) mod 10 = 1 or 2)
(假設第m位為第一個非1且非2的位數 假設是3
然後就可以估計出x會大於多少
但c(m+1)會小於多少 且 sigma c(m+M) 也會小於某個常數
M=2~∞
然後取個epsilon=多少 就會發現c(k)不會收斂到x了
所以矛盾)
所以理論上x是要等於某個a(N)的
但我們會發現
x*(10^k) mod 10 = c(k)*(10^k) mod 10
(這個也是估來估去自己估一估我懶得打了XD)
加上之前的 c(k)*(10^k) mod 10 不等於 a(k)*(10^k) mod 10
得到矛盾
結論:
我把那個製造矛盾的數x 看成一個未知的實數 是c(k)的極限 而非一個小數
相信這樣可以解決你的困擾^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.7.214
※ 編輯: yasfun 來自: 140.112.7.214 (02/27 00:00)
※ 編輯: yasfun 來自: 140.112.7.214 (02/27 00:01)