0.999…

0.999…，也可写作、或是，是一个具有特殊意义的无限循环小数，由小数点后无限的 9 序列组成。在数学的完备实数系中，「0.999…」所表示的数与「1」相同。换句话说，“0.999...”不是“几乎完全”或“非常、非常接近但不完全”等于1；相反，“0.999...”和“1”正好代表相同的数字。

有很多方法可以证明这种等式，从直觉的论证到严谨的数学证明。 所使用的技术取决于目标受众、背景假设、历史背景和实数概念的发展，因为通常是在实数系统中定义 0.999...。 在其他系统中，0.999... 可以具有相同的含义、不同的定义或未定义。

一般地說，每个非零有限小数都有两个相等的表示形式（例如，8.32 和 8.31999...），这是所有位置数字系统表示形式的属性，无论基数如何。 对有限小数十进制表示形式的功利主义偏好导致了一种误解，认为它是唯一的表示形式。 由于这个原因和其他原因（例如依赖于非基本技术、属性或学科的严格证明），有些人可能会发现等式足够违反直觉，从而质疑或拒绝它，而这一直是数学教育中多项研究的主题。

 简介 
0.999…是書寫於小數記數系統中的一個数，读作：“零点九，九循环”。一些最简单的0.999… = 1 的证明都依赖於这个系统方便的算术性质。大多數的小數算术──加法、减法、乘法、除法，以及大小的比较，使用与整数差不多的數位層次的操作。与整数一样，任何两个有限小数-{只要}-数位不同，那么数值也一定不同。相对的，任何一个形如0.99…9的数，但是9的数量有限，则这个数字是小于1的。

这类展开式的非唯一性不仅限於十进制系统，相同的现象也出现在其它的整数进位制中。数学家们也列举出了一些1在非整数进位制中的写法，这种现象也不是仅仅限於1的：对於每一个非零的有限小数，都存在另一种含有无穷多个9的写法，由於简便的原因，这时几乎肯定使用有限小數的写法，这样就更加使人们误以为没有其它写法了，实际上，一旦在完备实数系中允许使用无限小数，那么在所有的进位制中都有无穷多种替代的写法，例如，18.3287与18.3286999…、18.3287000…，以及许多其它的写法，都表示相同的数，这些各种各样的等式被用来更好地理解分數的小数展开式的规律，以及一个简单-{zh:分形; zh-hans:分形; zh-hant:碎形}-图形──康托尔集合的结构，它们也出现在一个对整个实数的无穷集合的-{zh:经典;zh-cn:经典;zh-tw:古典}-研究之中。

在过去數十年裡，許多数学教育的研究人员研究了大眾及学生们对该等式的接受程度，许多学生在學習开始時怀疑甚至拒絕该等式，但許多学生被老師、教科书和如下章節的算術推論說服並接受两者是相等的。儘管如此，許多人們仍常感到懷疑，及提出进一步的辯解，這經常是由於存在不少對數學实数的錯誤觀念等背後因素（參見以下教育中遇到的懷疑一章節），例如認為每一个实数都有唯一的一个小数展开式，以及認為無限小（无穷小）不等於0，並且將0.999…视为一个不定值，即該值只是一直微微擴張變大，因此与1的差永遠是無限小而不是0，因此「永遠都差一點」。可以构造出符合這些直觀的數系，但這個觀念只能用於初等数学或多數更高等數學中的标准实数系统之外进行，的確，某些設計含有「恰恰小於1」的数，不過，这些数一般与0.999…无关（因为与之相关的理论上和实践上都皆無實質用途），但在数学分析中引起了相当大的關注。

误解0.999…中的省略号的意义，是误解0.999…= 1的其中一个原因。这里省略号的用法与日常语言中0.99…9的用法是不同的，0.99…9中的省略号意味着的有限的部分被省略掉了。但是，当用来表示一个循环小数的时候，"…"则意味着无限的部分被省略掉了，这-{只能}-用极限的数学概念来阐释。作為使用傳統數學的結果，指派給記數表示式“0.999…”的值定義為一個實數，該實數為收敛数列（0.9，0.99，0.999，0.9999，0.99999，…）的极限。「0.999…」是一个数列的极限，从而，对於0.999…= 1这个等式就很直观了。

与整数和有限小数的情况不一样，其實記數法也可以用多種方式表示單一個數值。例如，如果使用分數，。但是，一个数最多只能用两种无限小数的方法来表示。如果有两种方法，那么其中一种一定是从某一位开始全是循環重複的9，而另外一种则是从某一位开始就全是循環重複的0。

0.999… = 1 有许多证明，它们各有不同的嚴謹性，一个嚴謹的证明可以简单地说明：考虑到两个实数其實是同一個的，当且仅当它们的差等於零。大部分人都同意；0.999…与 1 的差，就算存在也是非常的小(實際上根本不存在，即差等於0)。考虑到以上的收敛数列，这时可以证明这个差的大小一定是小於任何一个正数的，也可以证明（详细内容参见阿基米德性質），唯一具有这个性质的实数是0。由於差是0，可知 1 和 0.999…是同一數，用相同的理由，也可以解释为什么「0.333…=1/3」；以及該等式乘上3倍後可得出「0.999… = 1」。

 证明 
 對位相減 
在不考慮柯西序列的情況下：1.00000…−0.99999…这个結果為0.000…，也就是後面的0無限循環。這兩個數目皆可表示成無限循環小數，小數點後五位之後還會一直填上0，始終無法找到最後一位來填上1，因為如果補上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…沒有差值。

 代数 
 分数 
无限小数是有限小数的一个必要的延伸，其中一个原因是用来表示分数。用長除法，一个像的简单整数，長除法後变成了一个循环小数0.333…，其中有无穷多个数字3。利用这个小数，很快就能得到一个 0.999… = 1 的证明。用 3 乘以 0.333… 中的每一个 3，便得到 9，所以 3 × 0.333… 等於 0.999…。由於  等於1，所以 0.999… = 1。参见Silvanus P. Thompson的Calculus made easy中的二进制形式的证明，St. Martin's Press, New York, 1998. ISBN 978-0-312-18548-0.

这个证明的另外一种形式，是用同乘以9。

{| style="wikitable"
|

| style="width:50px;"|
||

|}

由於两个方程都是正确的，因此根据相等关系的-{zh:传递性质;zh-cn:传递性质;zh-tw:遞移性質}-，0.999…一定等於1。类似地，，且。所以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。用一系列方程来表示，就是

以上两个证明中的位数操作的正确性，并不需要盲目相信，也无需视为公理；它是从小数和所表示的数之间的基本关系得出的。这个关系，可以用几个等价的方法来表示，已经规定了0.999…和1都表示相同的實數。

 實分析 
 无穷级数和数列 
对于任何一个小数，都可以定义为无穷级数的和。一般地：
.

对於0.999…来说，这时可以使用等比级数的收敛定理：Rudin p.61, Theorem 3.26; J. Stewart p.706
如果，则.

由於0.999…是公比为的等比级数的和，应用以上定理，很快就可以得出证明了：
，
这个证明（实际上是10等於9.999…）早在1770年就在瑞士数学家莱昂哈德·欧拉的作品《Elements of Algebra》（《代数的要素》）中出现了。Euler p.170

等比级数的和本身，是一个比欧拉还要早的结果。一个典型的18世纪的推导用到了逐项的操作，类似於以上的代数证明。直到1811年，Bonnycastle的教科书《An Introduction to Algebra》（《代数的介绍》）依然使用这种等比级数的方法来证明对0.999…使用的策略是正当的。Grattan-Guinness p.69; Bonnycastle p.177在19世纪，这种在當時被以為随随便便的求和方法遭到了反对，这样便导致了现在仍然占有支配地位的定义：一个级数的和定义为数列的部分和的极限。该定理的一个对应的证明，明确地把这个数列计算出来了；这可以在任何一本以证明为基础的微积分或数学分析的教科书中找到。例如，J. Stewart p.706, Rudin p.61, Protter and Morrey p.213, Pugh p.180, J.B. Conway p.31

对於数列（x0，x1，x2，…）来说，如果当n增大时，距离|x − xn|变得任意地小，那么这个数列就具有极限x。0.999… = 1的表述，可以用极限的概念来阐释和证明：
这个极限可以由Rudin p. 57的Theorem 3.20e得出。对於一个更加直接的方法，请参见Finney, Weir, Giordano（2001）Thomas' Calculus: Early Transcendentals 10ed, Addison-Wesley, New York. Section 8.1, example 2 (a) , example 6(b).

最后一个步骤—lim 1/10n = 0—通常由实数擁有阿基米德性質這一原理来證明。这个以极限为基础的对0.999…的看法，有时会用比较引人注意但不太精确的话语来表达。例如，在1846年的美国教科书《大学算术》（《The University Arithmetic》）中有这么一句：“0.999+，到无穷远处等於1，这是因为每加上一个9，都会使它的值更加接近於1”（.999 +, continued to infinity = 1, because every annexation of a 9 brings the value closer to 1）；在1895年的美国教科书《Arithmetic for Schools》（《学校算术》）中也有：“…如果有非常多的9，那么1和0.99999…的差就小得难以想像了”（“…when a large number of 9s is taken, the difference between 1 and .99999…becomes inconceivably small”）。Davies p.175; Smith and Harrington p.115这种启发式的教学法，常常被学生们误解为0.999…本身就小於1。

 区间套和最小上界 

以上的级数定义，是一个用小数展开式来定义实数的简单的方法。还有一种补充的方法，是相反的过程：对於一个给定的实数，定义一个相关的小数展开式。

如果知道一个实数x位於闭区间[0, 10]内（也就是说，这个实数大於或等於0，而小於或等於10），这时就可以想像把这个区间分成十个部分，只在终点处相重叠：[0, 1]、[1, 2]、[2, 3]，依此类推，直到[9, 10]。实数x一定是属於这十个区间的一个；如果它属於[2, 3]，这时就把数字“2”记录下来，并把这个区间再细分成十个子区间：[2, 2.1]、[2.1, 2.2]、…、[2.8, 2.9]、[2.9, 3]。把这个过程一直继续下去，这时便得到了一个无穷的区间套序列，由无穷个数字b0、b1、b2、b3、…来标示，并记
x = b0.b1b2b3…

在这种形式中，1 = 1.000…而且1 = 0.999…的事实，反映了1既位於[0, 1]，又位於[1, 2]，所以这时在寻找它的数字时，可以选择任意一个子区间。为了保证这种记法没有滥用“=”号，这时需要一种办法来为每一个小数重新构造一个唯一的实数。这可以用极限来实现，但是还有其它的方法。Beals p.22; I. Stewart p.34

一个简单的选择，是区间套定理，它保证只要给出了一个长度趋近於零的闭区间套序列，那么这些区间套的交集就正好是一个实数。这样，b0.b1b2b3…便定义为包含在所有的区间[b0, b0 + 1]、[b0.b1, b0.b1 + 0.1]，依此类推的唯一的实数。而0.999…就是位於所有的区间[0, 1]、[0.9, 1]、[0.99, 1]、[0.99…9, 1]（对於任意有限个9）的唯一的实数。由於1是所有这些区间的公共元素，因此0.999… = 1。Bartle and Sherbert pp.60–62; Pedrick p.29; Sohrab p.46

区间套定理通常是建立在一个更加基本的实数特征之上的：最小上界的存在。为了直接利用这些事物，这时可以把b0.b1b2b3…定义为集合{b0，b0.b1，b0.b1b2，…}的最小上界。Apostol pp.9, 11–12; Beals p.22; Rosenlicht p.27然后这时就可以证明，这种定义（或区间套的定义）与划分的过程是一致的，再一次证明了0.999… = 1。汤姆·阿波斯托尔得出结论：

 從建構實數著手 

有些方法用公理集合论明确把实数定义为一定的建立在有理数上的结构。自然数──0、1、2、3，依此类推──从零开始并继续增加，这样每一个自然数都有一个后继者。这时可以把自然数的概念延伸到负数，得出所有的整数，并可以进一步延伸到比例，得出所有的有理数。这些數系伴随着加法、减法、乘法和除法的算术。更加微妙地，它们还包括排序，这样一个数就可以与另一个进行比较，并发现是大於、小於，还是等於。

从有理数到实数的一步，是一个很大的延伸。至少有两种常见的方法来达到这一步，它们都在1872年出版：戴德金分割，以及柯西序列。直接用到这些结构的0.999… = 1的证明，现在已经无法在實分析的教科书中找到了；最近几个年代的趋势，是使用公理化的分析。即使提供了这样的一个结构，它也通常被用来证明实数的公理，从而为以上的证明提供证据。然而，有些作者表达了从一个结构开始才是逻辑上更恰当的想法，这样得出的证明就更加完备了。历史综合首先由Griffiths and Hilton（p.xiv）在1970年声称，在2001年由Pugh（p.10）再次声称；两本书都把戴德金切割视为公理。关於戴德金切割的应用，请参见Pugh p.17或Rudin p.17。关於逻辑上的观点，请参见Pugh p.10、Rudin p.ix，或Munkres p.30。

 戴德金分割 

在戴德金分割的方法中，每一个实数x定义为所有小於x的有理数所组成的无穷集合。Enderton（p.113）形容了这个描述：“戴德金分割背后的想法，是每一个实数x都可以用一个有理数的无穷集合，也就是所有小於x的有理数来命名。我们把x定义为小於x的有理数集合。为了避免循环定义，我们需要刻划通过这种方法得出的有理数集合的特征…”（“The idea behind Dedekind cuts is that a real number x can be named by giving an infinite set of rationals, namely all the rationals less than x. We will in effect define x to be the set of rationals smaller than x. To avoid circularity in the definition, we must be able to characterize the sets of rationals obtainable in this way…”）比如說，实数1就是所有小於1的有理数的集合。Rudin pp.17–20、Richman p.399，或Enderton p.119。为了精确，鲁丁（Rudin）、里奇曼和分别把这个分割称为1*、1−，和1R；三者都把它等同於传统的实数1。注意鲁丁和安德顿把它称为戴德金分割，而里奇曼则把它称为“非主戴德金分割”。每一个正的小数展开式很容易决定了一个戴德金分割：小於某个展开阶段的有理数的集合。所以实数0.999…是有理数r的集合，使得r < 0，或r < 0.9，或r < 0.99，或r小於其它具有  形式的数。Richman p.3990.999…的每一个元素都小於1，因此它是实数1的一个元素。反过来，1的一个元素是有理数
，也就是。由於0.999…和1包含相同的有理数，因此它们是相同的集合：0.999… = 1。

把实数定义为戴德金分割，首先由理查德·戴德金在1872年出版。
以上把每一个小数展开式分配一个实数的方法，应归於弗雷德·里奇曼在《Mathematics Magazine》（《数学杂志》）上发表的一篇名为“Is 0.999… = 1?”（“0.999… = 1吗？”）的演讲稿，主要是为大学的数学教师，尤其是初级／高级程度，以及他们的学生而作。里奇曼注意到，在有理数的任何一个稠密子集中取戴德金分割，都得到相同的结果；特别地，他用到了十进分数（分母为10的幂的分数），这样便更快得出证明了：“所以，这时看到，在实数的传统定义中，方程 0.9* = 1 在一开始就建立了。”Richman pp.398–399把这个步骤再作进一步的修改，便得到了另外一个结构，里奇曼对描述这个结构更感兴趣；参见以下的“其它數系”。

 柯西序列 

另外一种构造实数的方法，间接地用到了有理数的排序。首先，有理数x和y之间的距离定义为绝对值|x − y|，其中绝对值|z|定义为z和−z的最大值，因此总是非负的。这样实数便被定义为关於这个距离的具有柯西序列性质的有理数序列。也就是说，每一个实数都是一个柯西收敛的数列（x0，x1，x2，…）。这是一个从自然数到有理数的映射，使得对於任何正有理数δ，总存在一个N，使得对於所有的m、n > N，都有|xm − xn| ≤ δ。（两项之间的距离变得比任何正的有理数都要小。）Griffiths & Hilton §24.2 "Sequences" p.386

如果（xn）和（yn）是两个柯西数列，那么如果数列（xn − yn）有极限0，这两个数列便定义为相等的。把小数b0.b1b2b3…拆开来，便得到了一个有理数序列，它是柯西序列；这个序列对应的实数被定义为这个小数的值。Griffiths & Hilton pp.388, 393所以，在这种形式中，这时的任务就是要证明，有理数序列

有极限0。对於n = 0、1、2、…，考虑数列的第n项，这时需要证明
。

这个极限是众所周知的；Griffiths & Hilton pp.395一个可能的证明，是在数列的极限的定义中，对于ε = a/b > 0，这时可以取N = b。所以，这又一次证明了0.999… = 1。

把实数定义为柯西序列，首先由爱德华·海涅和格奥尔格·康托尔独立发表，也是在1872年。以上的小数展开式的方法，包括0.999… = 1的证明，则主要是得自格利菲斯（）和希尔顿（）在1970年的作品《一本经典数学的综合教科书：一个当代的阐释》（A comprehensive textbook of classical mathematics: A contemporary interpretation）。这本书是特别为了以当代的眼光回顾一些熟悉的数学概念而作的。Griffiths & Hilton pp.viii, 395

 推广 
0.999… = 1的证明，立刻可以进行两种推广。首先，对於每一个非零的有限小数（也就是说，从某一位开始全是零），都存在另外一个与其相等的数，从某一位开始全是9。例如，0.24999…等於0.25，就像这时考虑的特殊情况。这些数正好是十进分数，而且是稠密的。Petkovšek p.408

其次，一个类似的定理可以应用到任何一个底数或进位制。例如，在二进制中，0.111…等於1；而在三进制中，0.222…等於1。實分析的教科书很有可能略过0.999…的特殊情况，而从一开始就介绍这两种推广的一种或两种。Protter and Morrey p.503; Bartle and Sherbert p.61

1的其它表示法也出现在非整数进位制中。例如，在黄金进制中，两个标准的表示法就是1.000…和0.101010…，此外还有无穷多种含有相邻的1的表示法，如0.11，0.1011，0.101011等等。一般地，对於几乎所有的1和2之间的q，在q进制中都有无穷多种1的展开式。而另一方面，依然存在不可数个q（包括所有大於1的自然数），使得在q进制中只有一种1的展开式，除了显然的1.000…。这个结果首先由保罗·埃尔德什、Miklos Horváth和István Joó在大约1990年获得。1998年，Vilmos Komornik和Paola Loreti确定了具有这种性质的最小的进位制──Komornik-Loreti常数q = 1.787231650…。在这个进位制中，1 = 0.11010011001011010010110011010011…；其数字由图厄-摩斯数列给出，不是循环小数。Komornik and Loreti p.636

一个更加深远的推广，提到了最一般的进位制。在这些进位制中，一个数也有多种表示法，在某种意义上来说难度甚至更大。例如：Kempner p.611; Petkovšek p.409
 在平衡三进制系统中，1/2 = 0.111… = 1.111…。
 在阶乘进位制系统中，1 = 1.000… = 0.1234…。
Marko Petkovšek证明了这种歧义是使用进位制的必然结果：对於任何一个把所有实数命名的系统，总有无穷多个实数有多种表示法，而这些实数所组成的集合又是稠密的。他把这个证明称为“一个基本点集拓扑学的指导性的练习”：它包含了把各位数的集合视为斯通空间，并注意到它们的实数表示法可以由连续函数给出。Petkovšek pp.410–411

 应用 
0.999…的其中一个应用，出现在基本数论中。1802年，H·古得温出版了一份观察资料，描述了分母为一定的素数的分数的小数展开式中9的出现。例子包括：
 1/7 = 0.142857142857…，而142 + 857 = 999。
 1/73 = 0.0136986301369863…，而0136 + 9863 = 9999。
E·米迪在1836年证明了关於这类分数的一个一般的结果，现在称为米迪定理。当初出版时没有写得很清楚，这时也不知道他的证明是不是直接提到了0.999…，但至少有一个W·G·莱维特的现代证明是这样的。如果这时可以证明，一个具有形式0.b1b2b3…的小数是正整数，那么它就一定是0.999…，这也就是定理中9的来源。Leavitt 1984 p.301在这个方向上继续做研究，就可以得出诸如最大公因子、同余、费马素数、群元素的階，以及二次互反律等概念。Lewittes pp.1–3; Leavitt 1967 pp.669,673; Shrader-Frechette pp.96–98

回到實分析的主题上，三进制中的类似等式0.222… = 1在刻划康托尔集合──一个最简单的碎形的特征中，扮演了一个十分重要的角色：
 一个单位区间中的点位於康托尔集合内，当且仅当它在三进制中可以只用数字0和2来表示。

小数中的第n位反映了在第n个阶段时点的位置。例如，点²⁄3可以如常地表示为0.2或0.2000…，这是因为它位於第一个删除部分的右面，以及以后所有的删除部分的左面。点1⁄3则不表示为0.1，而表示为0.0222…，这是因为它位於第一个删除部分的左面，以及以后所有的删除部分的右面。Pugh p.97; Alligood, Sauer, and Yorke pp.150–152. Protter and Morrey（p.507）和Pedrick（p.29）把这个描述作为一个练习。

重复的9还出现在另外一个康托尔的研究成果中。在应用他在1891年发表的对角线论证法来证明单位区间的不可数性时，必须要考虑到这种因素。这种证明需要根据小数展开式来断言两个实数是不同的，所以这时需要避免诸如0.2和0.1999…之类的数对。一个简单的方法把所有的实数表示为无限小数；相反的方法便排除了重复的9的可能性。Maor（p.60）和Mankiewicz（p.151）考察了第一种方法；Mankiewicz把它归功於康托尔，但原始文献不明。Munkres（p.50）提到了第二种方法。一个可能更加接近於康托尔原先的证明的变体，实际上使用了二进制，把三进制展开式转换为二进制展开式，这时也可以证明康托尔集合的不可数性。Rudin p.50, Pugh p.98

 教育中遇到的怀疑 
許多学习数学的学生往往懷疑、難以接受0.999… = 1的等式，其原因有很多，从根本不相同的外观，到对数列极限概念的深度疑虑，乃至对無限（無窮）的本性的异议，以及不少對數學錯誤的觀念等背後的因素，從而造成了这种混淆；
 学生根据以往学习数的大小比较时使用“高位比较，相同再比次高位”的方式，个位 ，导致拒绝承认。
 許多学生認為无穷小不等於0，並且將0.999…视为一个不定值，即該值只是朝著1的方向無限地擴大，因此它与1的差永遠是無限小而不是零，即「永遠都差一點」。
 学生们常常“坚信一个数有且僅有一種小數的表示方法”。當他們看到两个明显不同的小数，表示的却是相同的实数，便認為这是一个悖论，而表面上熟悉的数1，更使这个悖论加深。Bunch p.119; Tall and Schwarzenberger p.6.最后一个建议要归因於Burrell（p.28）："Perhaps the most reassuring of all numbers is 1.…So it is particularly unsettling when someone tries to pass off 0.9~ as 1."（“也许最令人放心的数就是1。…所以当把0.999…等同於1时，便感到特别别扭。”）
 有些学生把“0.999…”（或类似的记法）理解为很长但有限的一串9，也许长度是可变的、未特别指出的。如果他们接受了有无穷多个9的事实，他们仍然可能认为“在无穷远处”“有最后的一个9”。Tall and Schwarzenberger pp.6–7; Tall 2000 p.221
 直觉和模棱两可的教导，都让学生觉得数列的极限是一个无限的过程，而不是一个确定的值，因为一个数列不一定就有极限。如果他们明白了数列和它的极限的差别，他们就有可能把“0.999…”理解为数列，而不是它的极限。Tall and Schwarzenberger p.6; Tall 2000 p.221
 有些学生相信收敛级数的值最多只是一个估计，也就是。
这些想法在标准实数系（指具有完备性的）中都是错误的，但在其它數系中则有可能是正确的（要求相应数系不具备阿基米德性質，因为阿基米德性質要求数系中没有非零无穷小非标准分析基础　李邦河著）。这些系统要么是为一般的数学用途而发明，要么就是作为指导性的反例，使人们更好地理解0.999…。

许多这些解释都是大卫·塔尔教授发现的，他研究了造成学生们误解的教导方法的特征。他访问了他的学生以决定为什么大多数人在一开始都拒绝接受该等式，发现“学生们仍然继续把0.999…视为一个越来越接近1的数列，而不是一个定值，因为‘你没有指定它有多少位’或‘在所有小於1的小数中，它是最大的数。’”Tall 2000 p.221

在所有初等的证明中，用0.333… = 1⁄3乘以3表面上是使学生们迫不得已接受0.999… = 1的一个成功的策略。但是，面对着对第一个等式的相信以及对第二个等式的怀疑，有些学生要么就开始怀疑第一个等式，要么干脆就感到灰心丧气了。同时也还有否认0.999…=1的学生指出1/3 比0.333…大一点（因为1/3是除不完的），所以推法“不成立”。Tall 1976 pp.10–14更加复杂的方法，也不是十分有效的；有些学生完全可以应用严格的定义，但当他们被一个高等数学的结果，包括0.999…所震惊时，依然退回到直觉的形象上去了。例如，有一个学习實分析的学生，能够用最小上界的定义来证明0.333… = 1⁄3，但仍然坚称0.999…< 1，基於他早前对长除法的理解。Pinto and Tall p.5, Edwards and Ward pp.416–417其他学生也能够证明1⁄3 = 0.333…，但是，面对着以上的分数证明，仍然坚称“逻辑”能代替数学运算。

约瑟·马祖尔讲了一个故事：

这位学生相信，九个数字就是学习数学所需要的一切，包括计算23的平方根。这位学生对9.99… = 10的极限证法感到别扭，称其为“一个难以想像的无限增长过程”。Mazur pp.137–141

作为埃德·杜宾斯基的数学学习的“APOS理论”的一部分，杜宾斯基和他的合作者在2005年提出：任何一个学生，只要把0.999…设想为一个有限的、不确定的数串，与1的差是无穷小，那么他就“还没有对无限小数形成一个完整的过程概念”。其他对0.999…有了完整的过程概念的学生，仍不一定能把这个过程“概括”成一个“对象概念”，就像他们对1的对象概念那样，所以仍然觉得0.999…和1是不一致的。杜宾斯基还把这种概括的能力与把1⁄3视为一个独立的数，以及与把实数的集合视为一个整体联系起来。Dubinsky et al. 261–262

 在大众文化中 
随着互联网的崛起，关於0.999…的讨论已经冲出了教室，并走向了新闻组和信息版，包括那些名义上几乎与数学无关的信息版。在新闻组sci.math中，辩论0.999…是一项“受欢迎的运动”，也是常见问答集之一。由Richman（p.396）观察到。常见问答集涵盖了1⁄3、乘以10、还有极限的证明，也间接地提到了柯西序列。

一个2003年版的报纸专栏《》通过1⁄3和极限讨论了0.999…，并谈到了误解：

《真实讯息》在自己的信息版引用了另外一个不明的信息版中的讨论，那个信息版“大部分是关於电子游戏的”。0.999…的问题在暴雪娱乐的Battle.net论坛的头七年也是一个非常受欢迎的话题，以致於该公司在2004年的愚人节不得不发布了一则“新闻”，声明0.999…就是1：
然后便提供了两个证明，一个是极限的证明，另一个是乘以10的证明。

比較直觀的解釋，可以把一塊圓餅平均切3分來證明。

 其它數系 
虽然实数形成了一个非常有用的數系，把“0.999…”解释为一个实数的决定毕竟还是一个约定，蒂莫西·高尔斯在《Mathematics: A Very Short Introduction》（《数学：一个非常简短的介绍》）中提到，0.999… = 1的等式也是一个约定：

这时可以用不同的规则或新的事物来定义其它數系；在數系中，以上的证明便需要重新解释。这时就有可能发现，在某一个给定的數系中，0.999…和1并不一定就是相等的。然而，许多數系都是实数系的延伸，而不是独立的替代物，所以0.999… = 1仍然成立。就算是在这數系中，这时依然值得去检查其它的數系，不仅仅为了知道0.999…是怎样表现的（如果“0.999…”既有意义又不含糊），也为了知道相关现象的表现。如果这种现象与实数系统中的现象不一致的话，那么至少一个建立在这个系统中的假设便一定不成立了。

 无穷小 

0.999… = 1的证明依赖於标准实数的阿基米德性質：不存在非零的无穷小。存在著數學上密切相關的有序代数结构是非阿基米德的，其中包括标准实数的各种各样的替代品。0.999…的意义与这时使用的结构有关。例如，在对偶数中，引进了一个新的无穷小单位ε，就像复数系统中的虚数单位i一样，但是ε² = 0。这样便得出了一个在自动微分中十分有用的结构。这时可以给予对偶数一个字典序，这样ε的倍数就非阿基米德原素。Berz 439–442但是，要注意到，作为实数的延伸，在对偶数中仍然有0.999… = 1。尽管ε在对偶数中存在，ε/2也存在，所以ε就不是“最小的正对偶数”。确实是这样，在实数中，并不存在这类的数。

另外一种构造标准实数的替代品的方法，是使用拓撲斯理论和替代的逻辑，而不是集合论和经典的逻辑（一种特殊情况）。例如，在光滑无穷小分析中，就存在没有倒数的无穷小。

非标准分析因包含了一个有无穷小（及它們的反元素）完整陣列的系統而众所周知，它提供了一个不同的，也许是更加直观的，对微积分的处理。对於一个完整的非标准数的论述，请参见Robinson的Non-standard Analysis。A.H. Lightstone在1972年提供了一个非标准小数展开式的发展，其中每一个位於（0, 1）之内的扩展的实数，都有一个唯一的扩展的小数展开式：数列0.ddd…；…ddd…，由扩展的自然数作索引。在这种形式中，0.333…有两种自然的展开式，都不与1/3相差无穷小：
0.333…；…000…不存在，而
0.333…；…333…正好等於1/3。Lightstone pp.245–247。在展开式的标准部分中，他没有研究重复的9的可能性。

组合博弈论也提供了替代的实数，无穷的蓝-红Hackenbush就是一个相关的例子。1974年，埃爾溫·伯利坎普描述了一个Hackenbush字串与实数的二进制展开式之间的对应关系，由数据压缩的想法所促动。例如，Hackenbush字串LRRLRLRL…的值是0.0101012… = 1/3。然而，LRLLL…的值（对应着0.111…2）则与1相差无穷小。两个数的差是超实数1/ω，其中ω是第一个无穷序数；相关的博弈是LRRRR…或0.000…2。Berlekamp, Conway, and Guy（pp.79–80, 307–311）讨论了1和1/3，也简略地提到了1/ω。对於0.111…2的博弈可以直接从伯利坎普法则得出，在以下的网站有所讨论：

 打破减法的惯例 
另外一种也可以使以上证明不成立的方法，就是1 − 0.999…根本就不存在，因为减法并不一定就是可能的。具有加法运算但没有减法运算的数学结构包括可交换半群、可交换幺半群，以及半环。里奇曼考虑了两种这类的系统，使得0.999…< 1。

首先，里奇曼把非负的“小数”定义为字面上的小数展开式。他定义了字典序和一种加法运算，注意到0.999… < 1仅仅因为在个位数0 < 1，但对於任何一个有限小数x，都有0.999… + x = 1 + x。所以“小数”的一个独特之处，是等式两边不能同减一个数；另外一个独特之处，就是没有“小数”对应着1⁄3。把乘法也定义了以后，“小数”便形成了一个正的、全序的、可交换的半环。Richman pp.397–399

在定义乘法的过程中，里奇曼还定义了另外一种系统，他称之为“分割D”，它是小数的戴德金分割的集合。通常用这种定义便可以得出实数，但对於小数d他既允许分割（−∞， d ），又允许“主分割”（−∞， d ]。这样做的结果，就是实数与“小数”“不舒服地住在一起”。这个系统中也有0.999… < 1。在分割D中不存在正的无穷小，但存在一种“负的无穷小”──0−，它没有小数展开式。里奇曼得出结论，0.999… = 1 + 0−，而方程“0.999… + x = 1”则没有解。Richman pp.398–400. Rudin（p.23）把这个替代的结构作为第一章的最后一个练习。

 p进数 

问到关於0.999…的时候，初学者常常相信应该有一个“最后的9”，也就是说，相信1 − 0.999…等於一个正数，可以写为“0.000…1”。不管那有没有意义，目标都是明确的：把1加在0.999…中的最后的9上，就会把所有的9变成0，并在个位数留下一个1。如果考虑到其它的原因，这种想法便不成立了，这是因为在0.999…中，并不存在“最后的9”。Gardiner p.98; Gowers p.60对於包含最后的9的无穷多个9，这时必须从别的地方去寻找。


p进数是在数论中引起兴趣的又一个數系。像实数那样，p进数可以从有理数通过柯西序列得到；但是，这种结构使用了另外一种度量，0与p之间的距离比0与1的距离还要近，而0与pn的距离又比0与p的距离近。对於素数p来说，p进数便形成了一个域，而对於其它的p，包括10来说，则形成了一个环。所以在p进数中可以进行算术，这种數系也不存在无穷小。

在10进数中，类似於小数展开式的事物位於小数点的左面。10进展开式…999确实有一个最后的9，而没有第一个9。这时可以把1加在个位数上，这样进位之后就只剩下0了：1 + …999 = …000 = 0，所以…999 = −1。Fjelstad p.11另外一种推导用到了等比级数。“…999”所指的无穷级数在实数中不收敛，但在10进数中收敛，所以这时可以使用大家熟悉的公式：
Fjelstad pp.14–15

（与前面的级数比较。）第三种推导是一个七年级学生發明的，他对老师所讲的0.999… = 1的极限证明感到怀疑，但因而产生了灵感，把以上乘以10的证明应用在相反的方向上：如果x = …999，则10x = …990，因此10x = x − 9，所以x = −1。

作为一个最后的延伸，由於0.999… = 1（在实数中），而…999 = −1（在10进数中），那么这时可以“盲目、大胆地摆弄符号”，DeSua p.901把两个等式相加起来，得出：…999.999… = 0。这个等式在10进展开式中和标准小数展开式中都是没有意义的，但假如这时研究出一种“双小数”的理论，其中小数点左面和右面都可以无限延伸，那么这个等式便是有意义和正确的。DeSua pp.902–903

 相关问题 
 芝诺悖论，特别是奔跑者悖论，使人联想起了0.999…等於1的表面上的悖论。奔跑者悖论可以建立一个数学模型，然后就可以像0.999…那样，用等比级数的方法来解决。然而，这时不确定这种数学的论述是不是提到了芝诺所探索的形而上学的问题。Wallace p.51, Maor p.17
 除以零出现在0.999…的一些讨论中，也引起了争论。大部分作者都愿意定义0.999…，但几乎都不去定义除以零，这是因为它在实数系统中不可能有意义。然而，在某些其它的系統中，除以零则是有定义的，例如复数分析，其中扩展的复平面，也就是黎曼球面，在无穷远处“有一个点”。在这裡，1/0便定义为无穷大；参见J.B. Conway对默比乌斯变换的论述，pp.47–57。实际上，这个结果有深远的意义，可以应用在工程和物理学中的许多问题上。有些著名的数学家在两个系统发展起来之前就提出了这样的一个定义。Maor p.54
 -0是另外一个记数的多余特征。在诸如实数的數系中，“0”表示加法单位元，既不是正数又不是负数，“−0”的解释是0的相反数，这便迫使了−0 = 0。Munkres p.34, Exercise 1 (c)然而，在某些科学的应用中，使用了独立的正零和负零，大多数常见的计算机记数系统就是这样的（例如储存在符号和大小或一补数的格式中的整数，或由IEEE二进制浮点数算术标准所指定的浮点数）。

 参见 
數學
算術
无穷（無限）
极限
小数表示法
非正式数学
非整數進位制
非标准分析
實分析
无穷级数

 註解与引用 

 参考文献 



































 Free HTML preprint: 














 扩展阅读 

 This article is a field study involving a student who developed a Leibnizian-style theory of infinitesimals to help her understand calculus, and in particular to account for  falling short of 1 by an infinitesimal 



 外部链接 

 When is .999... less than 1? Karin Usadi Katz and Mikhail G. Katz
 0.999999… = 1?来自cut-the-knot
 为什么0.9999... = 1？
 问一位科学家：重复的小数
 基於算术的等式证明
 重复的九
 0.9循环等於1
 大卫·塔尔的研究
 Metamath上的0.999...定理
 果壳网上的最让人纠结的等式：0.999...=1

Category:1
Category:数学悖论
Category:實數
Category:包含证明的条目