0.999… = 1 吗?这个问题引发了学生的好奇和学究的恼怒。一个著名的笑话说明了我的观点:
一个男人在海上乘热气球迷了路。他看到一座灯塔在雾中逼近。“我在哪儿?”他在风中绝望地大喊。“你在气球里!”他听到这句话,随后飘向远方。
这个回答是正确的,却毫无帮助。当人们问起 0.999… 时,他们并不是在说“嘿,你能不能在实数系统公理下求一个收敛级数的极限?”(真的吗?是的,真的!)
不,这里有一个更宽泛、更有趣的潜台词: 当一个数字无限接近另一个数字时,会发生什么?
人们琢磨数学是一件稀罕事: 让我们抓住这个机会吧! 与其生硬地给出技术定义来满足某种严谨性需求,不如让我们自己去探索这个问题。
这是我的快速总结:
- 0.999… 的含义取决于我们关于数字如何运作的假设。
- 一个常见的 假设 是数字不能“无限接近”在一起——它们要么相同,要么不同。根据这些规则,0.999… = 1,因为我们没有方法表示这个差值。
- 如果我们允许“无限接近的数字”这个概念,那么是的,0.999… 可以小于 1。
数学可以是质疑假设、突破边界、并思考“如果呢?”。我们深入看看吧。
无穷小数字存在吗?
0.999… 的含义是个棘手的概念,取决于我们允许数字是什么。举个例子:“3 – 4”对你来说有意义吗?
当然,它是 -1。这还用说。但这个问题之所以简单,是因为你已经接受了负数的进阶概念:你接受数字可以是 比无还少。在 18 世纪,当负数还是新鲜事物时,“3-4”这个概念即便被允许,也备受怀疑。(当时的天才们认为负数在越过无穷(Infinity)后会“绕回来”。)
无穷小(Infinitesimal)今天面临着类似的困境:它们很新,挑战了一些长期持有的假设,并被认为是“非标准”的。
那么,无穷小(Infinitesimal)存在吗?
那么,负数存在吗?如果你允许负数存在,并且对它们的使用有一致规则,负数就存在。
我们当前的数字系统假设了长期存在的 阿基米德性质(Archimedean property): 如果一个数字比所有其他数字都小,它必定是零。更简单地说, 无穷小量不存在.
这个想法应该说得通:数字要么是零,要么不是零,对吧?嗯,它“正确”的方式就如同数字必须在那儿(正数)或不在那儿(零)——它正确,是因为我们暗中排除了其他可能性。
不过没关系——让我们看看阿基米德(Archimedes)性质会把我们带向何方。
传统方法:0.999… = 1
如果我们假定无穷小(Infinitesimal)不存在,我们可以证明 0.999… = 1。
首先,我们需要弄清楚 0.999… 是什么意思。大多数数学家这样看这个问题:
- 0.999… 表示一系列数字:0.9、0.99、0.999、0.9999,依此类推
- 问题是:这个级数是否 如此接近 (收敛)到一个我们无法区分的结果?
这背后的推理是 极限(Limit):我们要检验的“东西”是否会 如此该死的接近 到另一个我们无法区分的数,无论我们怎么努力?
“嗯,”你说,“你怎么区分数字呢?”。好问题。最简单的比较方法是相减:
- 如果 a – b = 0,它们相同
- 如果 a – b 不为零,它们不同
极限(Limit)背后的思想是找到某个点,使得“a – b”变为零(小于任何数);也就是说,我们无法将“待检验的数”和我们的“结果”区分开来。
误差容忍度
当它们形式差异很大(比如无穷级数)时,仍然很难比较。极限(Limit)背后的下一个巧妙想法:定义一个 误差容忍度:
- 你给我你的误差容忍度 / 精度等级(称之为“e”)
- 我会看是否能使这两个东西落在该容忍度内
- 如果是,它们相等!如果我们无论如何努力都无法区分它们,它们必定相同。
假设我卖给你一根葡萄干燕麦棒,声称它是 100 克。你带回家,检查了那个未获 FDA 批准的包装,决定看看我是否在撒谎。你把零食放在秤上,显示 100 克。秤的精度是 1 克。我骗了你吗?
你无法知道:就你所知,在你的精度范围内,燕麦棒确实是 100 克。我们当前的问题类似:我卖给你一根重 1 克的“燕麦棒”,但我偷偷给了你一根重 0.999… 克的。你能看出区别吗?
好,我们来算一下。假设你的误差容忍度是 0.1 克。那么如果你要 1,我给你 0.99,差值是 0.01(百分之一),你不知道自己被骗了!1 和 .99 对你来说看起来一样。
但那是小孩子的把戏。假设你的秤精确到 1e-9(.000000001,十亿分之一克)。那好,我会卖给你一根重 .999999999999(只差一 万亿分之一 克)的糖果棒,你又会被骗!哈!
事实上,与其选一个具体的容忍度比如 0.01,不如用一个通用的(e):
- 误差容忍度:e
- 差值:嗯,假设 e 有“n”位精度。令 0.999… 展开直到我们得到需要 n+1 位精度才能检测出的差值。
- 因此,容忍度总能小于 e!而差值看起来是零。
看到窍门了吗?这里有一种直观的表示方式:

直线是你所期待的:1.0,那根完美的燕麦棒。曲线是我们把 0.999… 展开到的位数。思想是展开 0.999… 直到它落入你的容忍度“e”内:

在某个点, 无论你为 e 选什么值,0.999… 会足够接近,从而在数学上满足我们。
(顺便说一句,0.999… 不是一个 增长过程,它本身就是最终结果。曲线表示的是我们可以用越来越好的精度来近似 0.999… ——这是另一篇文章的素材)。
借助极限, 如果两个事物之间的差异小于我们能想象的任何界限,它们必定是相同的。
假设无穷小(Infinitesimal)存在
这第一个结论可能让你不太舒服——你可能会觉得被耍了。这没关系!当我们说 0.999… 等于 1 时,似乎忽略了重要的东西,因为 我们,以我们有限的精度,无法分辨其中的差别。
更新的数系提出了无穷小(Infinitesimal)存在的概念。具体来说:
- 无穷小(Infinitesimal)可以存在:它们不是零,但对我们来说看起来像零。
这似乎是个令人困惑的想法,但我这样理解:原子对穴居人来说不存在。一旦他们把石头砸成沙粒,就再也分不下去了:那是他们能想象的最小单位。事物要么是沙粒,要么什么都没有。他们无法 想象 肉眼看不见的原子这一概念。
与其他数系相比,我们就是穴居人。我们所谓的“极小的数”其实无比巨大。事实上,还可能存在另一个“维度”的数,小到我们无法察觉——这些数与我们的数 仅仅 在这个微小维度上不同,但在我们看来一模一样,只有在无限倍放大镜下才显出区别。
我这样理解 0.999…:我们能否在这个新的、无穷小的维度里,造出一个比 1 小那么一点点的数?
超实数
超实数(Hyperreal numbers)就是使用这个“微小维度”来研究无穷小(Infinitesimal)的一种数系。在其中,无穷小(Infinitesimal)通常称为“h”,并被视为 1/H(其中大写的 H 表示无穷(Infinity))。
所以,思路是这样的:
- 0.999… < 1 [我们假设它允许更小,且无穷小存在]
- 0.999… + h = 1 [h 是填补间隙的无穷小(Infinitesimal)]
- 0.999… = 1 – h [等价地,我们可以从 1 中减去一个无穷小量]
因此,0.999… 只是一个比 1 微小 小一点点的数,而差值就是 h!
回到我们的数字
问题是,“h”在我们宏观世界里并不存在。或者更准确地说,h 在我们看来和零没两样——我们分不清它究竟是微小的原子,还是根本空无一物。有一种方式可以直观理解:

当我们切回自己的世界时,这叫做取一个数的“标准部分(standard part)”。本质上就是扔掉所有的 h,把它们变成零。所以,
- 0.999… = 1 – h [存在无穷小(Infinitesimal)的差值]
- St(0.999…) = St(1 – h) = St(1) – St(h) = 1 – 0 = 1 [对我们来说,0.999… = 1]
皆大欢喜的折中是:在 一个更精确的维度中,0.999… 和 1 是不同的。但是,当我们以有限的精度试图描述这种差异时,却无能为力:0.999… 和 1 看起来完全相同。
学到的经验
让我们回到自己的世界。“0.999… 等于 1 吗?”这个问题的目的在于 不 把一个极限问题的答案吐出来。也就是把问题理解为“嘿, 在我们的系统内 0.999… 代表的是什么?”
这个问题关乎探索。其实是在问:“嘿,我在想那些无限接近的数字(.999… 和 1)。我们该怎么处理它们?”
以下是我的回答:
- 我们对数字的概念历经数千年演变,逐渐包含了新的概念(整数、小数、有理数、实数、负数、虚数……)。
- 在我们当前的体系中,我们不允许无穷小(Infinitesimal)数字存在。因此,0.999… = 1,因为我们不允许它们之间留有间隙(所以它们必定相同)。
- 在其他数系(如 超实数),0.999… 小于 1。在这里,无穷小(Infinitesimal)数字被允许存在,而这个微小的差异(h)正是将 0.999… 与 1 区分开来的东西。
这里有一些人生启示:我们能否扩展自己对世界的思维模型?负数让我们认识到每个数都可以有一个相反数。而且你知道吗?事实证明物质也可以有相反面(物质和反物质接触时会相互湮灭,就像 3 + (-3) = 0 一样)。
让我们想想无穷小(Infinitesimal)——一个超出我们精度范围的微小维度:
- 某些物理学理论提到了嵌入我们自身维度中的微小“卷曲”维度。与我们的维度相比,这些维度可能无穷小(Infinitesimal)——我们从未察觉到它们。对我而言,“无穷小(Infinitesimal)维度”是一种描述某种存在但我们无法探测之物的方式。
- 物理科学使用“有效数字”和误差范围来指明我们计算中固有的不精确性。我们 知道 现实不同于我们实际测量的结果:无穷小(Infinitesimal)有助于将这种区别明确化。
- 建立模型:一个无穷小(Infinitesimal)维度可以帮助我们创建 简单但准确的模型 来解决现实世界中的问题。“简单但足够精确”的理念是 微积分.
数学不只是解方程。用新奇的想法拓展我们的视角,有助于把看似无关的主题串联起来。不要害怕去想“如果……会怎样?”。
附录:严谨性在哪?
写作时,我喜欢设想一个超级挑剔鬼,他更在意展示(并证明)自己的严谨,而不是教育读者。这个神秘(?)的对手激励我专注于直觉。我真该给 Rigor 先生起个名字。
不过,严谨也有用处:它帮我们把草图用钢笔描实。我不是数学家,但其他人已经 写过了细节 对 0.999… 和 1 或小于 1 的解释:
“只要尚未指定数系,学生认为 .999… 可以无穷小地略小于 1 的直觉,就可以用严谨的数学方式加以证明。”
我的目标是教育、娱乐并传播对数学的兴趣。你能想到更有效的方法让非数学专业的人对分析(Analysis)背后的思想产生兴趣吗?极限(Limit)可不会自己推销自己。