Li Shanlan · 1811–1882

李善兰

没读过微积分,先用一套「尖锥」把圆周率与对数的级数推了出来;后来又亲手把微积分译成中文,「函数」「微分」「积分」这几个词一般认为都出自他的笔下

尖锥积=高×底n+1\text{尖锥积} = \frac{\text{高}\times\text{底}}{n+1}
《方圆阐幽》的「诸尖锥之算法」:以高乘底为实,本乘方数加一为法,除之得尖锥积。n 乘尖锥就是 x 的 n 次方那条曲线下的面积——他拿它一层层拼出了方圆之较与对数

李善兰,字壬叔,号秋纫,浙江海宁人,生于 1811 年。据他 1867 年给自己的算书写的序,小时候在家塾的书架上翻到一部《九章》,「窃取阅之,以为可不学而能,从此遂好算」;后来去杭州应考,带回来的是李冶的《测圆海镜》与戴震的《句股割圜记》。科举只考到诸生为止,算学却一路往深处走:《清史稿》本传说他「疑割圜法非自然,精思得其理」——清人从传教士那里得来的几条三角函数的无穷级数,他要知道它们是从哪里来的。1840 年代他写成《方圆阐幽》《弧矢启秘》《对数探源》,用一套自己起名的「尖锥」求面积,把圆周率、三角函数与对数的级数一一推了出来(本页前三件)。这时微积分还没有一个字译成中文。

1852 年他到上海,进了英国伦敦会的墨海书馆,与传教士伟烈亚力、艾约瑟、韦廉臣合作译书:一人口述、他来笔述。八年里译出《几何原本》后九卷(1857,本页第六件)、德摩根的《代数学》与罗密士的《代微积拾级》(都在 1859,第五件),还有赫歇尔的天文学《谈天》、惠威尔的力学《重学》与一部《植物学》。1860 年太平军打到苏州,他随身的书稿「遭乱尽失」,后来靠朋友的传抄一部部收回;1867 年在金陵把十三种算书刻成《则古昔斋算学》。1868 年经郭嵩焘推荐,进北京的京师同文馆任算学总教习,在那里教了十几年书,1882 年卒于北京(《清史稿》本传作光绪十年,即 1884 年,与通行说法不同)。1869 年他拿一条判别素数的规则去问伟烈亚力,被登在香港的一份英文杂志上,引出一场笔墨官司(第四件)。

李善兰肖像
约翰·汤姆逊摄,约 1871–1872 年,北京 · 原题「李善兰与他的学生们」,是一幅十几人的合影,这里只取坐在正中的他与身后几个学生 · 收在汤姆逊《中国与中国人影像》第 4 卷(1874)第 37 图,图说称他为「北京同文馆的数学教授,年约六十」 · 耶鲁大学拜内克图书馆藏 · Wikimedia Commons,公有领域

生平

  1. 1811
    生于浙江海宁

    字壬叔,号秋纫。

  2. 约1825
    读旧译《几何原本》前六卷

    续译序里说「年十五时,读旧译六卷,通其义」,恨徐光启、利玛窦没有译完。

  3. 1840年代
    《方圆阐幽》《弧矢启秘》《对数探源》

    用尖锥求面积,推出圆周率、三角函数与对数的级数。见本页前三件。

  4. 1852
    到上海墨海书馆

    六月初一起与伟烈亚力续译《几何原本》,「日译一题」。

  5. 1857
    《几何原本》十五卷全本刊行

    韩应陛出资,顾观光、张文虎校勘。见本页第六件。

  6. 1859
    《代微积拾级》《代数学》《谈天》

    都与伟烈亚力合译。见本页第五件。

  7. 1860
    书稿在苏州遭乱尽失

    后来靠朋友传抄的副本陆续收回。

  8. 1867
    《则古昔斋算学》十三种刻成

    金陵。自序里说「其精到处自谓不让西人」。

  9. 1868
    京师同文馆算学总教习

    经郭嵩焘推荐。

  10. 1869
    「中国定理」

    伟烈亚力把他的判素数规则登在香港的《中日札记与问答》5 月号上,年内有两人来信批评。见本页第四件。

  11. 约1871
    汤姆逊在同文馆为他与学生拍照

    本页肖像位上的那一张。

  12. 1872
    《考数根法》

    登在北京的《中西闻见录》上,讲四种判别素数的办法(原文这一轮没有取到)。

  13. 1882
    卒于北京

    《清史稿》本传作光绪十年(1884)。

展品厅

绝大多数展品都可以亲手把玩——这是本馆的立馆之本;少数以叙述为主的,做成故事展签。

尖锥:把乘方叠成一块面积

一条线从丝发那么细渐渐长大、一层层叠起来,叠出一个尖锥;x 的 n 次方叠出来的那一个,面积恰是高乘底再除以 n 加一。

∫01xn dx=1n+1\int_0^1 x^n\,dx = \frac{1}{n+1}

《方圆阐幽》全书是十条「当知」,一条一条往上搭。先说点、线、面都有体,只是薄而微;再说乘方有线、面、体循环的道理;然后是这一句:「元数起于丝发而渐增之而叠之,则成平尖锥」——一个数从零慢慢长到底,每一刻的长度都叠上去,叠出一个三角形;平方数这样叠,成立尖锥;立方数这样叠,成三乘尖锥;「诸乘方皆有尖锥」。第八条给算法:「以高乘底为实,本乘方数加一为法,除之得尖锥积」,举的例是立尖锥高九尺、底方三尺,底面九尺,以高乘底得八十一尺,乘数加一得三,除之得二十七尺;也就是 x 的 n 次方那条曲线下、从 0 到 1 的面积是 1/(n+1)。今天看这是 ∫xⁿdx,欧洲在十七世纪三四十年代由卡瓦列里、费马、沃利斯先后求出;李善兰写这部书时(1840 年代),中文里还没有一本微积分,他是自己把「叠丝发」这件事想透的。演示把曲线下切成 N 条细条,每条取左端的长或右端的长各叠一次,两种叠法恰差 1/N,把他那个 1/(n+1) 夹在中间;条越细,夹得越紧。第九、第十条再说:尖锥的面可以变成线,线又可以并起来——这一手,下一件拿来拼出了圆。

三乘尖锥的积是 0.250000;切成 12 条时,两种叠法给出 0.210069 与 0.293403,差恰为 1/12。

镇馆之宝 · 亲手玩

方圆之较,拆成无穷多个尖锥

正方形里放一个四分之一圆,圆外、方内的那一角,他拆成再乘、四乘、六乘……一层层的尖锥;每层的底由上一层剩下的按一条简单的规则分出来,积一加,圆周率就出来了。

π4=1−(12⋅13+18⋅15+116⋅17+5128⋅19+⋯ )\frac{\pi}{4} = 1 - \left(\frac{1}{2}\cdot\frac{1}{3} + \frac{1}{8}\cdot\frac{1}{5} + \frac{1}{16}\cdot\frac{1}{7} + \frac{5}{128}\cdot\frac{1}{9} + \cdots\right)

这是全书的落点:「方内函圆,方圆之较即诸乘方之合尖锥也:起再乘,次四乘,次六、次八、次十,至于无穷,其数有偶而无奇。」(再乘尖锥即立尖锥,x 的平方那一层。)底怎么分,他也说了:「再乘尖锥之底,二分半径之一也;以其余四分之为四乘尖锥之底,又以其余六分之为六乘尖锥之底……」——第一层的底取半径的一半,剩下一半;剩下的四分之一给第二层,再剩下的六分之一给第三层,如此不停。照做出来是 1/2、1/8、1/16、5/128、7/256……,正是 1 − √(1 − x²) 的幂级数系数;每层的积按上一件的算法是底除以乘数加一:1/6、1/40、1/112……「既得诸积,四因之以减外大方积,便见大圆真积也。」于是 π = 4 − 4 × (1/6 + 1/40 + 1/112 + …)。同一条级数,牛顿在 1660 年代由二项式展开得到过;清代数学家从法国传教士杜德美那里只得到几条结果,明安图用了几十年去补它们的来历。李善兰这一路不用二项式,只用「叠」与「分」。书后附了他弟弟李心梅的按语:「伯兄此书言理而不及数」,于是拿一组数去验。演示照他的规则一层层铺:铺四层得 3.180258,十层 3.152564,三十层 3.143820——收得很慢,右端总剩一截底没铺到,层数翻四倍它才缩一半。这正说明书名那个「阐幽」:他要的是理,不是位数。

拨层数,看方圆之较被尖锥一层层铺满,π 的读数跟着往下落

铺 4 层:积之和 0.204936,得 π ≈ 3.180258,比真值大 0.038665;右端还剩 0.2734 的底没铺到——层数翻四倍,这一截才缩一半。

对数:除了加,加了除

二十层尖锥的积排成一张表,从最下一层起「以二除之,加入上一层」,做到最上一层,出来的就是 ln 2 的前七位——整件事只用加法与除法。

ln⁡mm−1=1m+12m2+13m3+⋯\ln\frac{m}{m-1} = \frac{1}{m} + \frac{1}{2m^2} + \frac{1}{3m^3} + \cdots

《对数探源》开头一段说得很直:真数以乘除为比例,对数以加减为比例;有了对数去求真数,谁都知道怎么做,「有正数欲求其逐一相对之对数,则虽欧罗巴造表之人仅能得其数,未能知其理也」。他的理是这样的:把长方、平尖锥、立尖锥、三乘尖锥……一层层并成一个「尖锥合积」,这个合积在全高的几分之几处横截一刀,截下那一段的积只与这个比例有关——比例相乘,积就相加,所以它就是对数。卷二「详法」给出算法:借一万万为长方积,二除得平尖锥积五千万,三除得立尖锥积,一直除到二十,列成二十层的「尖锥汎积表」;要求截在一半处的那一段,就从最下一层起,以二除之、加入上一层、又以二除之……加到长方积再除一次。这正是 1/2 + 1/(2·4) + 1/(3·8) + … 的嵌套写法,求的是 ln 2。原书这一段的数照刻本读出来(前两步 7763157、3881578,末数 69314713),与演示逐步取整重算逐位相同,真值是 69314718.06。换成以五除之,得 ln(5/4);三个 ln 2 加一个 ln(5/4) 就是 ln 10,再一除便是常用对数,lg 2 = 0.30102999。这条级数在欧洲是尼古拉斯·墨卡托 1668 年的;与他同时,杭州的戴煦也在用级数造对数表,据《清史稿》两人相友善。他自称用这个办法造表「较西人简易万倍」。

以二除之:二十层做完得 69314713;ln 2 × 10⁸ 的真值是 69314718.056,差 5.056。原书这一段的前两步与末数(照刻本的 OCR 读出),与这里逐位相同。

2 的 n 次方减 2:一条规则与两封回信

1869 年他拿一条判别素数的规则去问伟烈亚力:2 的 n 次方减 2,被 n 除尽就是素数。规则是错的,可当年驳他的那张表也错了——第一个真反例是 341。

p 是素数⇒p∣2p−2,341∣2341−2,  341=11×31p\ \text{是素数} \Rightarrow p \mid 2^p - 2, \qquad 341 \mid 2^{341} - 2,\ \ 341 = 11 \times 31

《中日札记与问答》是在香港出的一份英文月刊。1869 年 5 月号第 73 页,伟烈亚力 5 月 10 日寄来一则短札,题为「一条中国定理」:几天前李善兰在他的笔记本上写下一条规则——「以 2 的对数乘所设数,求其真数,减 2,以所设数除之;除尽者是数根,除不尽者不是」。伟烈亚力说这是他独立的发现,问欧洲书里有没有类似的。9 月 3 日,当时在北京的德国人冯·贡帕赫来信,说这不过是「从几个小的数试出来的」,还算了一张表:x 从 2 到 61,底数 2、3、4 各是多少余数;11 月 25 日,厦门的麦格雷戈又来信,引那张表说「以 2 为底时 x = 49 就是一个例外」。把那张表逐格重算:180 格里 16 格不对,49 那一行印的 0,重算是 28——49 根本不是例外,麦格雷戈举的反例是一格印错的数。规则的一半是对的:n 是素数时 2 的 n 次方减 2 一定被 n 除尽,这就是费马小定理,1640 年就有了;错在反过来那一半,第一个骗过它的合数是 341 = 11 × 31,通常认为 1819 年萨吕已经指出过。演示把 1 到 400 全部过一遍:78 个素数它全判对,合数里只有 341 骗过了它。三年后他在《中西闻见录》上发表《考数根法》,讲四种判别素数的办法,据后人介绍,其中第一种「屡乘求一」就是费马小定理本身。

x = 341:2 的 x 次方减 2,除以 x 余 0;规则说「是素数」,实际是合数(11 × 31)——规则在这里错了。

天地作变数,彳禾作微分积分

1859 年他与伟烈亚力译出《代微积拾级》,中文里第一次有了整套的微积分:x、y 写作天、地,加减号写作丄、丅,d 与 ∫ 写作彳与禾,分数的分母写在上面。

禾 甲天2 彳天=甲天33  ⟷  ∫ax2 dx=ax33\text{禾}\,\text{甲天}^{2}\,\text{彳天} = \frac{\text{甲天}^{3}}{3} \;\longleftrightarrow\; \int a x^{2}\,dx = \frac{a x^{3}}{3}

原书是美国人罗密士 1851 年的教科书,解析几何、微分、积分合为一册;伟烈亚力口译,李善兰笔述,十八卷。译名与记号都得从头定。凡例一条条交代:「丄者,正也,加也;丅者,负也,减也」「或作—,法居上,实居下」——分母在上、分子在下,与今天正相反;「彳者,微分也……禾者,积分也」,取的是微、积二字的偏旁。卷十开头定下变数与常数:「变数以天地人物等字代之,常数以甲乙子丑等字代之」——天地人物正是朱世杰四元术里四个未知数的名字,他把宋元的老家当搬来盛新东西。同一处给出一个今天人人都用的词:「凡此变数中函彼变数,则此为彼之函数。」「函」是包含,这个变数里含着那个变数。演示把书里的五个式子照刻本的样子排出来,旁边是今天的写法:直线 地=甲天丄乙;平圆 天²丄地²=味²;卷十那条幂的微系数,分式倒着写;卷十七的一道设题,令甲=九、天=一〇,积出来得三〇〇〇。他在序里写:「呜呼!算术至此观止矣,蔑以加矣。」记号后来换成了西文字母,而「函数」「微分」「积分」这几个译名,与《代数学》里的「代数」一样,一般认为都出自他们两人之手,一直用到今天。

微系数:今天写作 du/dx = n·xⁿ⁻¹;法居上、实居下:分母写在上面。

《几何原本》后九卷:十五岁时的心愿

十五岁读到徐光启、利玛窦译的前六卷,恨他们没有译完;1852 年到了上海,他自己把后九卷译了出来。

1607 年徐光启与利玛窦译出《几何原本》前六卷,此后二百多年,中文里只有这半部。李善兰在 1857 年刊本的序里回忆:「忆善兰年十五时,读旧译六卷,通其义,窃思后九卷必更深微,欲见不可得,辄恨徐、利二公之不尽译全书也,又妄冀好事者或航海译归,庶几异日得见之。」1852 年他到上海,与伟烈亚力约定续完这件事,「以六月朔为始,日译一题,中间因应试、避兵诸役,屡作屡辍,凡四历寒暑,始卒业」。伟烈亚力手里那一部英译本「校勘未精,语讹字误」,第十卷讲不可公度的十三种线,最是难读;伟烈亚力在序里写「余口之,君笔之,删芜正讹,反复详审……则李君之力居多」,并说过一句后来常被引的话:「异日西土欲求是书善本,当反访诸中国矣。」刊本由韩应陛出资,顾观光、张文虎校勘。序的末尾他写:「不意昔所冀者,今自为之,其欣喜当何如耶!」十几年后摄影师汤姆逊在北京为他与同文馆的学生拍了本页肖像位上那张合影,图说里却写:若不是各新教差会里那些英国人的宝贵帮助,「中国就夸不出李善兰这样一位数学家」——而伟烈亚力自己在序里说的,正好是反过来的那句。

故事展签

传承

他的工作没有留在十八世纪——每条链的终点,都是你今天正在使用的东西。

尖锥:x 的 n 次方下的面积是高乘底再除以 n + 1→积分就是把细条叠起来:切得越细,夹得越紧→物理引擎与有限元程序里一步一步做的数值积分
对数探源:从最下一层起,除了加、加了除→多项式按嵌套的次序逐层求值,n 次只要 n 次乘法→数学库与芯片里 log、exp 的多项式求值
1869:2 的 n 次方减 2 被 n 除尽,就判为素数→反例 341 之后,费马测试又加上米勒–拉宾那几道关→生成 RSA 密钥时,先做的那一道素性检验
《代微积拾级》:函数、微分、积分,天地作变数→同文馆与后来的新式学堂一路沿用这些译名→今天中文的数学课本与工程教材里的每一个「函数」
1859 年与伟烈亚力合译赫歇尔的《谈天》→开普勒的椭圆轨道与哥白尼的日心说头一回有了完整的中文本→今天中文里讲天文、讲轨道的那一整套词

语录

「不意昔所冀者,今自为之,其欣喜当何如耶!」

—— 《几何原本》续译序,咸丰七年(1857)正月;说十五岁时盼着有人译出后九卷,四十多岁时自己译完

「呜呼!算术至此观止矣,蔑以加矣。」

—— 《代微积拾级》序,咸丰九年(1859);说微分、积分二术

「其精到处自谓不让西人。」

—— 《则古昔斋算学》自序,同治六年(1867)