- 读书 >
- 中国通史 - 白寿彝 >
- 中国通史第七卷中古时代·五代辽宋夏金时期 >
- 丁编传记 >
- 第六十一章秦九韶
第二节对数学的贡献:《数书九章》
秦九韶恶劣的个人品行,与杰出的数学才能是不相称的。因此有人因他的数学成就而为其个人品行辩护,如清代数学家焦循在《天元一释》卷下说:“秦九韶为周密所丑诋,至于不堪,而其书亦晦而复显。密以填词小说之才,实学非其所知。即所称与吴履斋交稔,为贾相窜于梅州,力政不辍,则秦之为人亦瑰奇有用之才也。”与此同时,也有人因他的恶劣人品而贬低其数学成就,如余嘉锡《南宋算学家秦九韶事迹考》中说他“虽能治天算,多技能,不过小人之才耳,何足道哉!”对秦九韶,也有较客观地评价:“有才有学的人未必有德,我们读《数书九章》,不能不表扬秦九韶在数学方面的贡献,但是论他的为人,也应符合当时的历史实际。”①
《数书九章》,是秦九韶勤奋学习、苦心钻研和多年积累的数学成就的结晶,是堪与数学名著《九章算术》相媲美的。这部著作,南宋时称为《数学大略》或《数术大略》,明《永乐大典》和清《四库全书》皆题称《数学九章》。明季常熟赵氏脉望馆藏有另一抄本,万历时赵琦美为其撰写跋文始称《数书九章》。后来清道光时按赵抄本校刻的《宜稼堂丛书》本流传较广,遂成为现今的通称。该书共18卷,81题,分为9类,每类9题,主要内容是:
一、大衍类:一次同余组的解法;二、天时类:历法推算、雨雪量的计算;三、田域类:土地面积;四、测望类:勾股、重差等测量问题;五、赋役类:田赋、户税;六、钱谷类:征购米粮及仓储容积;七、营建类:建筑工程;八、军旅类:兵营布置和军需供应;九、市易类:商品交易和利息计算。
每题答案之后都有“术”说明解题方法,“术”后有“草”说明演算步骤,①钱宝琮:《秦九韶〈数书九章〉研究》,载钱宝琮等著《宋元数学史论文集》,科学出版社1966年版,第62页。
有的题目还画有图。《数书九章》中的两项最重要的成就是正负开方术(高次方程数值解法)和大衍求一术(一次同余组解法)。
在数学发展史上,古典代数学的中心课题是方程论。中国古代的方程论,不论是现代意义下的开方,还是解一般的高于二次的一元方程都被称为开方。从《周髀算经》、《九章算术》,到5世纪的祖冲之和7世纪的王孝通,已经解决了开平方、开立方,以及二次三项方程和正系数三次方程求正根问题。11世纪,贾宪又创造了一种新的开方法——增乘开方法,通过随乘随加导出减根方程,逐步求出正系数高次方程的正根。12世纪,数学家刘益提出“正负开方术”,并突破了方程系数全都为正的限制。但刘益的方法并不是增乘开方法。秦九韶在前人工作的基础上,把以增乘开方法为主体的高次方程数值解法发展到十分完备的程度。他的方程系数可正可负,可为分数,也可为小数,在有理数范围内没有限制,但规定常数项总为负。亦即解决了形如下列的数字方程求解问题:
a0xn+a1xn-1+a2xn-2+…+an-1x+an=0
其中a0≠0,an<0,ai∈Q(i=0,1,…,n)。《数书九章》81个问题中,用方程来解的有21个,共列出了26个方程,其中二次方程20个,三次1个,四次4个,十次1个,其解法大都有详草。从其随乘随加的具体运算过程可以看出,秦九韶提出的高次方程数值解法可以毫不困难地转化为计算机程序。秦九韶还讨论了“投胎”、“换骨”、“玲珑”、“同体连枝”等特殊情形,并将其广泛应用于面积、体积、测量等方面的实际问题。
在西方,关于高次方程数值解法的探讨,经历了漫长的历史过程,直到1840年,意大利数学家鲁菲尼(P.Ruffini,1765—1822)才创立了一种逐次近似法解决数字高次方程无理根的近似值问题,而1819年英国数学家霍纳(W.G.Horner,1786—1837)在英国皇家学会发表的论文“用连续逼近法解任何次数字方程的新方法”中,才提出与增乘开方法演算步骤相同的算法,后被称为“霍纳法”。秦九韶的成就要比鲁菲尼和霍纳早五六百年。
秦九韶对于一次同余组解法的理论概括,是他在数学史上的另一项杰出贡献。一次同余式问题的解法是适应天文学家推算上元积年的需要而产生的。中国古代天文学家假设在远古时代有一年的冬至、甲子日零时和日月合朔在同一时刻。该时刻即称为上元,从上元到本年经过的年数称为上元积年。在既知本年的冬至时刻和十一月平朔时刻的条件下推算这一年的上元积年是一个一次同余问题。设A为回归年(从冬至到冬至)日数,R1为本年冬至距其前一个甲子日零时的日数,B为一朔望月(从平朔到平朔)的日数,R2为冬至距前一个平朔的日数,则上元积年x满足下列一次同余组
Ax=R1(mod60)≡R2(modB)。
3世纪后,中国各家历法都有一个特定的上元积年,但各个时期的天文学家尽管掌握了上元积年的推算方法,却没有明确提出系统的和完整的一次同余理论。
最早见于记载的一次同余问题是《孙子算经》中的“物不知数”问题:
“今有物不知数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何。”这相当于求解一次同余组
x≡2(mod3)≡3(mod5)≡2(mod7)。
《孙子算经》给出最小正解:
x=2×70+3×21+2×15-2×105=23,但未说明其理论根据。秦九韶青年时在杭州“访习于太史”,掌握了上元积年的推算方法。他经过深入研究,把上元积年算法与孙子问题的解法联系起来,在《数书九章》中明确给出了一次同余组的一般解法。
设m1,m2,…,mn两两互素,M=m1·m2·…·mn,Mi=M/mi(i=1,2,3,…,n)。若有正整数k1,k2,…,kn满足
kiMi≡1(modmi),i=1,2,3,…,n,则一次同余组
的解为
x≡ri(modmi)≡r2(modm2)≡…
≡
x
n
=
1
i
kMrii
i
(
modM
)。
这就是西方文献中所称的“中国剩余定理”。秦九韶把mi、M、Mi和ki分别称作定数、衍母、衍数和乘率。
显然,一次同余组解法的关键是求乘率ki。因为同余式kiMi≡1(modmi)等价于kigi≡1(modmi),其中Mi≡gi(modmi),0<gi<mi,所以这一问题又归结为求解同余式
ax≡1(modb),(a,b)=1,a<b
秦九韶提出的著名的“大衍求一术”,就是求解(1)的方法(今亦泛指整个一次同余组的解法)。《数书九章》卷三“治历演纪”题,详细记述了南宋开禧历上元积年的推算过程。从大衍求一术的这一具体应用可以清楚看出,秦九韶的算法是完全正确和相当严密的。并且,秦九韶的大衍求一术与他的高次方程数值解法一样,简洁、明确、带有很强的机械性,其程序亦可毫无困难地转化为算法语言,用计算机来实现。
另外还值得一提的是,《数书九章》卷一、卷二大衍类共有9个一次同余组问题,其中只有“余米推数”题(三个模数为19、17、12)可直接应用“中国剩余定理”来解,其余诸题所给模数或带有小数,或带有分数,或为不两两互素的整数,需要进行适当的变换。带有小数和分数的模易于化为整数模。但由于中国古代传统数学中没有素数概念,因而秦九韶不可能用素因数分解的方法来化不两两互素的模为两两互素的模。可是他所设计的一些算法,如“两两连环求等,约奇弗约偶(或约得五,而彼有十,乃约偶弗约奇)”等,不仅较为成功地解决了这一难题,而且在实际计算上比素因数分解法更具优越性。因此,有些学者誉称其为没有素数的素数论。
在西方,最早接触一次同余组的是意大利数学家斐波那契(Fibonacci,约1170—1250),他在《算盘书》(1202)中给出了两个一次同余问题,但没有一般解法。直到18—19世纪,瑞士数学家欧拉(Euler,1707—1783)和德国数学家高斯(C.F.Gauss,1777—1855)才对一次同余组进行深入研究,重新获得与“中国剩余定理”相同的定理,并对模数两两互素的情形给出严格证明。1852年,英国传教士、汉学家伟烈亚力(A.Wylie,1815—1887)发表《中国数学科学札记》,其中介绍了大衍求一术。从1856年到1876年,德国人马蒂生(Martthiessen,1830—1906)等西方学者又多次指出大衍求一术原理与高斯方法的一致性,从而更加引起了欧洲学者的瞩目。德国数学史家康托(M.Cantor,1829—1920)高度评价了大衍求一术,他称赞发现这
(cid:229)一算法的中国数学家是“最幸运的天才”。比利时东方学家李倍始(U.Libbrecht)在《13世纪的中国数学》(ChineseMathematicsintheThirteenthCentury,1973)一书中对从《孙子算经》到19世纪末斯提尔吉斯共15个有代表性的解决同余组的人或著作作了比较。他按工作质量所排列的名次是:斯提尔吉斯(1890),欧拉(1743),高斯(1801),秦九韶(1247),贝维立基(1669),哥廷根手稿(约1550),休顿(1657),慕尼黑手稿(约1450),斐波那契(1202),杨辉(1275),《孙子算经》(约400),阿古洛斯(约1350),程大位(1592),严恭(1372),玉山若干(约1460)。秦九韶名列第四。
《数书九章》除了正负开方术和大衍求一术这两项重要成就外,还有不少其他方面的成就。如在代数学方面,改进了线性方程组的解法,普遍应用互乘相消法代替传统的直除法;在几何学方面,提出已知三角形三边之长求其面积的等价于海伦公式的“三斜求积术”:
A=
14
22ab
2
a
2
b2
2
c
œ,
将《九章算术》与《海岛算经》中的勾股测望之术发扬光大,等等。《数书九章》的内容非常丰富,从中我们不仅可以找到数学和天文历法乃至雨雪量等方面的珍贵资料,而且还可以了解到南宋时期户口增长、耕地扩展、赋税、利贷、度量衡以及货币流通、海外贸易等社会经济领域的真实情况。
如果说《九章算术》标志着中国古代数学理论的形成,那么《数书九章》则标志着中国古代数学之顶峰,其高次方程数值解法以及一次同余组解法亦代表了中世纪世界数学发展的主流与最高水平。美国科学史家萨顿(Sarton,1884—1956)因此称秦九韶是“他那个民族、他那个时代,并且确实也是所有时代最伟大的数学家之一”。
--(cid:230)Ł(cid:231)(cid:246)ł(cid:247)غŒŒøßœ