第6讲 宋元四大家:算学的巅峰与停顿 —— 高度不是常态
1247 年秦九韶写成《数书九章》,1303 年朱世杰刻成《四元玉鉴》。这一百年里,中国人的算学冲到后来再没达到的高度,然后停了五六百年。这一讲讲四个人,和那个必须解释清楚的"停顿"。
前五讲讲的是人怎么等读者。这一讲反过来:有一百年,中国数学不需要等——然后接连五六百年,没有人再往下走。
1247 年《数书九章》成书到 1303 年《四元玉鉴》刻成,中间只有五十六年。这段时间出现了四种当时世界上只有中国人掌握的方法:一次同余方程组的通用解法、一元高次方程的数值解法、四元高次方程组的消元、直到四次差的内插公式。然后它们在明代几乎全部失传,懂的人一个都没有。
高度不是常态,停顿才是需要解释的东西。
先看高度:一百年间的四本书
四个人按成书顺序是秦九韶、杨辉、李冶、朱世杰,后世称"宋元四大家"。
这个名目是 20 世纪的归纳,不是他们自己的说法。 四人分处两个政权、南北两片地域,彼此不一定知道对方存在:秦九韶 1247 年成书时杨辉还是少年,而杨辉一生没有引用过秦九韶任何成果;朱世杰最晚,才第一次把南北两边的算书读到一起。
还有一点:四个人的生卒年,三个不确切。杨辉、朱世杰生卒年皆不详,秦九韶生年有 1202、1208 两说,卒年有 1261、1268 两说,学界没有共识;只有李冶有确切的 1192—1279。这个"不详"本身就是史实。 生卒年能否留下来,取决于身份进没进正统史传。这四个人都是算学家,不是以儒学立身的士大夫。
杨辉:把北宋的成果接住的人
杨辉是四个人里最像"老师"的一个,一生写了五种二十一卷算书,流传最广的是 1261 年的《详解九章算法》。
这本书今天只传下来一部分,而它最大的作用恰恰是"保存"。 杨辉以刘徽注、李淳风注释和北宋贾宪《黄帝九章算经细草》为底本,在书中记下了贾宪的"开方作法本源"图和"增乘开方法"。贾宪原书后来失传,今天能知道贾宪做过这些工作,靠的是杨辉这一笔引用。
所以课本上那个"杨辉三角",最早该叫贾宪三角。这又是本专题反复出现的题型:流传的名字和真实的作者不是同一个人。杨辉在书中注明此图出自贾宪的《释锁算书》,没有贪功。
他还发展了垛积术,接在沈括"隙积术"后面往下做。另一件事更有实感:他把 246 道《九章算术》的题目按解法重新分类写成"纂类",并为初学者订了"习算纲目"——那是中国数学教育史上的一份课程大纲。
秦九韶:一本从历法里长出来的书
《数书九章》十八卷,九类各九题,共 81 题,1247 年成书,被公认可与《九章算术》并列。
书里最著名的大衍求一术,起点不是数论,是历法。 秦九韶在序里说,历家推演历法常用这个方法求"上元积年",却被"误也"当成解方程。上元积年是古代历法假想的一个理想起点,要求它同时满足好几个同余条件,本质就是解一次同余方程组:
他的程序是先求各模数的乘积(衍母),再逐个求乘率 使 ,最后合成 。求乘率那一步,名字就叫大衍求一术。
这里有一处表述必须严谨。 常说"秦九韶比高斯早五百年得出中国剩余定理",这说法容易被讲错。1801 年高斯的《算术研究》确实系统处理了一次同余问题,方法与秦九韶一致;但高斯给出的是定理的一般性陈述与证明,秦九韶给出的是一套能上手算的构造性程序,面对的是历法上的具体算题。同类问题,两种完成度,不能算同一个定理的两种表述。 顺带说一句,"中国剩余定理"这个名字是西方数学史界后加的,中国自己的名字叫大衍求一术。
同一本书里还有正负开方术,用"随乘随加"求一元高次方程的正根。这套方法与 1819 年霍纳在英国提出的方法实质相当。 1852 年英国人伟烈亚力在上海用英文撰文介绍中国算学,明确指出秦九韶的开方术相当于霍纳法,称秦九韶是我们所知第一个完整发展出解复杂方程方法的人——此文后被译成法文、德文,在欧洲学界影响很大。
而这本书后来几乎湮没六百年,直到 1842 年才第一次刻印出版。
李冶:让未知数站到前台
李冶本名李治,金朝进士,金亡后北渡隐居,靠讲学为生,同元好问等人往来甚多,世称"元李"。
《测圆海镜》十二卷,170 问,1248 年写成,1282 年刊出。全书只做一件事:用一个统一方法把"勾股容圆"这类问题全部解掉。 这个方法就是天元术。
天元术的骨干用今天的话说就是三句话:立天元一为某某;把题目条件写成两个相等的多项式;两式相消,得到一个开方式,再解它。
第一句翻译成课堂语言就是"设 "。 难的是后面两步——在没有符号的多项式运算里,从条件推到方程,还要处理高次幂。李冶的贡献是把这套东西整理成可以教给别人的次序。在他之前,早期天元术著作用十九个单字表示未知数从 到 的各次幂(仙、明、霄、汉、垒、层、高、上、天、人、地、下、低、减、落、逝、泉、暗、鬼),李冶把它统一了。
《益古演段》三卷,1259 年完成,教材意图更明显:用几何图形("条段")去说明代数(天元术)怎么来的,让初学者有路可走。他担心的是当时算家"隐互错糅、惟恐学者得窥其仿佛"的习气——把方法藏着掖着。
据《元史》本传,李冶临终前对儿子说:我平生写的字都可以烧掉,只有《测圆海镜》这部"小术"是我精思力行之作,后世一定有人能懂它。他这句话说对了,但代价是四百年。
朱世杰:把四家的东西并成一条
朱世杰是四个人里唯一把前人成果合起来读的人。《四元玉鉴》三卷、二十四门、288 问,1303 年刻于扬州。
他把李冶的一元推广到二元、三元、四元,四个未知数叫天、地、人、物,常数项居中,四元分置四面,靠"互隐通分、剔而消之"一步步化多元为一元。全书 288 问里,用四元的有 7 问,三元 13 问,二元 36 问,一元 232 问。
数量要有交代:真正用到四元的只有 7 问。 这不是贬低——多元高次方程组的消元极难,做到这一步已经很不容易。西方要到 1779 年贝祖的工作才有系统的处理。
书里更值得一说的是:朱世杰把招差术推到四次差,还指出招差公式里的系数恰好依次是各三角垛的积。他把"高阶等差级数求和"和"高次内插"这两件事打通了。 这个四次内插公式比欧洲牛顿的同类成果早了将近四个世纪。用今天的话讲,若等距点上的各阶差分为 ,则
学过差分的同学会认得它——这就是牛顿前向差分插值公式。
停顿是怎么发生的
先看第一层:没有人再教,也没有人再考。
隋唐设算学,唐国子监下设算学馆,招三十人,学成可走"明算科"得官——官阶最低。这一科到晚唐就废了。宋元明清的科举,从分科取士归到只有进士一科,考的是经义文章。一条一旦不能换出身的路,愿意走的人就会骤减。
更实在的问题是天元术著作的青黄不接。蒋周《益古集》、李文一《照胆》、石信道《钤经》、刘汝谐《如积释锁》——这些早期天元术著作,在李冶写书时就已难见到,如今全部失传。《测圆海镜》卷七里那道题解法写得很省略:"立天元一为半城径,副置之,上加南行步……"没有符号,只有口诀式的步骤。这套东西一旦断代,比失传更快的是无人能读。
再看第二层:明末西学东渐时,中国学者面对的是一套完全不同的语言。
1607 年徐光启、利玛窦译出《几何原本》前六卷;同期的《同文算指》对古代《九章算术》多有辨订,唯独对立天元一法一字不提。 明代两位还算懂算的官员唐顺之、顾应祥,明说读不懂"立天元一,如积求之,漫不省为何语";焦循后来总结是"终明之世,此学遂微"。
这一层最值得讲清楚,因为它最容易被讲偏。明代学者接不上自己的传统,不是因为笨,是因为符号系统断了。 天元术是算筹上的位置表示法,靠算筹摆放和"上、下、层、低"这些方位词工作;明末算盘已经取代筹算,载体没了,方位词也失去了指代对象。这时传进来的欧洲代数用的是字母和符号,两种语言无法互译——不是观点的冲突,是连字典都没有。
清代学者花了很大力气才把这条线接回来:1772 年四库开馆,馆臣从《永乐大典》辑出《九章算术》《测圆海镜》《益古演段》《数书九章》,乾嘉学者钱大昕、李锐、宋景昌、沈钦裴、罗士琳、李善兰才开始校勘、演草、研究;而"借根方"这类西方代数方法的传入,反倒给了他们理解天元术的一把钥匙。
《四元玉鉴》的遭遇更极端:四库开馆时没找到它,1799 年阮元、李锐编《畴人传》时也还没见到;直到嘉庆初年阮元在浙江访得抄本,才呈入四库,交何元锡据以刊刻——这是 1303 年初版以来第一个重刻本。阮元访得此书的确切年份待考,但"书在,没有人知道它在哪儿"这个事实是确定的。
清代人对朱世杰的评价相当一致:罗士琳说他"兼包众有,尤超越乎秦、李之上",王鉴说他兼秦九韶、李冶之长。
课本今天怎么叫它们
杨辉三角就是二项式系数表。 课本讲二项式系数的性质,用的图就是杨辉三角:每行首尾为 1,中间每个数等于它肩上两个数之和,即 。这张图 13 世纪就有,杨辉注明它出自贾宪。
大衍求一术在数学史里叫"中国剩余定理"。 课本正文一般不教,但《孙子算经》"物不知数"那道题常被拿来做阅读材料。要分清:秦九韶的方法是同余方程组的通用解法,不是那一道题的特解——那一题东汉就有,秦九韶给的是对付任意题目的程序。
增乘开方与正负开方术,对应求高次方程数值根。 课本用二分法,课外会讲牛顿迭代。它们同源但路径不同: 秦九韶的"随乘随加"是纯代数的机械化程序,每一步都是确定的加减乘;牛顿迭代是几何式的,靠切线与导数逐步逼近。
垛积术是课本数列的一块跳板。 最漂亮的入口是平方和:
这个公式课本要求记住,它的来源就在沈括的隙积术、杨辉的垛积术这条线上。
讲给学生听时,讲什么
第一,讲清"杨辉三角"这个名字里有问题。 让学生自己看课本那张图,问一句:这张图真的是杨辉第一个画出来的吗?然后把杨辉在书里注明"出《释锁算书》,贾宪"这件事告诉他。这不是小题大做——这是训练学生查原始出处最省力的一次。
第二,讲"中国剩余定理"时把两件事分开。 先把《孙子算经》那道"三三数之剩二"写在黑板上,让学生用枚举法解;再告诉他们,秦九韶做的是不用枚举、任意题目都能解的程序。对比着讲,学生立刻明白"一个问题的巧解"和"一类问题的通用解法"差多远。
第三,讲"停顿"时只摆事实,不追加情绪。 科举不设算学科、天元术著作尽数失传、算筹被算盘取代、明末面对另一套符号——这四条已足够解释。任何一句"中国人以前很行后来不行了"都会把学生带偏。数学是语言的传统,语言断了就要重新学,这和民族气质没有关系。
第四,把"失传"讲成一件日常的事。 《四元玉鉴》1303 年刻成,近六百年没人知道它在哪儿;秦九韶 1247 年写完的书,1842 年才第一次印刷。让学生猜:一部书怎么会"在,但没人知道"?这个问题想通了,他们对自己笔记本里那些没整理的知识会有不同的感觉。
一句话总结
一百年里冲到的高度,和之后五百年的沉默,是同一条线的两端——高度靠人一代代接住,沉默只要中间断一次就够了。
附:本文涉及的史实出处
- 杨辉:《详解九章算法》十二卷,宋景定二年(1261)成书,今传本残缺;书中载贾宪"开方作法本源"图与"增乘开方法",杨辉注明出自贾宪《释锁算书》;五种算书共二十一卷;垛积术、纂类、习算纲目
- 秦九韶:《数书九章》十八卷九类八十一题,淳祐七年(1247)成书;大衍总数术与"中国剩余定理"的关系,及与高斯《算术研究》(1801)的表述差异;正负开方术同霍纳法(1819)的对应,见伟烈亚力 1852 年在 North-China Herald 的连载文章;生卒年 1202/1208 与 1261/1268 两说并存,学界未定
- 李冶(1192—1279):《测圆海镜》十二卷 170 问,1248 年成书、1282 年刊;《益古演段》三卷,1259 年完成;天元术次序与早期十九字记法,见《敬斋古今黈》卷三;临终语出《元史》本传
- 朱世杰:《四元玉鉴》三卷二十四门 288 问,大德七年(1303)扬州刊;四元 7 问、三元 13 问、二元 36 问、一元 232 问;四次招差公式与各三角垛的关系;《算学启蒙》1299 年刊;罗士琳、王鉴、阮元的评述与重刻经过;梅文鼎《赤水遗珍》释"或问歌彖"两则
- 停顿:唐国子监算学与明算科的设置及晚唐废止;元明清科举归进士一科;顾应祥、唐顺之读不懂"立天元一",见焦循《天元一释》;1772 年四库馆臣辑书与乾嘉学者校勘