中国古代数学
话说在公元前543年的晋国,由于国君需要要建一座城池,一群被征来筑城的农夫在吃力地干活。眼看天快晌午了,这伙人都饿得前心贴后背,干不动了。每天这时候午饭早该送来了,可今天连个影都没有。大家正等得不耐烦,远远望见一个人骑马跑来,高喊着:“国君夫人见大家干活卖力,特地犒赏一顿好饭!”果然,不一会就有好几个宫中的小官吏抬着带肉的菜饭晃晃悠悠地走过来。
干活的人们赶紧围了上去吃起来。这时从人群外挤进一个老头,看上去年纪不小了,端了只空碗走到饭桶旁,弯腰盛起一碗饭,狼吞虎咽地吃起来。一个官吏连忙过来,喝斥道:“老家伙,你是什么人,敢来这儿抢饭吃?”老人吞下一口饭,答道:“我儿子为国君修城墙,前几天被砸死了。剩下我这孤老头子,无依无靠,只好上这来找口饭吃啊。”官吏听了,就问:“你多大年纪啦?”老人说:“我是个下等贱民,不知道记下年龄。但只记得我出生时是正月初一甲子日,到现在已经过了445个甲子日了。最末一个甲子日到今天刚刚是20天。”
官吏一听就懵了。他想了半天也算不出老头到底有多大年龄。于是,官吏就跑回宫中去找学者师旷讯问。师旷算了一会,告诉他:“这老头已经活了26660天了,今年73岁。要好好照顾他呢!”原来,我国一直有尊老的习俗,这是我国优良传统。在那时,凡是达到一定年龄的老人是要受到一定优待的。后来,国君还要让老人当官,不过老人以年龄大推辞掉了。
这只是一个普通的老头,国君为什么要让他做官呢?原来,他懂数学,会计算。别看这些问题现在小学高年级的学生轻易地就可以解出来,但在2500多年前,能够计算这我国古代人用算筹在地上计算这样复杂问题的人可不多。所谓甲子日,是中国古代一种计日方法。甲、乙、丙、丁、戊、己、庚、辛、壬、癸,这10个叫“天干”;子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥,这12个叫“地支”。将天干和地支依次组合:甲子、乙丑、丙寅……每一个组合代表一天(或一年,现在农历还在这样记年),这样就有60个组合,然后再重复回来。所以老人说他是甲子日生,共计过了445个甲子日又20天,那就应当用60×(445-1)+20,整好是26660天,合73岁。
2500年前能清晰地算出这种问题确实是不简单的。它涉及到了60进位,10进位,365进位等等一系列进位制,而且有乘法、除法四则运算。看来中国古代数学发展也是很早的。据我们现在考古从甲骨文中样复代的计数,是用的甲骨110进制,用一、二、三、四、五、六、七、八、九、十、百、千、万等的组合来记十万以内的自然数。
商代离现在的年代更久远,至少有三千年以上,虽然留下来的文献无几,但我们还是从那些只言片语中得知那时数学的情况。
春秋战国时期,正是中国社会从奴隶制转变到封建制的时期,生产的迅速发展向人们提出了大量比较复杂的数学计算问题。于是,这时出现了一种十分重要的计算方法——筹算。筹算是用算筹来进行的。算筹是圆形竹棍,直径约有0.2厘米,长约为14厘米,以271根为一“握”。后来,长度有所减小,圆的也变成方的或扁的。这种变化是为了减少计算时,铺在地上的算筹面积,以适应更复杂的计算;圆的改成扁的就避免了算筹滚动造成的计算错误。除了用竹子做筹外,还有木筹,铁筹、玉筹和牙筹,另附有装算筹的算袋和算子筒。1971年,在陕西省千阳县发现汉代骨制算筹三十多根,1975年又在湖北江陵发现汉初竹制算筹。这都为考察中国古算法提供了实物资料。
筹算是严格遵守10进位记数法的。同一个数放在百位就代表几百,放在千位就代表几千。这种记法,除了所用数字和现在通用的印度—阿拉伯数字形式有所不同以外,其实质是完全一样的。在计算中,—面把算筹摆成数字,一面进行计算,运算程序和现在珠算运算很相似。记叙筹算法则的书有公元4世纪的《孙子算经》、公元5世纪的《夏侯阳算经》等等。后来计算中又出现了负数,算筹又被分成红黑两种,红筹表示正数,黑筹表示负数。算筹除了算术运算外,还能表示代数式,进行各种代数运算。我国古代在数字计算和代数方面取得了令人瞩目的成就,是同筹算运用分不开的。祖冲之在公元6世纪就把圆周率计算准确到小数第六位,这需要计算12888边形的边长,把一个九位数进行二十二次开平方,这其中10进制的筹算方法应该是功不可没的。
众所周知世界四大文明古国:中国、古巴比伦、古埃及、古希腊。比起古巴比伦来,中国的10进位制和筹算应该算是比较方便和先进的。古巴比伦的60进位制,计算起来相当繁琐。古埃及的数字从1到10只有两个数字符号,从100到10000000只有约四个数字符号,而且是象形的。古希腊的计数方法也很落后,全部用希腊字母表示1到10000的数字,字母不够,就在字母旁边加符号。直到被阿拉伯数字逐渐取代为止。
任何一门科学或学科的发展都是应当时社会发展的需要产生的。在中国当然也不例外,数字的发生和发展始终同统治者的需要密切联系的,数学总是致力于解决官府所要解决的实际问题。比如土地的丈量、谷仓容积、堤坝和河渠的修建、税收等等。而纯数学用到的场合则很少,因而古代中国纯粹的数学家不多,从事数学研究的人总是同时还在进行其他研究或从事其他职业。如我国古代伟大的数学家祖冲之就曾任过南徐州从事、娄县县令、谒者仆射等官职,还当过南齐王朝的长水都尉。尽管这样,我们的祖先们还是为我们留下了极丰富的数学遗产,其中也不乏对纯数学发展极为有益的内容。其实,直到明朝中叶以前,在数学的许多分支领域里,中国还一直处于领先地位,许多数学家写下了不少著名数学著作。
我们现在所知的最早的数学著作是《周髀算经》和《九毕达哥拉斯章算术》,它们都是公元纪元前后的作品。现在北京图书馆和其他一些图书馆里还藏有南宋版的《周髀算经》和《九章算术》,这是相当珍贵的历史文物和科学遗产。在《周髀算经》中,有一段被尊为古代圣人的周公同—个名叫商高的数学家的对话,在对话中就提出了毕达哥拉斯定理(即现在所说的勾股定理),也就是“直角三角形斜边平方等于两个直边平方之和”,所以这个定理在中国也称为商高定理;另有一部分是名叫陈子的人和叫荣方的人的对话,他们谈论日影,估计在不同纬度上日影的长度差,同时谈到用窥管测量太阳直径的方法;书中还载有与太阳周年运动有关的计算,提到利用水平仪来取得测日影所需要的水平面,还列出了一年中各个节气的日影长度表;此外,还讨论了从日出日落来观察确定子午线、恒星的中天、二十八宿、闰年以及其他天文学问题。
关于商高定理部分,书中写道:一天,周公对商高说:“我听说您很精通数的艺术。可否请您谈谈古代人是怎样测定天球度数的?没有一种梯子可以使人攀登上天,地也无法用尺来测量。因此想问问您,这些数据是从何而来的呢?”
商高回答说:“数的艺术从圆形和方形开始。圆形出自方形,而方形出自矩形,矩形出自9×9=81这个事实。假如把矩形沿对角线切开,让宽等于3个单位长,长为4个单位,那么对角线的长度就是5个单位。
古代大禹用来治理天下的方法,就是从这些数字发展出来的。”
周公感叹地说:“数学这门艺术真是了不起啊!我想再请教怎样应用直角三角尺?”
商高回答:“使直角三角尺平卧地上,可以用绳子设计出平直的和方形的工程。把直角三角尺竖立起来,可以测量高度。倒立的直角三角尺可以用来测量深浅,而平放着就可以测出距离。让直角三角尺旋转,就可以画出圆,把几个直角三角尺合在一起,就可以得到正方形和长方形。”
周公不住地点头说:“这真是太妙了!”
后来的学者曾指出《周髀算经》的伟大不仅仅在于它的数学知识的阐述,更重要的是它是在占星术与卜筮占支配地位的时期写就的,而它在讨论天地现象时却丝毫不带迷信成分!这在当时的确是难能可贵的。
在中国历史上,和《周髀算经》齐名的,还有一部数学著作,科学史上称为《九章算术》。有人认为《九章算术》比《周髀算经》的成书年代还要早,但一般认为它们的年代差不多。比起《周髀算经》来,《九章算术》中的数学水平要进步得多。《九章算术》共包含九章,246个问题。内容大致是这样的:(1)土地测量。书中列有直角三角形、梯形、三角形、圆、弧形与环形等等,给出了计算这些形状面积的方法。
(2)百分法和比例,根据比例关系来求问题答案。
(3)算术级数和几何级数。
(4)处理当图形面积及一边长度已知时求其他边长的问题。还有求平方根和立方根问题。
(5)立体图形(棱柱、圆柱、棱锥、圆锥、圆台、四面体等)体积的测量和计算,实际计算的有墙、城墙、堤防、水道和河流等等。
(6)解决征收税务中的数学问题。像人们从产地运送谷物到京城交税所需的时间等有关问题,还有按人口征税的问题。
(7)过剩与不足的问题。也就是解决ax+b=0的问题。
(8)解方程和不定方程。
(9)直角三角形的性质。这一章里有这样一个问题:“一个水池,长宽各一丈,有棵芦苇生在池中央,芦苇出水面一尺高,让芦苇倒向池边,正好芦苇尖与池边平齐。问水有多深?”这个问题后来也见于印度的数学著作中,又传到了中世纪的欧洲。这个问题就是利用相似直角三角形来解决问题。
《九章算术》对中国古代数学发生的影响,好比古希腊欧几里得《几何原本》对西方数学所产生的影响一样。一千多年的时间里,它一直被直接用作为教科书使用。日本、朝鲜也都曾用它作教科书。各代学者都十分重视对这部算书的研究,在欧洲和阿拉伯的早期数学著作中,过剩与不足问题的算法就被称为“中国算法”。
宋本《孙子算经》(现藏于上海图书馆)
在中国古代,著名的数学著作当然不只上述两种,汉代到唐代,虽然许多算书都失传了,但现在仍知道曾有包括上述两种书籍在内的十种书籍作为皇家学院的教科书,像《孙子算经》《夏侯阳算经》《缀术》等等。其中一些名词一直沿用到今天。如:分子、分母、开平方、开立方、正、负、方程等。也许人们还不知道,这些今天看似极普通的数学名称,其实已经有2000年的历史了。
古巴比伦数学
19世纪大数学家、物理学家和天文学家高斯曾说过:“数学是科学之王”。说数学是科学之王,当然不是说数学统帅其他科学,而是说数学最集中、最深刻、最典型地反映着人类理性和逻辑思维所能达到的高度。的确,数学当然是从人类生产和其他需要中产生的,比如几何学中“角”的概念是最初人们观察到大小腿(股)或上臂之间形成的角而产生的,所以在英文中,直角三角形的两边还叫两臂。但是随着数学产生和发展,这个学科本身就形成了自身的发展规律,有了自身的独立性。有些不是生活中直观的东西,有些不是生产和其他需要的问题,也在数学中被提出来并进行艰深的探讨了。比如哥德巴赫猜想,问题内容是“将任意(3以上)的和数表示成为两个质数之和是可能的。”
有人可能会问:“这同实际生活根本连边都挂不上,它有什么意义呢?”它的意义就在于提出它和解决它可以证明我们人类的头脑究竟有多聪明,究竟有什么样的思维能力。何况,数学在人类历史发展过程中往往走在科学的最前列,有些数学上问题已经解决了,但其他科学还不知道它是怎么回事,要等上几十年甚至几百年才知道它的实际意义和用处。就像非欧几何,高斯很早就奠定了它得基础,但直到100多年以后,爱因斯坦的相对论提出后,人们才逐渐理解到它的实际意义。今天,在航天和其他高精领域,非欧几何也还是最有力的工具之一。
所以,如果说人类思维的头脑是宇宙中最美丽的花朵的话,那么数学就是这朵花的花蕊。
下面让我们来看一看这最美丽花朵的最精彩的部分是从哪里开始出现的吧。
到了原始社会晚期,人类已经开始有了数的概念。那时候,有些原始人已经知道并能运算大的整数,还有的能把数作为抽象概念来认识,但多数部落的人们还只能分辨一、二和许多,并没有更多的数学知识。随着生产和社会的发展,人们逐渐学会了采用特殊的字来代表个别的数,引入数的记号,甚至采用十、二十或五作为基底来表示较大的数量。这时也有了分数的概念。至于四则运算,则只限于小的数,在原始文明中,数学只限于在田地面积的粗略计算,简单交易,陶器上的几何图案,记时等方面运用。
公元前3000年左右,古巴比伦开始有了较成体系的数学了。现在考古发现的古巴比伦泥版文书对研究数学史提供了有力的证据。这些泥版书是在胶泥软时刻上字然后晒干而成的,而那些尚未毁坏的就保存了下来。这些泥版书大抵制作于两段时期:有些制作于公元前2000年左右;而大部分是公元前600年到公元300年制作的。较早的泥版是用断面呈三角形的笔斜刻的,刻痕呈楔形,因此这种文字叫楔形文字。在楔形文字中,已经出现了从1到60的整数的楔形文字写法和记号。其中1和60的记号样子差不多,因为巴比伦人采用60为基底的进位记号。但这些记号组合在一起时还是可能引起误解,因为没有数的空位“零”是没有记号的。所以要弄清整个数字的确切数值,我们还得参考其他内容才行。
古巴比伦人也会表示分数,但一组记号所表示的分数也可以作多种理解,这是一种混淆不清的表示法。在古巴比伦,10进位也是有的,还有的使用12进位,这同我们现在的小时用12进位,分、秒用60进位,英时用12进位,而普通计数用10进位是一样的。其中60进位制的分数用60乘幂的形式表示,这种写法一直沿用到16世纪欧洲文艺复兴时,才为10进制的小数所代替。
古巴比伦人也有表示平方、平方根、立方和立方根的数表。当方根是整数时,给出的是准确值。对于非整数的方根,相应的60进制数值只是近似的。不过,现在我们还没有根据证明巴比伦人已经有了无理数的概念。
在古巴比伦时代,求给定宽和高的一扇门对角线问题时出现了平方根。他们还给出了求平方根问题的其他近似解答。