
起源:谁发明了零
谁发明了零?答案远比你想象的复杂:婆罗摩笈多于公元628年在印度将其正式定义,但玛雅人和巴比伦人以各自的方式更早到达了这一步。
古希腊人是杰出的数学家,他们奠定了几何学的基础,证明了至今仍以他们命名的定理,并以令人钦佩的精确度描述了宇宙。但他们没有零。亚里士多德认为零在逻辑上不可能存在,因为除以零会产生矛盾,而产生矛盾的东西不可能是真实的。这在哲学上自洽,在数学上却是一场灾难。它意味着古代地中海最伟大的数学文明,在其数字系统的核心位置,永远带着一个空缺。
这个空缺没有在希腊被填补。它在印度被一位名叫婆罗摩笈多的数学家填补了,时间是公元628年。这个日期并非故事的起点——故事更古老,也更复杂——但正是在这一时刻,零从一个模糊的概念变成了一个有规则的数字。
占位符与数字
在讲述发明之前,有必要厘清大多数零的历史所模糊的一个区别:占位符零与数字零之间的差异。
占位符零标记的是位值制数字系统中的空列。如果你在以位置决定数值的系统中书写304,你需要某种符号来表明十位是空的。没有占位符,304和34或30004在排版上无法区分。占位符零解决的是一个排版问题,它不参与算术运算。
数字零则是一个可以与其他数值相加、相减、相乘的值。它有自己的属性:加上零不改变任何东西,乘以零得到零。这个零不是位置提示,而是一个数学对象。发现占位符是有用的,发现数字则是变革性的。
若干古代文明发现了占位符。只有少数文明迈出了进一步的一步,发现了数字零。
巴比伦:占位符的诞生
古代美索不达米亚的巴比伦人发展出了世界上第一个位值制数字系统,以60为基数运作。大约在公元前3世纪,书吏开始在泥板上使用双楔形楔形文字符号标记空列——以区分3604和364。这是历史记录中有据可查的最早占位符零。
但巴比伦书吏并未对这个符号进行算术运算。他们没有追问把它加到自身会得到什么,或者用另一个数字乘以它,或者减去它。双楔形符号是一种间距装置,出现在数字内部以标记空列,但不出现在数字末尾——那样做就需要将它视为独立的数字了。
巴比伦人的贡献是巨大的——位值记数法使复杂计算成为可行,这是埃及或罗马等非位值制系统根本无法做到的——但它还不是作为数字的零。
玛雅:一条独立的道路
在中美洲某处,一个文明通过不同的途径独立达到了相同的洞见。
玛雅人发展出了一套复杂的位值制历法系统——长纪历——用于追踪跨越漫长时期的时间。他们的数字系统以20为基数,在某些历法周期中还加入了调整后的18进制。为使这一系统在记录日期时有效运作,他们需要占位符,于是发明了一个:一个贝壳形符号,代表完成的概念,代表一个周期走完所有值后到达终点。
有记录的最早玛雅零铭文约可追溯至公元4世纪,尽管其发展可能更早。玛雅零与巴比伦占位符的区别在于,玛雅符号代表的不仅仅是空列,而是完成本身的概念——走完所有值的周期之零。这是否等同于在完整数学意义上将零视为数字,学者们尚有争议,但它至少是比巴比伦版本在概念上更为丰富的占位符。
玛雅零对印度数学的发展没有任何影响。这是两个独立的发明,被地理和时间隔开,通过不同的推理达到相似的结论。这种平行发展告诉我们一件重要的事:零,一旦位值制系统就位,就是一个最终会自我强制出现的概念。
印度:数字的诞生
在数学史学家看来,谁发明了零这一问题最终指向印度次大陆。
巴克沙利手稿是一份写在桦树皮上的数学文本,1881年在今巴基斯坦境内被发现,其中包含一个用作计算占位符的圆点符号。这份手稿的年代几十年来争议不断;对不同部分的分析给出了从公元3世纪到10世纪不等的日期。它显然很古老,也显然使用了位值零,但确切年代的问题尚无定论。
可以确定的是婆罗摩笈多《婆罗摩修正体系》的日期:公元628年。这部由今拉贾斯坦邦的一位数学家兼天文学家撰写的著作,包含了最早已知的将零明确定义为数字的表述,以及第一套系统性的零的算术规则。
婆罗摩笈多的规则是具体的:一个数加零等于这个数;一个数减零等于这个数;零乘以任何数等于零;一个数加其相反数等于零。正是这些规则使零成为一个数字而非一种记法,婆罗摩笈多清晰地陈述了它们。
他也尝试了除以零,并在此处出了差错。他宣称零除以零等于零——这是错误的,除以零是未定义的,正如亚里士多德即便没有零的概念也已隐约感知到的那样。这个错误将花费数百年才得以完全纠正。但错误并不减损成就;它恰恰证明婆罗摩笈多是在真正用零做数学,探索其属性并得出可被检验和纠正的结论。
公元876年,印度中部的瓜廖尔石刻铭文包含了被认为最古老的清晰数字语境下的零,以现代人一眼即识的形式表示数字270。到9世纪,零在印度数学传统中已成为算术不可分割的组成部分。
阿拉伯的传播
阿拉伯数学传统在8至9世纪通过积极翻译和交流吸收了印度数学。以巴格达为中心的阿拔斯哈里发国支持了一项非凡的知识工程:将希腊、波斯和印度的数学及科学文献译成阿拉伯语。印度数字,包括零,正是经由这条路线传播的。
花拉子米在9世纪初于巴格达工作,撰写了关于印度算术的著作,使印度-阿拉伯数字系统(含零)为整个伊斯兰世界的阿拉伯语学者所知。他的名字拉丁化后,给了我们「算法」(algorithm)一词。「代数」(algebra)一词来自他另一部著作的标题。
到10世纪,印度-阿拉伯数字系统(含零)已成为从中亚到西班牙的数学工作语言。零从拉贾斯坦邦一位印度天文学家的手稿,传播到整个互联世界的数学文化,大约只用了两个世纪。
欧洲:漫长的抵制
欧洲与零的相遇颇为曲折。罗马数字系统没有零,也没有位值结构,曾服务于拉丁文明数百年。取代它不仅需要改变记法,更需要从根本上改变对数字运作方式的理解。
意大利数学家斐波那契约1170年生于比萨,部分接受教育于北非,在那里接触了阿拉伯数学。他于1202年出版《计算之书》,向欧洲读者系统介绍了包括零在内的印度-阿拉伯数字及其在商业计算中的用法。斐波那契并非首位在欧洲接触这些数字的人,但他是最有效地向商人和会计师展示其实用价值的人。
普及并非一蹴而就。佛罗伦萨于1299年短暂禁止在商业账簿中使用印度-阿拉伯数字,理由是使用零使篡改账目变得过于容易——在数字后面加零即可。这一禁令最终被放弃,因为这套系统实在太有用了,无法被禁止。与使用新系统的竞争对手争夺商业优势的德国商人,没有耐心为虚无的概念进行哲学辩论。
到16世纪,包括零在内的印度-阿拉伯数字已在欧洲受过教育的人群中成为标准。格里高利历改革、对数的发展、17世纪微积分的出现——这些都依赖于拥有功能性零的位值制数字系统。它们在罗马数字体系下是不可能实现的。
零使什么成为可能
没有零的数学与有零的数学之间的差距,不是记法问题,而是能提出什么问题的问题。
没有作为数字的零,就没有负数的概念——没有任何东西可以比零更少。没有零和负数,就没有数轴、没有坐标系、没有一边为零的代数方程操作。没有这些工具,就没有微积分、没有连续数学,最终也没有现代物理学。
描述行星运动、电流流动、量子粒子行为的微分方程,都是用需要零的数学语言书写的。以二进制代码运行的计算机——每个值非0即1——需要零。利用广义相对论数学定位你位置的GPS系统需要零。
婆罗摩笈多于公元628年在拉贾斯坦邦书写他的算术规则时,不可能预见这一切。他解决的是困扰印度数学家数代人的问题:如何将一个数减去自身所得的结果视为可运算的数字。这个问题看起来抽象,但解决方案最终成为现代定量科学大部分内容的承重结构。
这是真正重要的思想的通常命运:它们看起来解决的是狭窄的技术问题,结果却改变了一切。
零的发明与人类思想的其他基础性突破相互关联。零所属的数字系统有其自身的起源故事,在起源:数字中有所探讨。驱动巴比伦占位符出现的历法压力,在起源:历法中有所阐释。
快速解答
关于本话题的常见问题
谁发明了零?
将零作为真正意义上的数字——而非仅仅是占位符——加以正式定义的,是印度数学家婆罗摩笈多,他在公元628年的著作《婆罗摩修正体系》中完成了这一工作。他确立了零的算术运算规则,包括加、减、乘法。更早的文明使用过占位符号来表示空列,但并未将零视为可参与运算的数字。
巴比伦人发明了零吗?
巴比伦人发展出了位值制数字系统,并最终使用双楔形符号标记空列——这是一种占位符,而非数字。他们从未将零视为可加、可减、可乘的数值。占位符与数字是两个不同的概念;巴比伦人的贡献属于前者。
玛雅人是否独立发明了零?
是的。玛雅人独立发展出了零的概念,用贝壳符号在长纪历中表示这一概念。有记录的玛雅零最早出现于约公元4世纪的铭文中,可能还更早。这是一个用于位值计算的真正数学意义上的零,与印度传统完全独立发展而来。
零是如何传入欧洲的?
印度数学概念(包括零)通过花拉子米等人的9世纪著作传入阿拉伯世界。欧洲学者通过接触阿拉伯数学认识了印度-阿拉伯数字和零,尤其是在意大利数学家斐波那契于1202年在《计算之书》中普及这一体系之后。欧洲对零的抵制持续了数百年——佛罗伦萨在13世纪曾短暂禁止在商业账簿中使用,理由是零太容易被用于造假。


