0.999…
[1]在完备的实数系中,循环小数0.999…,也可写成、或,表示一个等于1的实数。也就是说,“0.999…”所表示的数与“1”相同。长期以来,该等式被专业数学家所接受,并在教科书中讲授。目前这个等式已经有各种各样的证明,它们各有不同的严谨性、背景假设都蕴含实数的阿基米德性质、历史文脉、以及目标受众。
这类展开式的非唯一性不仅限于十进制系统。相同的现象也出现在其它的整数进位制中,数学家们也列举出了一些1在非整数进位制中的写法。这种现象也不是仅仅限于1的:对于每一个非零的有限小数,都存在另一种含有无穷多个9的写法。由于简便的原因,我们几乎肯定使用有限小数的写法,这样就更加使人们误以为没有其它写法了。实际上,一旦我们允许使用无限小数,那么在所有的进位制中都有无穷多种替代的写法。例如,18.3287与18.3286999…、18.3287000…,以及许多其它的写法,都表示相同的数。这些各种各样的等式被用来更好地理解分数的小数展开式的规律,以及一个简单分形图形──康托尔集合的结构。它们也出现在一个对整个实数的无穷集合的经典研究之中。
在过去数十年里,数学教育的研究人员研究了学生们对该等式的接受程度。许多学生至少在开始时怀疑或拒绝该等式。很多学生被老师、教科书和如下的术算推论说服接受两者是相等的。尽管如此,他们常感觉不到足够的舒服安心,而提出进一步的辩解。学生们否定或肯定该等式的原因,通常是基于对实数的一些错误直观;例如,每一个实数都有一个唯一的小数展开式,例如非零的无穷小应该存在,或者0.999…的展开式最终要停止。我们可以构造出符合这些直观的数系,但只能在用于初等数学或多数更高等数学中的标准实数系统之外进行。的确,某些设计含有“刚刚小于1”的数,不过,这些数一般与0.999…无关(因为与之相关的在理论上和实践上都没有什么用途),但在数学分析中引起了相当大的关注。
简介0.999…是书写于小数记数系统中的一个数,一些最简单的0.999… = 1的证明都依赖于这个系统方便的算术性质。大多数的小数算术──加法、减法、乘法、除法,以及大小的比较,使用与整数差不多的数位层次的操作。与整数一样,任何两个有限小数只要数位不同,那么数值也一定不同。特别地,任何一个形如0.99…9的数,只要只得有限个 9 ,这些 9 最终会停止,则该数都是严格小于1的。
误解0.999…中的“…”(省略号)的意义,是误解0.999… = 1的其中一个原因。这里省略号的用法与日常语言和0.99…9中的用法是不同的,0.99…9中的省略号意味着有限的部分被省略掉了。但是,当用来表示一个循环小数的时候,“…”则意味着无限的部分被省略掉了,这只能用极限的数学概念来阐释。作为使用传统数学的结果,指派给记数表示式“0.999…”的值定义为一个实数,该实数为收敛数列(0.9,0.99,0.999,0.9999,…)的极限。“0.999…”是一个数列的极限,从这方面讲,对于0.999…=1这个等式就很直观了。
与整数和有限小数的情况不一样,其实记数法也可以多种方式表示单一个数值。例如,如果使用分数, 三分之一=六分之二 。但是,一个数最多只能用两种无限小数的方法来表示。如果有两种方法,那么一种一定含有无穷多个9,而另外一种则一定从某一位开始就全是循环重复的零。
0.999… = 1有许多证明,它们各有不同的严谨性。一个严谨的证明可以简单地说明如下。考虑到两个实数其实是同一个的,当且仅当它们的差等于零。大部分人都同意,0.999…与1的差,就算存在也是非常的小。考虑到以上的收敛数列,我们可以证明这个差的大小一定是小于任何一个正数的,也可以证明(详细内容参见阿基米德性质),唯一具有这个性质的实数是零。由于差是零,可知 1 和 0.999… 是同一数。用相同的理由,也可以解释为什么0.333… =三分之一,0.111… = 九分之一,等等。
证明对位相减
在不考虑柯西序列的情况下:1.00000...减0.99999...=0.00000...
结果为 0.000…,也就是后面的 0 无限循环。这两个数目在这里是无限循环小数,小数点后五位之后还会一直填上 0,始终无法找到最后一位来填上 1。1.000… - 0.999… = 0.000… = 0,故 1 = 0.999… 。
这假设了 0.999… 没有“最后的9”、这些无限循环小数的小数点后的位数为可列的(可以由第一个数位一个位一个位数下去而于有限次数到任一个数位)(这已得出 0.999… 没有“最后的9”)、 1.000… - 0.999… 的结果存在小数表示式。运算结果将没有“最后的1”,所以1与0.999…没有差值。
代数分数
无限小数是有限小数的一个必要的延伸,其中一个原因是用来表示分数。用长除法,一个像⁄3的简单整数除法便变成了一个循环小数,0.333…,其中有无穷多个数字3。利用这个小数,很快就能得到一个0.999… = 1的证明。用3乘以0.333…中的每一个3,便得到9,所以3 × 0.333…等于0.999…。而3 × ⁄3等于1,所以0.999… = 1。
这个证明的另外一种形式,是用/9 = 0.111…乘以9。
0.333...=三分之一
3x0.333...=3x1/3=3x1/3
0.999...=1
0.111...=1/9
9x0.111...=9x1/9=9x1/9
0.999...=1
一个更加早期的形式,是基于以下的方程:
1=9/9=9x1/9=9x0.111...=0.999...
由于两个方程都是正确的,因此根据相等关系的传递性质,0.999…一定等于1。类似地,/3 = 1,且/3 = 0.999…。所以,0.999…一定等于1。
位数操作
另外一种证明更加适用于其它循环小数。当一个小数乘以10时,其数字不变,但小数点向右移了一位。因此10 × 0.999…等于9.999…,它比原来的数大9。
考虑从9.999…减去0.999…。我们可以一位一位地减;在小数点后的每一位,结果都是9 - 9,也就是0。但末尾的零并不能改变一个数,所以相差精确地是9。最后一个步骤用到了代数。设0.999… =c,则10c−c= 9,也就是9c= 9。等式两端除以9,便得证:c= 1。用一系列方程来表示,就是
c=0.999...
10c=9.999...
10c-c=9.999...-0.999...
9c=9
c=1
0.999...=1
以上两个证明中的位数操作的正确性,并不需要盲目相信,也无需视为公理;它是从小数和所表示的数之间的基本关系得出的。这个关系,可以用几个等价的方法来表示,已经规定了0.999…和1.000…都表示相同的数。
实数分析
由于0.999…的问题并不影响数学的正式发展,因此我们可以暂缓进行研究,直到证明了实数分析的标准定理为止。其中一个要求,是要刻划所有能表示成小数的实数的特征,由一个可选择的符号、构成整数部分的有限个数字、一个小数点,以及构成小数部分的一系列数字组成。为了讨论0.999…的目的,我们可以把整数部分概括为b0,并可以忽略负号,这样小数展开式就具有如下的形式:
b0.b1b2b3b4b5...
小数部分与整数部分不一样,整数部分只能有有限个数字,而小数部分则可以有无穷多个数字。这一点是至关重要的。这是一个进位制,所以500中的5是50中的5的十倍,而0.05中的5则是0.5中的5的十分之一。