怎样证明 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人?为什么只有守门员可以用手碰球”?没有为什么,这就是”规则“。当然设定规则并不是没有道理胡乱设定的,一般情况下,就是为了“让游戏更好玩”,或者为了“让游戏更逼真”。你如果不喜欢现在某个数学分支里的游戏规则,你也可以改变它,去提出你自己的规则,只不过那样的话你就不是玩这个游戏了,而是建立了一个新游戏。至于你能不能说服其他做数学的人也来跟着你玩这个新游戏,这就看你的本事了。


分享到:


相關文章: