·22 第1章古代数学 点,但到了公元前8世纪中叶,巴比伦人制定了一个新的历法,规定每19年中有7个闰年,每个闰年 由13个月组成.月份的长度有时也要加以调整,以使每19年的235个月的周期中包含有6940天.事 实上,巴比伦人知道,月球周期长度的平均值约等于29.53天,而这又等于6940/235,当今犹太历法 保留了巴比伦历法的主要内容,只作了一些小的修正,以便与犹太人的法律保持一致 中国人也知道这个19年的周期,以及其它更长的周期.例如,19个太阳年实际上包含69393/4 天,他们就用了76年(27759天)的周期,以使每月的天数为整数.中国人还考虑了月食和行星的周 期,并得出了这样的结论:经过31920年后,“一切事物都结束了,又重新回到了它们的原始状 态”.20 1.7 平方根 我们来回顾一·下埃及人在化圆为方的问题中计算一个平方根的例子.其意思实际是要求一个 面积为63/81的正方形.对这个问题的一种看法是,把这正方形改写为一个7/9×9/9的矩形.为了 把这个矩形变成方形,做法是切去一个边长为79的正方形,再把剩下的矩形(7/9×2/9)分成两 半,将其中之-一沿着方形一边放置(图1.18).这样就得出一个磬折形(gnomon),即一个正方形折去 一个角.埃及的书记员显然满足于假定边长为8/9的较大的正方形是这个磬折形的足够好的近似. 毕竟他不会对√/63/18本身感兴趣,而只是关心如何用它来作圆面积的近似值.由于他并不知道这 个面积近似究竟有多大的误差,他略去这块面积为1/81的小正方形就关系不大了. 9/9 719 1/9 7/9 7/9 19 图1.18将矩形变成正方形 遗憾的是,没有其他例子表明书记员们真正算过平方根.在需要平方根时,总是把问题改动一 下,使得正好能得出平方根来.这不是说,所有这样得出来的平方根都是整数.在一份纸草书中,书 记员写下了61/4的平方根是21/2.很可能是这些书记员们有一张平方表,而这只不过将一张平方 表反过来查,这种表是不难制作出来的.如果这张表足够大,书记员甚至能够通过插值求出那些没 有在表中直接写出来的平方根,虽然,还不知道有没有这样的例子 巴比伦人也有广泛的平方和平方根的表,并且对立方和立方根也有类似 1;24,51,10 的表,现在仍存有这样的例子.通常,当在求解问题中需要平方根时,就将问题 30 处理一下,使得要求的平方根在表中,并且是一个有理数然而,会有这样的情 42;25,35 况出现,这时需要的平方根是一个无理数,特别是2.当出现这个特殊的值时, 结果一般都是写成1;25(=15/12).然而,有一块有趣的泥板,YBC7289,上面 画了一个边长为30的正方形,还在它的对角线上写了两个数1;24,51,10和 图1.19巴比伦 42;25,35(图1.19).30乘以1;24;51,10所得之积恰好就是42;25,35.这样,可以 泥板上的2. 合理地假设,最后那个数表示对角线的长度,而另一个数就表示√2
1.7平方根 ·23· √2是用1:25还是用1;24,51,10来给出,这个数又是怎么算得的,都无据可查.但是由于书记员 肯定知道,这两个数的平方都不准确地等于2,也知道它们并不准确地等于面积为2的正方形的边 长,他们肯定知道这两个值都只是近似值.这两个值是怎样定出来的呢?一个可能的方法,这个方法 在泥板文书上可以查到它的踪迹,它一开始用了一个代数恒等式(x+y)2=x2+2xy+y2,这个等 式可能是巴比伦人从一个等价的几何结论推出的.现在假设给定了一个面积为N的正方形,我们 要来求它的边长√N,第一步就是选一个接近但小于要求的值的正则数a.令b=N-a2.下一步就 是选择c,使得2ac+c2尽可能接近b(图1.20).如果a2“足够接近”N,则c2就会很小(与2ac相比), 所以可以选c等于(1/2)b(1/a),即,√N=√a2+b≈a+ (1/2)b(1/a),(为了保持与巴比伦方法的一致,c的值写成了乘 积的形式,而不是商的形式,由于有一个因子是a的倒数,由此 可见a为什么必须是一个正则数.)类似的论证有√a2-b≈a -(1/2)b(1/a).在2这个特殊情况下,开始令a=1: 20(=4/3).则a2=1;46.40,b=0;13,20,而1/a=0;45,故有 √2=√1;46,40+0;13,20≈1;20+(0;30)(0:13,20)0;45)= 1;20+0:05=1;25(或17/12).自然,人们实际上并不需要得出 图1.20√N=√/a2+b≈a+ √2≈1;25的具体过程.人们只需要有一个好的估计值,或一张 之·b·日的几何图像. a 表,其中1;25是一个要作平方的数.总之,(1;25)2与2之差仅为 0;0,25=1/144. 非常有趣的是,印度的《纯法经》用下式来逼近2: 1+号+3文4-3×4x34=吕-2×34 1 17 这很容易从公式√a2-b并令a=17/12来求得,因为 反-√(-4-吕-=吕-24 印度人是否用过这个公式无人知晓.不管怎么说,这个值与建造一个正方祭坛有关,该正方体是一 给定正方体的二倍 还不清楚巴比伦人是否也用这个方法计算了√2的更好近似值1:24,51,10,因为1;25不是一个 六十进制的正则数.有可能他们已经能求得1:25的倒数的近似值,譬如说0;42,21,10,然后计算2 如下: √2=√1:252-0:00,25≈1,25-0:30×0:00,25×0;42,21,10 =1;24,51,10,35,25. 100a 10b c 因为近似公式得出的值略高于真值,书记员们有可能将上述结果切尾后得到 1;24:51,10.然而,没有直接的迹象表明他们作了这样的计算,甚至也没有任 100a 何迹象表明他们进一步地采用了这种近似算法来计算平方根. 另一方面在中国,有直接的迹象表明有明确详尽的计算平方根的算法, 它也是以代数式(x+y)2=x2+2xy+y2为基础.在《九章》的第四章中用文 字描述了这个方法.但是研究中国数学史的专家认为,最初的作者可能用了 如图1.21所示的图形.21为了解释中国人的算法,我们用问题12来作例子, 图1.21中国人的 平方根算法. 在该问题中计算了√55225.求解的思路是这样的,求三个数字a,b,c,使得
·24 第1章古代数学 结果可以写成100a+10b+c(请记住中国人是用了十进制的).首先,求最高位的数宇a,使得有 (100a)2<55225,在本例中a=2,在图1.21中,大的正方形(55225)与小的正方形100a(40000) 之差为图1.21中那片大的磬折形.如将外层最窄的磐折形略去就可见,b应满足55225-40000> 2(100a)(10b),或者说应有15225>4000b.故必有b<4.为了校验b=3为所求,就是说把边为 10b的正方形补上所得的那个较大的磬折形面积仍小于15225,就必须校验是否有2(100a)(10b)+ (10b)2<15225.因为这实际上成立,所以可以重复相同的做法来求c:55225-40000-30(2×200 +30)>2×230c,也即2325>460c.显然有c<6.简单的校验表明c=5给出正确的平方根: √/55225=235. 中国人计算平方根的算法与近代中、小学中所教的方法相似.这个方法给出一系列的答案,在 本题中为200,230,235.每一个比它前面一个更逼近真正的结果.所以这是一个确定一收敛数列的 例子,数列中的每一个数由一明确的算法从它前面的数来算出.尽管对一个现代的读者来说,如果 答数不是整数,则这个过程显然可以用十进分数无限地继续算下去,但当时的中国作者在平方根不 是整数时,就用普通分数来作余数 在此再提出两,点评注是适宜的.第一点,仔细考察上述算法表明,这个算法的一部分是一个求 解二次方程(或至少是一个二次不等式)的过程.第二,《九章》还有一个求立方根的类似算法,有可 能是从实际的立方体推导出来的,就像这里的算法是从正方形导出来的-一样.中国人终于将这些思 想发展成为一个能求解任意阶多项式方程的详尽的方法,这个方法我们将在第六章中来讨论 1.8毕达哥拉斯定理 巴比伦人求平方根的问题之一是与一正方形的边与对角线之间的关系相联系的.这个关系是 毕达哥拉斯定理的一种特殊情况;毕达哥拉斯定理告诉我们:在任一直角三角形中,两直角边的平 方和等于斜边的平方,这个定理,以公元前6世纪希腊哲学家和数学家的名字命名,可以有理由认 为是数学中最重要的基本定理,因为它的推论和推广有着广泛的应用.虽然这样称呼,它可是古代 文明中最古老的定理之一;实际上,有迹象表明,早在毕达哥拉斯之前至少一千年人们就已经知道 这条定理了. 有些学者曾经论证,英国的与天文学有关的石庙在公元前第三个千年中建造时就用到了毕达 哥拉斯定理,特别是毕达哥拉斯三数组的知识.毕达哥拉斯三数组是这样的一组三个数(a,b,c), 它们之间存在关系a2+b2=c2.不过这种说法根据并不充分.2在巴比伦泥板普林顿(Plimpton)322 号上有确切得多的证据表明了对毕达哥拉斯三数组的兴趣(图1.22),这块泥板的年代大约在公元 前1700年.现存的这块泥板由四列数组成.(其它几列可能在左边断落部分).下面是这块泥板上的 数,用现代十进制记号重新表达,最近的编辑者们作了少量的修正,并在其左端加了一列(第五列) 推测数字 (》 d 120 0.9834028 119 169 3456 0.9491586 3367 4825 2 4800 0.9188021 4601 6649 3
1.8毕达哥拉斯定理 ·25· 13500 0.8862479 12709 18541 4 12 0.8150077 65 97 5 360 0.7851929 319 481 6 2700 0.7199837 2291 3541 960 0.6845877 799 1249 8 600 0.6426694 481 769 6480 0.5861226 4961 8161 10 60 0.5625 45 75 11 2400 0.4894168 1679 2929 12 240 0.4500174 161 289 13 2700 0.4302388 1771 3229 14 90 0.3871605 56 106 15 图1.22普林顿322(来源:乔治·阿瑟·普林顿藏品,哥伦比亚大学稀有图书和手稿图书馆) 对近代学者来说,首先要判定这不是一张陶器商业订货单,而是一件数学著作,然后还要给它 一个合理的数学解释,这可是一项重大的数学侦查任务.但他们果真找到了一个解释.栏目为x和d 的两列(这两个栏目原文可译为“宽方边”和“斜方边”),每行均包含了毕达哥拉斯三数中的两个 数.很容易从x列数的平方减去d列中同一行数的平方.每一次都会得出一个完全平方,它的平方 根即重建的y列所示.最后,利下的列表示商)尸 这些三数组是怎样导出来的,又为什么要导出这些数?这么大的毕达哥拉斯三数组是无法用试
·26· 第1章 古代数学 探法来找到的, ( 这一列的栏目意义不清,但有点像下面的意思:“矩形的辅助正方形,它被划 出来从而宽度…”,这对该表是怎样制作出来的问题多少给我们一点启示.为了求出方程x+y= 的整数解,我们可以用y除全式,并先来求())尸+1=()} 的解,或者,令u=飞,以及v= 那就是求u2+1=v2的解.后一方程等价于(v+u)(v-u)=1.就 V+u 是说,我们可以把v+u和v一u看成面积为1的一个矩形的两边(图 1.23),现在从这个矩形截出一条边长为u和v-u的矩形,将它旋转 90°并移至左下方,结果得到一个磬折形,它的两条长边都是”,这个 磬折形正好是两个正方形之差:v2-2=1.注意那个“亏缺的”正方 v-W 形,就是被划掉”的那个,其面积为2=(》,恰是泥板上最左边 的那一列中的项.为了计算泥板的项,首先取v+“的值.下一步从倒 数表中查得v一u.解出u与v,然后乘以一个适当的数y,就得出整 个毕达哥拉斯三数组.例如,若v+u=2;15(=21/4),其倒数v-u 为0:26,40(=4/9).解出v和u得v=1;20,50(=125/72)和u= 0:54,10(=65/72).将此二值乘以1;12=72,则得x和d分别为65和 97,这就是泥板中的第五行数字.反之,泥板第一行的v+u可以这样 图1.23 面积为1的矩形转 来算:将169/120(=1;24,30)与119/120(=0:59,30)相加而得 变为两个正方形 288/120(=2;24) 泥板上又为什么选择这些特殊的毕达哥拉斯三数组呢?我们同样也不 能作出肯定的回答.但是如果我们计算泥板上每一行的v+,就会注意到, 它们形成了一个由正则六十进数组成的递降数列,它们在1;48到2;24之 间,不超过四位.不是所有这样的数都被包括进来了一有五个不见了 但这可能是书记员认为这个表没有它们就已经足够长了.他也可能讨 论了大于2;24或小于1;48的数,只是记有这些内容的泥板至今尚未发掘出 30 来.无论如何,他总算编出了一张整数的毕达哥拉斯三数组,用这些三数组 可以设计训练学生的问题,而教师知道这些题会有整数解,或有有限的六十 图1.24 一个等腰 三角形的外接圆 进制分数解, 不管这个方法是不是巴比伦的书记员用来编写普林顿泥板的方法,事实是这些书记员确实是 知道毕达哥拉斯关系的.而且尽管这张特定的表除了各列的栏目名外,看不出有什么几何上的关 系,但在一些老巴比伦泥板上有明确地将毕达哥拉斯定理应用到几何上去的问题.例如,泥板 BM85196有这样一个问题,一根长为30的梁靠在墙上.上端向下滑了6的距离.下端移了多远?即 d=30,y=24已给,要求x.书记员就用了毕氏定理来计算x:x=√302-242=√324=18.在现 代伊朗发现的一块泥板上有一个较为复杂一点的例子.问题是要求一等腰三角形的外接圆的半径, 这个三角形的高为40,底为60.考虑直角三角形ABC(图1.24),它的斜边为所要求的半径,书记员 用毕达哥拉斯定理导出了方程2=302+(40-r))2.然后他算得1,20r=30+402=41,40,再利用 倒数算得r=(0:0,45)(41,40)=31;15 在印度的《纯法经》中也提到了毕达哥拉斯定理和毕达哥拉斯三数组的例子,包括(5,12,13), (8,15,17),(7,24,25)和(12,35,37).还画了一张图来表示作一个正方形等于两个给定正方形的作 图法,里面明确地采用了这个定理.在中国的文献资料中有关于这个定理的更详尽的内容,特别是