||
Zmn-1037 李鸿仪 : 把有限和无限小数同时一一列出的方法:实数可数的最简证明
【编者按。下面是李鸿仪先生的文章,现在发布如下,供网友们共享。请大家关注并积极评论。另外本《专栏》重申,这里纯属学术讨论,所有发布的各种意 见仅代表作者本人,不代表本《专栏》编辑部的意见。《专栏》中有些文章发扬了啄木鸟精神,对一些错误的观点和言论进行了说理的批评。但请大家注意,也有些有严重错误的文章在这里发布,就是为了引起和得到广大网友们的评论。不要以为在这里发布的文章都是正确无误的。】
把有限和无限小数同时一一列出的方法:实数可数的最简证明
李鸿仪
摘要:把二进制的有限小数和无限小数同时一一列了出来,从而彻底证明了实数是可数的。
关键词:实数;幂集;测度论;对角线论证; 超穷数理论; 连续统假设
实数不可数是现代数学的基础,在测度论中有重要应用,更是所谓超穷数理论(见康托《超穷数理论基础》商务印书馆,2016,第二版)和连续统假设的基础。
这个基础是不是足够牢靠?是需要考查的。
在我的博文中,已经指出过对角线等证明中引入了未经证明的假设(见附录),所以不符合充足理由律,不能成立。本文将给出更有力的方法来证明实数可数:把有限和无限小数同时一一列出。
如所周知,自然数集合N={1,2,3……}的幂集P(N)的各元素为:
{} ,{1},{2},{1,2},{3},{1,3},{2,3},{1,2,3},{4},{1,4},{2,4},{3,4},{1,2,4},{1,3,4},{2,3,4},{1,2,3,4},……,{2,3,4,5……}, {1,2,3,4……} (1)
在上述排法中,自然数<=1的子集有2个,<=2的子集有4个,<=3的子集有8个,……
若规定(1)的自然数为小数点后”1”的位置,则与(1)一一对应的二进制小数为:
0,0.1,0.01,0.11,0.001,0.101,0.011,0.111,……. 0.0111….111… (2)
公式(2)不但列出了二进制的有限小数,而且也列出了二进制的无限小数(见最后几个小数)。
由于幂集的定义是N的所有子集,所以不可能存在不在P(N)里的N的子集,也就是说,不可能存在不在(2)里面的小数。因此,(2)实际上已经把所有的有限小数和无限小数都一一列出了。
注意,任何一个无限序列,最后一个元素都是不能用自然数编号的,否则等于认为有最大自然数,不是无限序列了,因此,我们虽然可以将小数一一列出,但并不能将其全部用自然数编号。
不过,在公式(2)中,由于中间有表示无限多项的省略号,所以不但最后一个小数无法用自然数编号,而且任何一个无限小数都是无法编号的,这就无法令人信服地证明小数一定能与自然数一一对应了。为此,可以用N减P(N)内的每一个子集,得集合P*(N)的各元素。例如,N-{}={1,2,3……}, N-{1}={2,3……},…,N-{2,3,4……}={1}, N-N={},从而得到:
{1,2,3……},{2,3,4……},{1,3,4……},{3,4,5……},{1,2,4,5,….},{2,4,5,6….}…….{1},{} (3)
不难发现,式(3)的第一项正好是式(1)的最后一项,式(3)的第二项正好是式(1)的倒数最后第二项……,即实际上P*(N)的元素只是将P(N)的元素的先后秩序倒过来而已。
事实上,因为(3)里面的每一个元素也都是N的子集,且(3)能够与(1)一一对应,因此,容易证明P*(N)和P(N)只是写法不同的同一个集合,即P*(N)= P(N),所以其并集
P(N)UP*(N) = P(N) = P*(N), (4)
但其形式有变: P(N)UP*(N)的元素可以排列为:
{},{1,2,3……},{1},{2,3,4……},{2},{1,3,4……},{1,2},{3,4,5……},{3},{1,2,4,5,….}……. (5)
与其一一对应的二进制小数则是
0,0.111…, 0.1, 0.0111…, 0.01, 0.10111…, 0.11, 0.00111…, 0.001, 0.110111…, …… (6)
由于已经去掉了重复的元素,故在(5)和(6)中,(1)和(3)的最后几个元素都没有出现。
这样,我们就把二进制的有限小数和无限小数同时一一列出来了,而且,我们仍然找不出任何一个不在(6)里的二进制小数。
既然可以将小数一一列出,当然可以用自然数对一一列出的小数一一编号,即证明了小数可以与自然数一一对应。
既然找不出任何一个不在所列的二进制小数,任何试图找出某一个列不出的小数的“证明”(例如对角线论证)显然都与事实不符,只能作为思维不严谨的反面教材。
也就是说,所谓实数不可数,已经成为一个因为思维不严谨而造成的历史性笑话。
任何一个熟悉数学史的人都知道这篇短文对数学史意味着什么。事实上,实数不可数及其证明方法即对角线法不仅仅在数学史上有着重大影响,对哲学史甚至逻辑学也有一定的影响,因此,实数不可数一旦被推翻,对学术界应该是一个不小的地震。
附录:对角线的错误
在并没有严格证明实数不可数之前,没有任何理由可以认为实数不能一一列出,因此,不妨将实数一一列出:
a1=0.a11a12a13....
a2=0.a21a22a23.... (A1)
a3=0.a31a32a33....
.......
等号右边的下标组成了一个无穷矩阵。
在对角论证中,康托令
b=0.b1b2b3..., (A2)
这里,
bk≠akk, (k=1,2,3,...) (A3)
b的值似乎不同于(A1)中所列出的任何一个小数,因此似乎与(A1)已经一一列出小数的事实相矛盾,康托因此认为实数是不能一一列出的,从而建立了在数学史上影响重大的所谓不可数理论。
然而,不难看出,由于(A3)中矩阵的列、行符号都是用同一个k来表示的,这说明对角线论证是在小数个数(行数)与小数位数(列数)严格相等的假设下进行的,为了便于叙述,以下简称该假设为相等性假设。
然而,并没有任何人证明过相等性假设。这一事实使得对角线论证没有任何普遍意义,由此产生的与可数或不可数未必有必然关系的矛盾也就不足为奇了。
事实上,b的存在仅仅证明了小数的个数(即行数)比小数的位数(即列数)至少多了一(b)而已。由上文可以看出,如果用N来表示小数的位数,那么小数可以一一对应P(N),即小数的个数本来就远远大于小数的位数,多一个b有什么奇怪的?
因此,对角线论证实际上什么也没有证明。
令人遗憾的是,如此明显的逻辑错误竟然长期未被发现,而所谓的对角线论证竟然被一直视为经典。
数学的历史就这样走了一个大而不必要的弯路,这表明了粗心思考的后果是多么严重。
【编者注。读者可点击頁面最上面的〖博文〗这个选項,来查找本《专栏》的其它文章。】
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-6-16 11:36
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社