美章网 资料文库 探究古代印度数系的历史发展范文

探究古代印度数系的历史发展范文

本站小编为你精心准备了探究古代印度数系的历史发展参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

探究古代印度数系的历史发展

摘要:通过研读和比对原典文献,文章对印度数系及与其相关的记数法、数词、数字的发展演变进行追根溯源。确认在印度文明初期已有十进制记数法。数学的发展对数系的扩张和数字的发明起最直接的作用:从早期的单位分数到后来用除法来定义分数;“零”的出现不晚于6世纪,但零和负数的运算律的完善却和7世纪代数学研究密切相关;无理数(卡拉尼数)在公元前6世纪由几何产生,随着计算的深入其也从原来单纯的几何概念抽象为一般意义上的二次根式。印度数字刚诞生时可能仅是数词的简化符号,5世纪左右引入了十进位值制,在8世纪前演变成了包含符号0在内的完整体系。印度的算板笔算传统在其发展过程中起了关键性的作用。

关键词:印度数学史;十进记数法;数系扩张;印度数字

一、古代印度的记数法与数词

印度次大陆上最早出现的文明是印度河流域文明(公元前2600年至前1800年左右)。由于该文明的文字或是类文字的记号还未得到破解,因此还不知道这个时期是否出现过数词或数字。一些发掘出的砝码和量尺暗示了印度河流域文明大概已有十进制数的概念,但是它与本文所要谈到的印度数系的历史可能并没有渊源。因为整个印度河流域文明在公元前2千纪的中叶就已因气候变化或是雅利安人入侵等而在历史中消失了。雅利安人于公元前1800年左右从西北方入主印度次大陆。他们说的是一种被语言学分类为“印度-欧罗巴语系”的语言———梵语(Sanskrit)。雅利安人的梵文宗教典籍《吠陀》(Veda,约公元前2千纪中后叶成立)是印度文化的根本源泉,在谈到数系的发展时也不例外。在其最早期的《梨俱吠陀》(,约公元前1500年)的8.46.22一偈中可以明确辨认出十进数词的使用:我领受了六十()个千(sahasra)并阿由他(ayuta,10000)的马,二十()个百()的水牛,十()个百棕色的,十[个百]带三星花纹的,以及十个千的乳牛”(即7万头马,2千头水牛和1万头乳牛)。①这里的数词虽然有的以“二十”或“六十”为一组单独命名,但其基本的计数单位“十”“百”“千”均为10的乘幂。除此之外,在《夜柔吠陀》(Yajurveda,约公元前1000年)本集的祭文里还列出了从一百到10的12次方的名称:赞美(svāhā)百(,102)、赞美千(sahasra,103)、赞美万(ayuta,104)、赞美十万(niyuta,105)、赞美百万(prayuta,106)、赞美千万(arbuda,107)、赞美亿(nyarbuda,108)、赞美十亿(samudra,109)、赞美百亿(madhya,1010)、赞美千亿(anta,1011)、赞美兆(parārdha,1012)、赞美曙光、赞美破晓……赞美一切。②这里可能是想通过例举10的乘幂(即十进制数的计数单位)来表达对一切数字的赞美。需要指出的是,吠陀文献中的十进数词的数值并不确定,特别是万以上均未统一。直等到《阿耶波多历算书》(,499年)和《五大体系历书》(,550年左右)之后,印度数学文献中所使用的十进数词的值才可以说基本固定下来。梵语里表达十以下的数词依次为:eka(一)、dva(二)、tri(三)、catur(四)、(五)、(六)、sapta(七)、(八)和nava(九),可以看出它们和很多欧洲语言里的数词十分相似。而那些表示二十()、三十()等的数词则都是在此基础上进行变化。通过加减、取倍或是取半,就可以用它们表示任何一个数,如除了自然数外,印度的分数也是十进制的。在公元前一千纪中叶的吠陀辅助学《绳法经》()和《竖底沙论》()中,已出现如“六分之一”()这样的单位分数。对其加减乘除就可以表示任何一个分数甚至是带分数,如“十三又九分之五”可写作《阿耶波多历算书》之后的数学文献除继承此种表示方法外,更一般的是使用除法来定义分数量。表示“分母”这个意思的梵语词“cheda”“bhāga”或是“”(都意为“部分”)通常也可以翻译成“除数”。这正如《九章算术》里的“合分术”:“实如法而一。不满法者,以法命之”。除十进制数词以外,一些佛经里还出现过百进制的数词系统,如《方广大庄严经》(梵语原本作于约公元3世纪):“百拘胝名阿由多(ayuta,109)。百阿由多名尼由多(niyuta,1011)……百毗浮登伽摩(,1051)名怛罗络叉(,1053)。”④甚至还有使用了“倍进法”的,如《大方广佛华严经》(约3世纪):“一百洛叉为一俱胝,俱胝俱胝为一阿庾多,阿庾多阿庾多为一那由他……”⑤然而,佛经里所谈论的大数在印度数学文献中几乎从未使用过,在此不再深究。不过有一点需要注意,在《阿毗达磨俱舍论》(约4至5世纪)里似乎谈到了“数位”的问题。据说佛陀用了三阿僧企耶(,译为“不可数shǔ”)大劫的时间才修炼成佛,于是乎就有“既称无数何复言三”的问题。作为回答,其解释说阿僧企耶其实是60个数中的一个数:非无数言显不可数。解脱经说六十数中。阿僧企耶是其一数。云何六十。如彼经言。有一无余数始为一。一十为十。十十为百……十跋逻搀(,1049)为大跋逻搀(,1050)。十大跋逻搀为阿僧企耶。于此数中忘失余八(1051~1058)。若数大劫至此数中阿僧企耶名劫无数。此劫无数复积至三。⑥即将“一”(100)看作为第1个数,“十”(101)为第2个数,“百”(102)为第3个数,以此类推,数到“阿僧企耶”(1059)时便是第60个数了。可以看出,这里所说的60个“数”其实可以理解为是60个“十进数位”的名称。⑦因此,所谓“三阿僧企耶”就表示3×1059。真正明确提出十进位值制记数法的乃是阿耶波多,其《阿耶波多历算书》数学章第2偈为:一、十、百、千,然后是万和十万,继续是百万、千万、亿和十亿。每一位置(sthāna)须是它之前一位的10倍。⑧对此术文注释者婆什迦罗一世(BhāskaraI,7世纪初)解释道:“向前排列数位是为了简单起见。因为若不这样,数学运算将会变得困难,这是由于没有给数字指定位置。为什么?当摆弄大量的单位(可理解为百、千、万这样的数量)时,许多单位都需要被确定位置。另一方面,事实上,当位置固定后,那些必须使用大量单位才能完成的运算,可以只用单独一个[单位]来完成”。并且,他还特别用了10个圆圈来表示这10个数位。⑨

二、印度数字与数位关系

密切的自然是数字(数码)了。印度数字最早的实物证据出现在公元前3世纪左右的阿育王石碑中,此后的一些硬币或碑刻上也不断发现了数字的使用。那些数字基本来说采用了十进制,但没有使用位值制。如图1所示,从1到3是线条的累积,4到9,以及10和100的整数倍(如20或200)均有专门的符号来表示。在表示任意数时则是用取和或取积的形式。由于这些特征均与介绍过的印度数词相同,因此设想最初的数字可能仅是数词的简略表示。已知最早的十进位值制数字出现在一块发掘于印度桑克达(Sankheda)地区的铜板铭文中。铭文最后用了三个数字表示了该文的写作日期———印度切蒂历(ChediEra)346年(相当于公元595年到596年)。虽说按实物证据印度的十进位值制数字只能追溯到公元6世纪末,但是碑刻或铭文其形式常常偏于保守。从《阿耶波多历算书》或是《阿毗达磨俱舍论》的记述来看,我们完全有理由断定早在公元5世纪十进位值制数字就已被发明出来。从另一方面来讲,记数法往往和计算工具相联系———正如十进位值制记数的产生在中国是与算筹的使用与筹算制度的演进分不开,瑏瑡印度数字的产生可能和算板的使用关系紧密。算板()是印度数学家进行数学运算时的主要工具,其历史可以追溯到公元前。其形状为长条形,外面包裹皮革,用类似粉笔的棒在上面书写,字迹可以擦去并反复使用。瑏瑢事实上,婆什迦罗一世在注释《阿耶波多历算书》时总会有一个叫作“记下”()的步骤,用来将术文或例题中提到的数量用数字()抄录于算板上,之后再进行演算。上面婆什迦罗一世画了10个圆圈来表示阿耶波多的10个数位,而真正计算时在各数位上填入的就应该是数字了。虽然我们不清楚阿耶波多或婆什迦罗一世所使用的数字是什么样子的,但在一部抄写于8世纪的数学书《巴克沙丽抄本》()中十进位值制的数字已可得到清晰的辨认。瑏瑣十进位值制数字对数学的进步意义重大。一方面用它可以方便地表示任何数量,另一方面则是它非常利于笔算———阿耶波多的开平方或开立方算法就和十进位值制记数法关系密切。在婆什迦罗一世的时代,印度的记数法可能就已传入中亚地区。瑏瑤接着在8世纪,印度记数法通过印度的外交使节介绍到巴格达的宫廷,9世纪的花拉子米在《印度数字计算法》(Algorithmidenumeroindorum,阿拉伯语原本散佚,现仅存拉丁语译本)一书中也对其做了详细的记载。到了11世纪,阿拉伯帝国的各处(特别是在西班牙、西西里岛和埃及)都在使用印度记数法。斐波那契(LeonadoFibonacci)是印度记数法在欧洲得到普及的最大功臣。他在《计算之书》(LiberAbaci,约13世纪初)中介绍道:“印度数字有9个,分别是9、8、7、6、5、4、3、2、1。加上在阿拉伯语中被唤作希夫尔(sifr)的0,就能够随心所欲地记下任何数。”瑏瑥有一点需要指出,根据斐波那契的介绍及其他一些资料来看,欧洲人所认识的“印度数字”似乎仅仅指除0以外的9个数字。其中缘由我们无从得知,但可以肯定的是,在成熟的位值制记数法中无论如何都不可缺少表示空位的符号“零”。印度人一开始可能是用点来表示零的。婆什迦罗一世在《阿耶波多历算书注释》中如此表现太阳在一个纪(yuga)里的周转圈数:瑏瑦其数为天空(0)-雨云(0)-点(0)-云(0)-双子(2)-祭火(3)-完美(4)即4320000。这里,婆什迦罗一世在表现某个数量时所用的并不是数词或是数字,而是一种被称为“具象数字”()的数字联想表现法。也就是说,在表示某个数时可以用某个具体事物的名称来代替,只要从这个名称可以方便联想起所要表示的那个数就行。如“月亮”代表“1”,“双子”代表“2”,“祭火”代表“3”(来自吠陀祭仪中使用的三个祭火坛)等。这里,“天空”和“云”表示“0”,因为它们都意味着“空虚”。“点”也表示“0”,但它可能意味的是数字“0”的形状。因此我们有理由相信,在婆什迦罗一世的时代,即公元7世纪初时,印度人已经在使用点或圈作为零的符号了。瑏瑧值得一提的是,“数字”()这个词本身也是一个具象数字,代表9。这说明即使在印度人眼里,记号0和从1到9这九个数码之间还是有些差别。这可能是因为前者仅是一“点”,而后者则拥有“图样”。

三、数系的扩张———零、负数

完备的印度十进位值制记数法确实包含了表示空位的0。然而在印度人眼里,0不仅仅是一个空位符,它毫无疑问也表示了一个数量,即“零”———梵语为“kha”或“”,都意为“空”。瑏瑩对它可以和别的数量一样进行加减乘除,其最早的一个例子来自6世纪的《五大体系历书》:太阳[从白羊宫开始]的每日运行速度依次为60[分]减3、3、……、减0、1,瑐瑠即有60-0=60。正是这一点使得印度的零有别于古巴比伦、古埃及也曾有过的那种占位的零,因此印度人被认为是发明出了真正意义上的“零”。究其原因,尽管有人会将零和印度宗教哲学中独特的“空”观念联系在一起,但是印度数学自身———比如笔算,以及代数学的发展,却能够更加自然地解释零,乃至负数概念在印度的产生和完备。“数学”一词在梵语里叫作“”,从词源上讲,它与意为计数的动词“”有关。婆罗摩笈多(Brahmagupta)在其《婆罗摩修正体系》(,628年)中论述道“”包含两种意思:其一是关于“已知量”的运算,如算术和几何,构成了其《体系》第12章的内容;其二被称为“库塔卡”()———这个词的本义是一种解不定方程的方法,这里借指求解含有“未知量”的代数问题,其构成《体系》第18章的内容。

四、无理数的历史发展

事实上,印度人认识无理数要比认识零或负数都要早。和古希腊的情形一样,无理数最先也是从几何问题而来。公元前6世纪左右的《绳法经》里就有经文这样说道:(1.9-10:)正方形的对角线生成两倍[于原正方形]的面积。[长方形]的宽是基准正方形的边,若长为两倍[正方形的]边(),则对角线就等于三倍[正方形的]边。瑐瑥即,若基准正方形的边长为1,根据勾股定理(由《绳法经》1.12给出),其对角线长为“”。根据上下文意思直译为“可生成[面积为]2[的正方形]的边”或“两倍[正方形的]边”;同样地,以1和“两倍[正方形的]边”为边的长方形的对角线则等于“三倍[正方形的]边”(tri-karanī)。可以看出,对于开平方不尽的数,印度人是将其和“卡拉尼”()一词放在一起来表示其平方根。姑且把它称为“卡拉尼数”,“2卡拉尼”就意味槡2,“3卡拉尼”就为槡3。早期卡拉尼一词的使用似乎仅局限于几何问题中,在求某数的平方根时则倾向于使用“mūla”(意为“根”)一词(《阿耶波多历算书》2.4)。因此,早期的卡拉尼数只用作为描述一个几何量的大小,如边长、对角线的长等。相对于这种实体的卡拉尼数,后来发展出卡拉尼的第二种用法,即用它来笼统指代二次根式。如“两个卡拉尼的乘积”(《注释》2.6)这样的表述,指一般意义上的“两个二次根式的乘积”。卡拉尼由此从几何实体变为纯粹的符号化的运算对象,这乃是印度人在数学思想上从形象到抽象的一次飞跃。我们认为这个演变与对卡拉尼数计算的深入理解有关。婆什迦罗一世在《注释》中多次用到卡拉尼数,甚至将其符号化,直接用头音节“卡”(ka)来表示。

通过对原典文献的研读和比对,确认了在印度文明初期的吠陀时代就已有十进记数法。百进和倍进法虽然也在一些文献中存在过,但其主要局限于佛教的说法,且并未进入印度数学的主流之中。数学的发展则对数系的扩张和数字的发明起到了最直接的作用。吠陀时代虽已有单位分数,但在6世纪后就基本只用除法来定义分数量。作为数量的“零”不晚于6世纪出现,但零和负数的运算律的完善却和7世纪印度代数学解方程的研究密切相关,这点从婆罗摩笈多的论述中可以清楚看出。无理数(卡拉尼数)于公元前6世纪产生,其是图形计算时应用毕达哥拉斯定理的必然结果。后来随着计算的深入,人们对卡拉尼数的理解也从原来单纯的几何概念抽象为一般意义上的二次根式。并且阿耶波多、婆什迦罗一世还认识到无理数和圆周率的不可通约性。印度数字刚诞生时可能仅是数词的简化符号,到5世纪左右引入十进位值制,并在8世纪前演变成包含符号0在内的一个完整体系。我们认为印度的算板笔算传统在其发展过程中起了关键性的作用。

作者:吕鹏;纪志刚 单位:上海交通大学科学史与科学文化研究院