南宋数学家秦九韶所著的《数书九章》[1]是中国古代数学史上的名篇,其所载的正负开方术成为世界级数学成就.《数学九章》在《癸辛杂识续集》称作《数学大略》,《永乐大典》称作《数学九章》[2].全书共9卷,每卷9问,总计81问,每问由问题、答案、模式、算草和图示5个部分组成.
20世纪以来,随着现代、当代学者对秦九韶及其《数书九章》不断的深入研究,如:吴文俊[3]客观总结了秦九韶的机械化思想体系,强调了该思想对振兴我国未来的数学事业的重要作用;比利时数学家Libbrecht[4]高度赞扬“秦九韶成为那个时代中国伟大的数学家之一”;著名数学教授钱宝琮[5]也提出《数书九章》是秦九韶苦心钻研和多年积累的数学成就的结晶;Mandiewica[6]指出该书汇集了历学、数学、星象、音律和营造等资料,代表了中世纪中国乃至世界数学的先进水平,相关的计算方法和经验常数直到现在仍有很高的学术价值和实践意义.秦九韶是站在“数学建模”的高度[7],深入研究各类数学问题,是一位具有实事求是的科学精神与创新精神的数学家[8].通过分析秦九韶的天文历算、分析现代和传统数学的差异,可以全面理解秦氏记述正负开方术的历史事实.
本文主要以《数书九章》卷八第二问“遥度圆城”题为例,探讨秦九韶正负开方术求解高次方程正根的解法.原文如下:有圆城不知周径,四门中开,北外三里有乔木,出南门便折东行九里,乃见木.欲知城周径各几何?(注:1里=500 m).翻译成现代汉语意为:有一座圆形的城池,北门的正北方向1 500 m处有一棵乔木,出南门向东行4 500 m,便可以看到那棵乔木.问城池的周长和直径各是多少?遥度圆城示意见图1.
图1 遥度圆城示意
《数书九章》中这样记载:“答曰:径九里.周二十七里.术曰:以勾股差率得之.一为从隅,五因北外里,为从七廉,置北里幂,八因,为从五廉,以北里幂为正率,以东行幂为负率,二率差,四因,乘北里为益从三廉,倍负率,成五廉,为益上廉,以北里乘上廉,为实,开玲珑九乘方,得数,自乘为径以三因径得周.”
古法的解题步骤分为2步,第1步为求率圆,即根据已知条件列出方程,古法称为造术;第2步为开九成方圆,即利用正负开方术求解高次方程.勾股差率指以相似勾股形的对应边成比例来立式;文中“隅”“廉”“方法”沿用中国古代开放术语[9],是开平方或开立方的算筹步骤,其中隅表示x3、廉表示ax2、方法表示bx,不同算筹层次分别对应着现代多项式方程的组成部分.
第1步:根据已知条件列出方程.数学家刘徽在“方程”注述中提到,令每“行”为“率”,即按条件列等式;如表1所示每行上列为“物率”,下列为“总实”,将等式的系数用算筹布列出一个方阵;使得行数与物数相等,列出类似于现代多元线性方程的增广矩阵,从而进行矩阵运算.《数书九章》提出正负开方术[10],目的是由“实”求“商”.运用“商常为正,实常为负,从常为正,益常为负”的原则,纯用代数加法,给出统一运算规律,并在贾宪“增乘开方法”的基础上扩充到任何高次方程中的一般形式,可表示为
表1 求圆率
上1(从隅)3(北里)72(从5廉)9(正率)288(得数)81(负率)11 664(益上廉)副5(因率)3(北里)9(东步行)81(负率)3(北里)2(倍数)3(北里)次3(北里)9(正率)9(东步行)-72(负差)-864(益3廉)162(得数)34 992(实)下15(从7廉)8(因率)81(负率)4(因率)0 72(从立廉)
第2步,利用有效且高度机械化的迭代算法进行该高方程求解.具体步骤为
①依据“实常为负”原则,常数项规定总为负,方程式中除了常数项外都可正可负,得到
② 议得试商3,通过减根变换x=3+h将式(2)变为新方程
《数书九章》中“遥度圆城”开方圆本[11]如图2所示,反复提取公因子,经过9次机械化迭代程序,由下而上累乘累加进行试商,最终将结果从常数项中减去.图中的廉除了分为上廉、次廉、下廉,又细分为才廉、维廉、行廉、爻廉和星廉,分别表示 x4、x5、x6、x7和x8,且每一项标出正负,“○”表示零,即没有的概念.迭代计算过程还原如表2所示.
图2 开方圆本
注:据宜家堂丛书.
表2 迭代程序
常数项a9 a8 a7 a6 a5 a4 a3 a2 a1 a0迭代算式0+3 888×3=11 664-11 664+5 184×3=3 888 0+1 728×3=5 184-864+864×3=1 728 0+288×3=864 72+72×3=288 0+24×3=72 15+3×3=24 0+1×3=3 1
③如表2所示,迭代过程直到常数项a10(实)恰好被减尽,34 992-11 664×3=0计算过程结束.设x2为城径,最终得到未知数奇次幂系数为0的10次方程(2),求解得到精确根 x=3.因此,城径为 9,依据题意π取3,得到圆周长为27.
近代数学将“方程”定义为含有未知数的等式.随着数学的不断发展,方程逐渐成为初等数学的重要组成部分,其关键在于将未知信息带入运算过程,并通过信息之间的联系,求解未知数.清乾隆年间《四库全书》收录《数书九章》[12],并利用圆内接四边形OBCD应用,求解4次方程正根.
将遥度圆城抽象化,示意如图3所示,O为圆城中心,B为南门,F为北门.北门外A处有一乔木,设AF=3,AC切圆于D,BE⊥AC于E.由割线定理可知,
图3 遥度圆城简化版示意
《数书九章》明确给出未知数奇次幂系数为0的10次方程的解法,并未提及如何布列方程的过程.为何不用3、4次,反而用10次求解方程,成为历代数学家探讨最多的问题之一[13].学界普遍认为:秦九韶为证明正负开方术适用于任意高次方程,有意提高方程次数.从而把未知数设为圆城半径的某次方根.
下面以玲珑10次方程为例,即1.1节中式(2),给出一种导出这个方程的方法.事实上,可知玲珑10次方程的来历与“遥度圆城”有着密切的联系.
命题1“遥度圆城”示意如图4所示,在△ABC中,BE⊥AC,EG⊥BC,EH⊥AB,则
图4 遥度圆城示意
证明:考虑直角三角形ΔECB和ΔABC,根据射影定理,CG·CB=CE2以及CE·AC=CB2.通过计算,有
同理,考虑直角三角形ΔEBA和ΔABC,可以得到
利用比例式(5)推导出方程(2),说明“遥度圆城的造术”是相似勾股形对应边的比例的解释;由式(6)化简后的整系数方程是一个12次方程,约去因子x2+3得到10次方程,也解释了秦九韶算法列出10次方程的原因.
秦九昭在《数书九章》方程章中还包括等共计21个高次方程[14].其中4次方程4个,10次方程1个,例如[尖田求积]-x4+76 300x2-40 642 560 000=0.
解题关键是利用算筹列出方程,通过试商,寻找x=+h的减根方程,由下而上,累乘累加反复提取公因子,建立系数表,从而确定实根.正负开方法不仅可以求解奇次项系数为0的玲珑乘方,事实上可以开任意次方[15].当遇到《四元玉鉴》开 13次方,且条件繁杂时,算筹步骤则会增加至“十二廉”,计算难度也会随之增加.
正负开方法最大优势在于将求解n次多项式转化为求解n个一次方程,降低计算难度;除此之外,相较于“增乘开方法”,该算法实现了机械化的随乘随加,节约运算时间.
秦九韶经过贾宪等人的研究,将增乘开方法推广为一般任意高次方程的普遍数值解法.宋元乃至更远时期的数学思想受哲学影响,常用实物来刻画数学对象,逐步形成“实际问题—数学模型—算法求解”的问答式思维过程,表现为:由已知推导未知、明确算理.
11世纪初期,秦九韶的《数书九章》集汉朝以来开方术的最高成果,通过运用“增乘开方”法的思想成功解决了高次方程解的计算问题[16].随着时间推移,这种以解决农耕、军事等实际问题的探究式解题方式,逐渐被西方设未知数、求解方程的方式所取代.西方代数“algebra”传入中国翻译为“借根方法”,即设立一类似于天元的“虚数”——“根”,并采用西式符号“+、-、=”构建方程;如尖田求积问题的列式如图5所示.
图5 尖田求积问题示意
由此可见,古、今算法形式上的差异之处在于:现代算法形成了已知信息和未知信息的结合,从更高的角度寻找这二者的关联并求解.
勾股测圆术应用于“遥度圆城”,从而构建玲珑10次方程,加强了几何与代数之间的联系,实现了一般任意高次方程的普遍数值解法,充分体现了秦九韶“以拟于用”的数学研究目的和“数术之传,以实为体”的算筹思想,实现了数学在天文、历法等领域的深度应用;同时这种高度凝练的算术技能,也为现代编程计算提供迭代算法思路.
纵观中国古代数学史,从开方术到近代求解数值解多项式方程等应用,“算筹”作为求解方程的独特运算方式,促进了天元术、四元术的发展[17],也成为科技进步的重要基石;然而对于传统数学的探究自宋代之后,却出现断层式下降,明清对于宋之前数学著作的注述逐渐减少,同时受西方推理、逻辑等数学思想的影响,导致许多数学成果后继无人,日渐衰废.
为此应该树立正确的数学史观:一方面不可片面地认为中国数学还是西方数学更有优势,二者可以相互融合,共同促进;另一方面需从传统数学史中探寻优秀的数学思想,了解古代数学家思考问题的角度,提炼具体数学知识载体,不断创造并引领数学研究走向全新领域.
[1]秦九韶.数书九章[M].[出版地不详]:赵琦美钞本,1616.
[2] 李文林.数学史概论[M].北京:高等教育出版社,2002.
[3] 吴文俊.秦九韶与《数书九章》[M].北京:北京师范大学出版社,1987.
[4] LIBBRECHT U.Chinese mathematics in the 13th century[M].Cambridge:MIT Press,1973.
[5] 钱宝琮.秦九韶《数书九章》研究[C]//钱宝琮.宋元数学史论文集.北京:科学出版社,1966:60-103.
[6] MANDIEWICA R.数学的故事[M].海口:海南出版社,2002.
[7] 查有梁.秦九韶在数学上的贡献(一)[J].广西民族学院学报(自然科学版),2006,12(2):28-36.
[8] 郭书春.秦九韶《数书九章序》注释[J].湖州师范学院学报,2004(1):35-44.
[9] 李迪.试论中国古代的开方式[J].自然辩证法通讯,2003(2):67-71+111.
[10]杜石然.“九章算术”中关於“方程”解法的成就[J].数学通报,1956(11):11-14.
[11] 郭书春.中国科学技术典籍通汇数学卷[M].郑州:河南教育出版社,1993.
[12] 朱一文.秦九韶对大衍术的筭图表达:基于《数书九章》赵琦美钞本的分析[J].自然科学史研究,2017(2):244-257.
[13]高宏林.秦九韶《数书九章》中“遥度圆城”等若干问题探讨[C]//高宏林.《数书九章》成书740周年学术研讨论文集.郑州:河南教育学院数学系,1987(5):1-18.
[14] 陈敏,陶会强.宋元时期高次方程的发展[J].科协论坛(下半月),2010(1):94-95.
[15] 梅荣照.宋元数学的盛衰[J].自然科学史研究,1988(3):205-213.
[16] 付春娟.南宋秦九韶的数学成就[J].兰台世界,2012(19):68-69.
[17] 刘邦凡.中国逻辑与中国传统数学[D].天津:南开大学,2004.
The equation chapter of Mathematical Treatise in Nine Sections and its thought of calculating and raising funds:based on "Yaodu Yuancheng"