实数真的是与直线上的点一一对应的吗?
2022-10-10 21:03阅读:
“实数是与直线上的点一一对应的”,也就是“数轴”的概念,似乎已经是我们的一个常识,我没有查到这个说法是什么时候由谁首先提出来的。
最近看了一些“0.999……=1”的讨论,推敲之下,对这个“常识”产生了质疑。
我们知道,数,是劳动人民因为生产、生活的需要发明的,然后才逐渐地建立起来的理论。
先有自然数,再有了整数,又产生了分数,到此的全部被称为有理数。有理数是后来才有的名字,当时并没有这个名字,而是统称为“数”,因为人们认为这就是全部的“数”。
对“数”进行总结而上升为理论定义,应该是基于几何的。我们知道,柏拉图学院的大门上写着“不懂几何者不得入内”,而没说“不懂算术者不得入内”,可见在当时学者严眼中几何是多么高大上,而算术则是下里巴,是商贩、税务官才会摆弄的东西。所以,用几何来定义数就理所当然了,这个传统一直延续到近代。
最开始用几何来定义数是“比例”。即两根线段长度的比的关系。人们凭直觉想当然地认为“给定任意长度的两根线段,一定能找到一个共同的尺度,可以同时将这两根线段均匀等分”,这被成为“可公约或可公度”公设,是几何学的基础之一,即我们现在所说的公理。
后来,我们都知道,毕达哥拉斯学派的希波索斯发现了√2,从而发现了无理数,而无理数引发了第一次数学危机。无理数为什么能引发数学危机呢?不就是一个数吗?加进来就是了。那是因为无理数打破了“可公度性”这条公设,违背了“常识”,动摇了数学的基础。当时的人们都懵了:这是怎么回事?为什么会这样?怎么解释?怎么解决?
也正是因为违背了“可公度性”这个“理所当然”的“常识”,所以,无理数才被称为无理数的,也才给之前的“数”命名为“有理数”。
后来,同样来自毕达哥拉斯学派的欧多克斯给“比例”做了新的定义,
使得“比例”不再必须是有理数,亦即不再要求“等分线段”了,才把无理数纳入进数的范畴,将数的概念扩展到了实数。实数还是用“比例”定义的,只是此比例已经不再是彼比例的定义了。
到欧多克斯之后的2200多年后,戴德金又用集合论的方法重新定义了“实数”。戴德金还是用几何定义的实数,只不过不再是“比例”,而是对有理数集合的分割。戴德金就是明确地假设“数与直线上的点一一对应”的。在柯西、戴德金等人的共同努力下,建立了现代的“实数理论”,据说以此解决了第二次数学危机。
“0.999……=1”到底成不成立?基本上有3种答案。
第一个答案,是基于小数的最初始定义的,即“小数是十进制分数的一种特殊表现形式”,这也是小学所接受的小数概念。从这个定义出发,0.111……、0.333……、0.999……等都是从除法法则计算得来得,要么应看作是有限小数而不是无限循环小数,要么是看作是除法过程得到的商而不包含余数,因此,“0.999……=1”是不成立的。
第二个答案,在实数理论的范畴内,“0.999……=1”是成立的。其中有几种证明方法,如,欧拉的等比数列求和加上极限的证明方法,再有就是从实数定义出发的反证法,即,两个不同的点(实数)之间必然存在其他的点(实数),若找不到这样的点(实数)就说这两个点(两个实数)“相等”,这是实数理论给“相等”所作的定义。用反证法证明在0.999……与1之间找不到其他的实数,所以“0.999……=1”成立。
第三个答案,在超实数范畴内,“0.999……=1”不成立,因为无穷小也是数了,而0.999……与1之间恰恰就是差了一个无穷小。所以,在超实数系种,0.999……与1是两个不同的数。
难道这就是答案了吗?
通过观察“0.999……=1”的讨论过程,我们发现一个特点,之所以大多数人都没法接受“0.999……=1”,是因为人们直观地认为小数,即“XXX.XXXXX”这样的形式就是“数”本身,而从“XXX.XXXXX”这种形式的结构来看,0.999……就是不是1,就像0.000……1不是0一样,它们怎么可能相等呢?
其实,我们会发现,这种“想当然”地认为是一直存在的。在发明小数之后,在发现无理数存在之前,人们都认为“小数都是分数”呢,根本就没意识到无限不循环小数不是分数。现在也一样,人们“想当然”地认为“所有小数都是实数”,我不由得怀疑:“所有小数真的都是实数吗?”
然后,我找到了“0.000……1”这个数。它是实数吗?显然,它应该就是无穷小嘛。不仅“0.000……1”是无穷小,“0.000……2”也是,“0.000……3”也是,有无穷多个无穷小。
但是,转念一想,可以用证明“0.999……=1”的方法同样证明“0.000……1=0”啊。于是,我觉得我可能错了,在实数的定义之下,“0.000……1”是实数,就是0,而不是无穷小。
再但是,我进一步想,那么,用同样的方法不是也可以证明“无穷小=0”吗?问题出在了哪里?
再次回顾定义的过程,我们可以发现,柯西在证明无穷小“不是数,而是变量”,从而将无穷小排除在数之外的过程种,用到了“确定取值”这个概念。
数必须有“确定取值”,这不是理所当然的吗?(又是一个“理所当然”),但是,无限数是“确定取值”吗?位数都不确定,哪来的“确定取值”呢?那么,问题就归为“什么是‘确定取值’上了”。
我们再回头看“数”的定义过程,就发现本文开头的这个“常识”了:“实数是与直线上的点一一对应的”。正因为“点”是“固定”的,因此“数”才是“确定取值”的。
那么,就剩下2个方向了,要么直线上的“点”的位置不是固定的,要么,就要怀疑数与点一一对应这个假设是有问题的。对于前者,虽然现实世界中已经证明不存在绝对静止的点,但是,数学不是物理,它们可以狡辩说“数学就是这么规定的”,我们就一点办法都没有了,那么也就只能从后者下手了。
仔细研究,我们发现,这里确实存在漏洞。
从小数这种形式的结构来看,无限数怎么会是“确定”的呢?学一下爱因斯坦的那种思想实验的方式,我们彷佛能看到一条不断抖动的线抖动着延申到无穷远去,哪怕追到宇宙的尽头,它也没有尽头,就那么在抖动着,一直抖动着,延申着,它停不下来,因为它是无穷的。忽然,我意识到,这样的数,同样也是无法在一条直线上对应到固定的点的,它一直在抖动,要么是从不同的点抖动到另一个点,要么是那个点也随着它一起抖动着的。
这或许就是问题的答案!
戴德金错了!错就错在,他未经证明,就假设无理数是直线上固定的点了,从而先验地就事先假定了无理数是“数”,而忽略了“无限数”本身就具有像无穷小一样“没有确定取值”的性质。然后,接下来就不自觉地陷入了“循环论证”的陷阱里了——先假定无理数是直线上固定的点,在通过分割证明它在直线上。
证明0.999……=1不也是同样的问题?首先,还没搞清楚0.999……是不是实数呢,就先假定它是实数了,然后用实数的“相等”的定义来证明0.999……=1,证明了0.999……=1反过来也就证明了0.999……是个实数,这也是循环论证。如果这样的话,我们同样也能把这个思路用到无穷小上了,证明“无穷小=0”,就像证明“0.000……1=0”一样。可是,问题是你能事先证明无穷小不是数,从而将它排除,而你也没证明“0.000……1”、“0.999……”是数啊,怎么就能用这个方法来证明了呢?
直观上0.999……就应该小于1,就像0.000……1大于0一样。你说直观错了,要通过严谨的证明,那你又怎么证明“0.999……”、“0.000……1”是实数呢?证明给我看看吧。
你证明不了!除了通过实数相等的定义,你是没法直接在数轴上找到它们对应的点的。你所能找到的点,一定都是有限数。无限数你怎么定点?还是用“夹逼法”?那你只能夹逼出“无理数等于某个有理数”的结果来,因为无理数与相应的某个有理数之间也只是差了一个无穷小。——这就是我的证明!证明“实数与直线上的点一一对应”的假设不成立,证明“无限数没有确定取值”。
因此,看似严密的实数理论的定义实质上是有问题的,“数”的概念必须被重新定义了。
以上,我们从“0.999……=1”的讨论出发,却发现了远大于“0.999……=1”本身的问题,再回过头来看“0.999……=1”的问题,前面貌似说了“在实数范围内,0.999……=1的答案是成立”,如今看来也变成了“不成立”了,因为你无法证明0.999……是实数。