出入相补原理
数学研究所 吴文俊
我国古代几何学不仅有悠久的历史,丰富的内容,重大的成就,而且有一个具有我国自己的独特风格的体系,和西方的欧几里得体系不同。这一几何体系的全貌还有待于发掘清理,本文仅就出入相补原理这一局部方面,就所知提出几点,主要根据是流传至今的以下各经典著作:
《周髀算经》(简称《周髀》),
《九章算术》(简称《九章》),
刘徽《九章算术注》(简称《刘注》),
《海岛算经》(简称《海岛》),
赵爽《日高图说》和《勾股圆方图说》(简称《日高说》和《勾股说》)。田亩丈量和天文观测是我国几何学的主要起源,这和外国没有什么不
同,二者导出面积问题和勾股测量问题。稍后的计算容器容积、土建工程又导出体积问题。
我国古代几何学的特色之一是,依据这些方面的经验成果,总结提高成一个简单明白、看起来似乎极不足道的一般原理——出入相补原理,并且把它应用到形形色色多种多样的不同问题上去。
以下将列举这些不同的应用。
简单应用和比例理论
所谓出入相补原理,用现代语言来说,就是指这样的明显事实:一个平面图形从一处移置他处,面积不变。又若把图形分割成若干块,那么各部分面积的和等于原来图形的面积,因而图形移置前后诸面积间的和、差有简单的相等关系。立体的情形也是这样。
应用这一原理,容易得出三角形面积等于高底相乘积的一半这一通常的公式,由此以定任意多角形的面积。作为另一简单实例,可以观察左图, 如果看作把△ACD 移置△ACB 处,又把Ⅰ、Ⅱ各移到Ⅰ′、Ⅱ′,那么依出入相补原理有:
Ⅲ=Ⅲ′,□PC=□RC,⋯⋯(指面积相等)
由此得
PO×OS=RO×OQ,PQ×QC=RB×BC,⋯⋯
而 PO=AR,OS=QC,PQ=AB,RB=OQ,⋯⋯
因而 AR∶OQ=RO∶QC,AB∶OQ=BC∶QC,⋯⋯
就是相似勾股形 ARO 和 OQC、ABC 和 OQC 的相应勾股成比例。并且可以导出其他相应部分的比例关系。
以上这些极简单的结果虽然没有在《九章》中明白说出,但是曾经多处用这些关系来解决各种具体问题,参看《刘注》。
测望术和重差理论
在《周髀》中,就有用两表测日影以求日高的方法,计算的公式是:
日高 = 表高×高距 + 表高。
影差
见右图,其中 A 是日,BI 是地平面,ED、GF 是先后两表,DH 和 FI 是日影。
《海岛》改测日高为测海岛的高,同图 AB 是海岛,H、I 是人目望岛顶和两表上端相参合的地方,于是日高公式成为:
岛高 = 表高×表距 + 表高。表目距的差
刘徽证明和所用的图都已经失传,但是据现存《日高说》和残图以及其他佐证,原证当大致如下:
由出入相补原理,得
□JG=□GB, |
(1) |
|
---|---|---|
□KE=□EB, |
(2) |
|
相减得 |
□JG-□KE=□GD, |
|
所以 |
(FI-DH)×AC=ED×DF, |
即 表目距的差×(岛高-表高)=表高×表距。这就得到上述公式。
按《海岛》共九题都属测望之类,所得公式分母上都有两测的差,“重差”这一名称可能由此而来。其余八题公式都可依出入相补原理用和上面类似的方法证明,现在从略。
元朱世杰《四元玉鉴》中有和《海岛》完全类似的几个题,朱世杰对这些题的解法应该有古代相传下来的一定来历。依据朱对海岛一题的解法,我们认为原证比上面所示的可能稍复杂一些。如下页的图,现在重作证明如下:
由出入相补原理,除(1)、(2)外又有
□PG=□GD,(3)
由(1)、(2)、(3)得
□JN=□EB=□KE,
所以 MI=DH,(4)
FM=FI-MI=FI-DH=表目距的差。由(3)式就得到海岛公式。
如果依照欧几里得几何体系的习惯证法,那就自然应该添一平行线 GM
′‖AH,如下图,再利用相似三角形和比例理论作证。清代李璜以及近代中外数学史家大都依这一方法补作海岛公式的证明,这当然不是刘徽的原意,也和我国古代几何的传统相违背。注意作平行线的时候应有 FM′=DH, 和前面(4)式相比,M 和 M′的位置完全不同。
明末耶稣会传教士利玛窦(1552-1610)来我国,他的主要学术工作之一是介绍欧几里得几何体系。他曾口授《测量法义》一书,其中载有和海岛题完全类似的一题。在他所作的证明中,需要在 FI 上取一点 M 使(4)式成立,再用比例理论作证,见本页上图。按常理来说,利玛窦应该作平行线而取 M′使 FM′=DH,但是他一反欧几里得惯例而和我国古代传统不谋而合,颇使人迷惑不解。现在提出这一问题,希望大家共同探讨。
勾股定理
在《周髀》和《九章》中,都已经明确给出了勾股定理的一般形式: 勾 2+股 2=弦 2。虽然原证不传,但是据《勾股说》以及《刘注》,都依出入相补原理证明,并且有遗留到现在可以用来作证的赵爽残图,这几方面互相参照,原证应该大致如下:
如右图所示,勾股形是 ABC,BCED 是勾方,EFGH 是股方,把二者的和DBCFGH 中的△IBD 移到△ABC,△GIH 移到△GAF,就得到 ABIG=弦 2,由此就得到勾股定理。
欧几里得《几何原本》中勾股定理的证明如下图所示,其中要先证有关三角形全等形以及三角形面积的一些定理,为此要作不少准备工作,因而在《几何原本》中直到卷一之末出现这一定理,而在整个《几何原本》中几乎没有用到。而在我国,勾股定理在《九章》中已经有多种多样的应用,成为两千来年数学发展的一个重要出发点,参阅以下各节和文末附表。
在东西方的古代几何体系中,勾股定理所占的地位是颇不相同的。勾、股、弦和它们的和差互求
勾、股、弦和它们之间的和差共九个数,只须知道其中的二个就可以求得其他几个。
除勾、股、弦互求就是开平方之外,《九章》勾股章中有不少这方面的问题:
第一,知股弦差、勾,求股、弦(五题); 第二,知勾股差、弦,求勾、股(一题);
第三,知股弦差、勾弦差,求勾、股、弦(一题); 第四,知股弦和、勾,求股、弦(一题)。
各题都列出了一般公式,《勾股说》的许多命题也属这一类,《刘注》还给出了证明,公式的来历和证明的方法都依据出入相补原理,有的也用比例原理作别证。
试以勾股章第十三折竹题为例。题设竹高已知,竹在某处折断,竹梢着地,着地处和竹根距离也已知。求折断处的高度,见右图。如果以竹梢着地处和竹根的距离作为勾,就是从股弦和、勾求股的问题,《九章》原文给出的公式是:
股弦差=勾 2/股弦和,
弦,股
1
= 2 (
股弦和士股弦差)。
《刘注》又给出了另一公式:
股 =
股弦和2 − 勾2
2×股弦和 。
为了证明前一公式,可以考虑左图,其中正方形 ABCD 和 AEFG 的边各是勾股形的弦和股。依勾股定理曲尺形 EBCDGF 的面积应该等于勾 2。现在把□FD 如图移到□CH,那么依出入相补原理,□BH 的面积是勾 2,而它的边长各是股弦和、股弦差,就得到上面的前一公式。
另一公式的刘徽证明也相类似。试考察右图,其中右下角曲尺部分的面积依勾股定理等于勾 2,所以粗黑线围成部分的面积等于股弦和 2-勾 2。把长方形Ⅰ移到Ⅱ,依出入相补原理,这一面积是斜线部分面积的两倍,
就是 2×股×股弦和,由此就得到另一公式。
秦九韶公式
秦九韶《数书九章》中有一题是已知不等边三角形田地三边的长(称大斜、中斜、小斜,以下简记为大、中、小),求田地面积。秦九韶的解法相当于下面的一般公式:
2 1 2 2
大2 + 小2 -中2 2
面积 = 4 [小 ×大 -( 2
) ]。。
秦的公式来历不明,证明也失传了。现在补作一证如下:
作大斜上的高分大斜成两部分,作为勾股形的股和弦,见左图。由于
1
《九章》已经给出三角形面积等于 2 ×高×大,所以问题归结为怎样求
高,或怎样求股。由于
股弦和=大,
勾 2=弦 2-股 2=中 2-婿, 所以问题归结为怎样从股弦和、勾求股。
依上节的刘徽公式,得
股弦和2 -勾2
股 = 2×股弦和
大2-(中2 -小2 )
= 2×大
2 2 2 2
大2 + 小2 -中2 2
高 = 小 - 股 = 小 -(
2×大 )
由此就得到秦的公式。
按秦公式的形式十分古怪,当是依某种思路自然引导到这一形式的。上面的证法颇为自然,也符合我国古代几何的传统特色,说它是原证,
也是不无可能的。
在西方有所谓海伦公式(a、b、c 是三角形三边的长): 三角形面积=
1 (a + b + c)(b + c − a)(c + a − b)(a + b − c), ,
4
这一公式形式十分漂亮。正因为这样,如果已知海伦公式而再来推出秦的公式,将是不可思议的。相反,从秦的公式化简成海伦的公式,却是比较自然的发展。
据此我们至少可以断言,秦的公式是独立于海伦公式而得来的。
关于海伦的生平,从公元前二世纪到公元后十世纪以后,数学史家聚讼纷纭。至于海伦留传到现在的著作,也已经人指出,历代都经过重新编纂,有所增改,已经不是本来面目。这是熟悉希腊数学史的应予澄清的事, 这里就不考虑了。
开平、立方
从勾、股求弦,先把勾、股平方后相加,再开平方就得弦。因而勾股
定理的应用自然导致开平方的问题。
事实上,《周髀》中已经给出了若干具体数目的平方根,而在《九章》中,更详细说明了开平方的具体方法步骤。这一方法的根据是几何的,就是出入相补原理。
试以求 55225 的平方根为例。这相当于已知正方形 ABCD 的面积是55225,求边 AB 的长,见下图。按我国记数用十进位位值制。因 AB 显然是一个百位数,所以求 AB 的方法就是依次求出百位数字、十位数字和个位数字。先估计(《九章》中用“议”字)百位数字是 2,因而在 AB 上截取 AE=200, 并且作正方形 AEFG,它的边 EF 的两倍称为“定法”。把 AEFG 从 ABCD 中除去,所余曲尺形 EBCDGF 的面积是 55225-2002=15225。其次估计十位数字是 3,在 EB 上截取 EH=30,并且补成正方形 AHIJ。从 AEFG 所增加的曲尺形 EHIJGF 可以分解成三部分:□FH,□FJ,□FI,面积依次是 30×EF, 30×FG,302,其中 EF= FG=200,所以从 ABCD 中除去 AHIJ,所余曲尺形HBCDJI 的面积是
15225-(2×30×200+302)=2325。
现在再估计个位数字是 5,在 HB 上截取 HK=5,并补作正方形 AKLM,从ABCD 中除去 AKLM 后所余曲尺形面积和前同法应该是
2325-(2×5×230+52)=0。
由此知 K 和 B 重合而 55225 的平方根恰好是 235。
求立方根的方法步骤和这相似,但是要把一立方体逐步进行分解,比平方根求法稍复杂,所依据的仍是出入相补原理,这在《九章》中也有详细叙述。
我国开平立方法来源很古,它的几何本质十分清晰,而且方法上可以看出我国独有而世界古代其他民族所无的位值制记数法的高度优越性。不仅这样,至迟到十一世纪中叶,我国就已经把开平立方法推广到开任何高次幂,就是所谓“增乘开方法”,并且出现了有关的二项式定理系数表, 就是所谓“开方作法本源图”。从这一方法的几何渊源看来,如果说当时我国数学家已经有高维方体和高维几何的稚影,似乎不是全无根据的。
解二次方程
在开平方的过程中,曾经出现像第 84 页下图中黑线部分那样的图形, 其中 2×EF 称定法。开平方在求得 AE 以后,其次几步在于从曲尺形 EBCDGF 的已知面积求得 EB。现在把□DF 移到□CH,那么依出入相补原理, □BH 面积已知,此外□BH 的两边 EH 和 EB 的差就是定法 2×EF,也有已知数值。因而求 EB 的问题可以转化为下面的问题:
- 已知一长方形(□BH)的面积、长阔差,求长阔。
反过来,这一问题的解法,可依开平方中第二步以下的方法求得,称为“开带从平方”。这在《九章》以来是用下面的语句来表达的:
- “以‘长方形面积’为实,‘长阔差’为从法,开方除之,得‘阔’”。以上“从法”一名,当来自开平方过程中的“定法”,“开方”一词
也说明了它的来历。
下面的例取自《九章》,见右图。图中 ABCD 是一方城,出北门北行若干步到 G 有木,出南门南行若干步到 F 再西行若干步到 H,恰可望见木 G,
问题是求方城每边的长。据《刘注》的方法是依出入相补原理得
□EJ=2□EG=2□KG=2×北步×西步。
□EJ 的长阔差是“南步+北步”,所以解法是以“2×北步×西步”为实, 以“南步+北步”为从法,开平方除之,得 EI,也就是方城边长。
不仅应用开平方法可得问题(A)的数值解,而且应用出入相补原理,还可以求得解答的精确表达式。如果以长方形的阔作为勾,长作为股,那么问题(A)相当于:
- 已知勾股积、勾股差,求勾、股。
以上“从法”一名,当来自开平方过程中的“定法”,“开方”一词也说明了它的来历。
下面的例取自《九章》,见右图。图中 ABCD 是一方城,出北门北行若干步到 G 有木,出南门南行若干步到 F 再西行若干步到 H,恰可望见木G,问题是求方城每边的长。据《刘注》的方法是依出入相补原理得
□EJ=2□EG=2□KG=2×北步×西步。
□EJ 的长阔差是“南步+北步”,所以解法是以“2×北步×西步”为实, 以“南步+北步”为从法,开平方除之,得 EI,也就是方城边长。
不仅应用开平方法可得问题(A)的数值解,而且应用出入相补原理, 还可以求得解答的精确表达式。如果以长方形的阔作为勾,长作为股,那么问题(A)相当于:
(C)已知勾股积、勾股差,求勾、股。
为此考赵爽残图如附图。图中大小两正方形的边长各是勾股和、勾股差,所以得
勾股和 2=4×勾股积+勾股差 2。
由此得勾股和,因而得勾和股。同样也可从勾股和、勾股积求得勾和股, 这一方法可以参阅《勾股说》的末一命题。
宋元时期明确引入了未知数的概念。如果以 x(当时称为天元一)表长方形阔,那么问题(A)相当于解一个二次方程
x2+ax=b,
其中 a 相当于从法,b 相当于实。所以在古代实质上已经给出了这一形式二次方程(a,b 都是正数)的近似解和精确解,前者在宋元时期发展为求任意高次方程的数值解法,后者虽文献散佚不可查考,但是据唐初王孝通的著作以及史书关于祖冲之的引述看来,不能排除我国曾经对三次方程用几何方法求得精确表达式的可能性。①。
在其他各国,公元九世纪的时候,阿拉伯数学家花刺子模(约 780- 约 850)的代数学名著中列举了各种类型二次方程的精确解法,它的方法是几何的,它的精神实质和出入相补原理颇相类似。公元十六世纪,意大利数学家关于三次方程的解法,也完全是几何的。
体积理论和刘徽原理
如果规定长方形的面积是长阔的积,那么依据出入相补原理,容易得到:
① 参阅钱宝琮:《中国数学史话》,中国青年出版社 1957 年版,第 62 页。
(1)
三角形面积 = 1 ×高×底,
2
由此可以完全奠定平面多角形的面积理论。但是在空间情形,如果规定长方体的体积是长、广、深的积,是否依据出入相补原理,可以推得
(2)
四面体体积 = 1 ×高×底面面积,
3
由此以建立多面体的体积理论,就不是那么明显而是极其困难的问题。欧洲直到十九世纪末,才把它作为一个难题明确地提了出来。公元 1900 年德国数学家希耳伯特(1862-1943)在国际数学会上所作著名讲演中,把体积理论列为二十三个问题之一。这一问题立即为德恩(1878-1952)所解决,答案是否定的:两个多面体要分割成彼此重合的若干多面体,必须满足某些条件,通称德恩条件。自此以后直到 1965 年,一位瑞士数学家西德勒才证明了德恩条件也是充分的。但是问题决不能认为已经彻底解决。从希耳伯特直到晚近,多面体体积理论仍不断成为一些知名数学家研讨的课题。德恩条件叙述复杂,也难认为是合宜的最后形式。
在这种情势下,看看中国古代对这一问题的处理方式是不无有启发性的。
《九章》以至《刘注》解决体积问题的出发点是把一般的多面体分解为一些基本的立体。先把一长方体斜剖为二,如下图(1),得两堑堵(堑堵是两底面是直角三角形的正柱体)。再把堑堵斜剖为二,如上图(2);一个是阳马(阳马是直角四棱锥体),如上图(3);一个是鳖臑(鳖臑是四面都是勾股形的四面体),如上图(4)。其中鳖臑的特征是 AB 和平面 BFG 垂直,FG 和平面 ABF 垂直。由于任一多面体可以分割为四面体,而任一四面体可以分割为六个鳖臑,如左图,所以问题归结为求鳖臑(以及阳马)的体积。依刘徽原话,就是所谓阳马、鳖臑,“功实之主也。”
其次的问题是怎样求得阳马和鳖臑的体积。如果长方体成为立方体, 那么分解所得的阳马的体积是鳖臑的两倍。刘徽作了长篇的分析,得出结论是:这个论断普遍成立。用刘的原话是:“阳马居二,鳖臑居一,不易之率也。”我们把它称作:
刘微原理斜解一长方体,所得阳马和鳖臑的体积的比恒是二比一。
从这一原理容易得到鳖臑和阳马的体积公式。由此又容易得到(2)式, 因而整个多面体的体积理论可奠基于刘徽以及出入 补这两个原理之上。
刘徽对他的原理有详细的分析说明,实际上就是这一原理的证明①。按希耳伯特和他的后继者的研究指出,体积理论和面积理论不同,出入相补原理之外,必须辅以连续一类公理。也有人(例如沙顿诺斯基,1903 年)提出排除连续公理,直接应用(2)式作为建立体积理论的基础。但是这样就要先证明(2)式中高和底面积的乘积凡四都彼此相等,这既不明显也不简单, 似不如刘徽原理和出入相补原理的显豁自然。
总之,多面体的体积理论到现在还余蕴未尽,估计中国古代几何中的思想和方法或许对进一步的探讨还不无帮助。
① 这是一种极限过程的证法,详细解释可参阅郭书春:《刘徽的体积理论》和 D.B.Wagner:
《AnEarlyChineseDerivationoftheVolumeofaPyramid:LiuHui,ThirdCenturyA.D.》,载《HistoriaMathematica》,
1979 年第六期,第 164-188 页。
羡除公式
《九章》中列举了各种多面体的体积,依据的就是出入相补原理和阳马、鳖臑公式。现在以羡除即隧道(羡除是三个侧面不是长方形而是梯形的楔形体,见右图)为例,图中 ABCD 是地面,成一梯形,CDEF 是隧道的一端, 成垂直平面中的梯形。整个隧道依剖面 IJK 对称。EG、FH 都和 CD 垂直是隧道的深,IJ 是隧道地面的长,CD、EF、AB 各称上广、下广、末广。《九章》给出的公式是:
羡除体积
1
= 6 (
上广+ 下广 + 末广)×深×长。
《刘注》的证法是先把羡除分解,如在上图中 CD>AB>EF 的情形,分解成一个堑堵 EFGHLM,两个小鳖臑 AGEL 和 BHFM,两个不正规大鳖臑 ACEG 和BDFH,再应用堑堵、鳖臑公式和上一节公式(2),就得到这一公式。这一方法在《九章》中用来求得例如刍甍(楔形体)、刍童、盘池、冥谷(是各种棱台)等多面体的体积公式。
如果依 IJK 剖面取羡除的一半,所得 IJKACE 如左图是一斜截直柱体,是把一个以勾股形为底面的直柱体斜截而成,它的体积是三高平均值和底面面积的积。因由任意曲面所围成的立体可以看作近似地由这样的斜截直柱体构成,所以据此可以得出函数 f(x,y)的积分近似公式,犹之微积分中求曲线下面积的辛普森积分近似公式。因而羡除公式具有重要意义。
在西方,斜截直柱体的体积公式最早见于 1794 年勒让德(1752-1833) 所著《几何原理》一书,因此也称为勒让德公式。按勒让德的书是从欧几里得《几何原本》以后最早可以代替《原本》的名著,它的有关公式的证明同样依据四面体体积公式,但是它的分解方法和《刘注》不同。
此外某些多面体西方也有不同的分解法和证法,不妨中外参照,加以比较。
球体积和祖暅原理
从《九章》到《刘注》,我国对多面体的体积已经建立了相当完整的理论体系。但是对于曲面围成的立体,特别是球的体积问题,却遇到了困难。
这一球体积问题,直到南北朝时期祖暅才完全解决,为此并且提出了所谓
祖暅原理 幂势既同,则积不容异。
这一原理在公元十七世纪由意大利数学家卡瓦列里(1598-1647)提出卡瓦列里原理重见于欧洲,成为微积分得以创立的关键性的一步。
祖暅关于球体积公式的证明见于《九章》的唐李淳风注,论证极其详细清晰。证明分三步:
第一,在一立方体中依两不同方向作两内切圆柱体,它的共同部分称
1“牟合方盖”。取立方体的 ,其中方盖部分称“内棋”,此外三部分称
8
“外棋”。依祖暅原理可得:
1 1
8 球体积∶ 8 方盖体积 = π∶4。
1
第二,从立方体的 8 割出一倒立的阳马,应用勾股定理证得三外棋等
高处截面积的和跟阳马同高处的截面积相等。
第三,再应用祖暅原理,知三外棋体积的和跟阳马体积相等。由阳马的体积公式,就可从上述三步得球体积公式。
按牟合方盖是刘徽所引入的,第一步的结果实质上也已经为刘徽所求得。事实上,在《刘注》中,他已经多次应用了祖暅原理来求曲面围成立体的体积,例如从方堡壔(长方体)求圆堡壔(圆柱),从方锥求圆锥,从方亭(正方台)求圆亭(圆台),都已经使用这方法。祖暅的功绩,不仅在于具体求出了牟合方盖因而求出球的体积,更在于把实际上已知并且已经广泛应用的实践经验总结提高到一般原理的形式。是否应该把祖暅原理改称为刘祖原理,是可以商讨的。
从祖暅原理可以立即得出前面讲到的刘徽原理,因而多面体的体积理论也可以建立在出入相补原理和祖暅原理这两个浅显易明的基本原理之上。在欧洲,直到希耳伯特的《几何基础》问世以后,二十世纪初年,才有人(例如绪思)考虑依卡瓦列里原理以建立体积理论的问题。
其 他
《九章》中有丰富的几何学内容,即使局限于出入相补原理,除了已经见于前面各节的以外,也还有一些成果为我国数学以后发展的重要出发点。例如所谓勾股容圆问题,在李冶的《测圆海镜》中已经有了很大的发展。又如前面提到过的所谓方城问题,在秦九韶、李冶等的著作中已经把方城改成了圆城,就是旧有方法所不能解的。为此宋元时期创立了所谓天元术一类新的理论和方法,不仅可以用来解决许多新问题,对老的问题(所谓古问)也提供了新的有力工具,和老的方法(所谓古法)相比可以“省功数倍”。这些新理论新方法的实质在于几何的代数化,乃是解析几何的前奏, 也是近代代数学的前驱。
总 结
出入相补、刘徽、祖暅等一般原理的建立,说明我国古代学者具有高度的抽象概括能力,善于在深入广泛的实践基础上往高里提。这些原理之简单易明正可和它们应用之广互相辉映。这是我国古代数学的一种独特风格,着重在问题的解决以及解决的一般方法和一般原理原则,同样的风格也可见之于几何的代数化、位值制记数法等等。这和西方数学之偏重于概念和概念之间的相互逻辑关系,是异其旨趣的。
我国数学经典著作散佚的多而保存的少,就像祖暅原理,也只靠李淳风一注才得以留传下来。像这一类重要成果而失传无从查考的,当不在少数。尽管如此,只从留传至今的典籍看来,我国数学的生产实践方面的渊源和发展演变的线索,仍旧很分明,参见下页两个附表。
表 一