第一章 多项式方程根式解问题
第一节 河谷文明与多项式方程
在本章中,我们将介绍多项式方程[即一元 次方程(以下简称 次方程),有时也称代数方程]求解(根)公式的探寻历程,这种公式要求通过对方程的系数进行有限次四则运算与开方运算,最终给出方程的解。由于方程的求解公式离不开根式,所以人们也把多项式方程的求解公式问题称为根式解问题。人类对此的最早尝试可追溯到遥远的古代文明。
历史学家往往把兴起于古埃及、美索不达米亚、中国和印度等地域的古代文明称为“河谷文明”,而早期数学就是在尼罗河、底格里斯河与幼发拉底河、黄河与长江、印度河与恒河等河谷地带首先发展起来的。从可考证的史料看,古埃及与美索不达米亚的数学在年代上更为久远,只是在公元前均告衰微,崛起稍晚的中国与印度的数学则延续到公元纪元之后并在中世纪臻于高潮。
在本节中,我们将简单介绍古埃及与美索不达米亚这两个河谷文明在求解多项式方程方面取得的成就,中国和印度在这方面的贡献将放在第二节中做介绍。
古埃及人的成就
人们对古埃及数学知识水平的了解主要来自幸存至今的两部纸草书。一部叫《莱茵德纸草书》,因 1858 年为苏格兰收藏家莱茵德收藏而得名。它是在公元前 1650 年左右由一位名叫阿姆士(Ahmose)的僧侣抄录的,书的开头写道:“准确的计算。阐明一切现有事物和模糊秘密的指南。”后世也以《阿姆士纸草书》作为书名。根据书的前言还知道,阿姆士并非书的原著者,他抄录的其实是一部已经流传了两个多世纪的更古老的著作。
另一部称为《莫斯科纸草书》,它在 1893 年为一位俄罗斯收藏者获得,1912 年转为莫斯科博物馆所有,并因之得名。据研究,它出自约公元前 1890 年一位佚名作者之手。
这两部纸草书是古埃及最重要的传世数学文献。它们都是各种类型的数学问题集。《莱茵德纸草书》主体部分由 84 个问题组成,《莫斯科纸草书》则包括了 25 个问题。在这些问题中,有些可以归为今天所说的代数方程的范畴。我们剖析其中一个简单例子来看一下。
上图是《莱茵德纸草书》第 24 题的僧侣文原文,第一个字如下图所示:
读音类似“阿哈”(aha)或“呵”(hau),意思是“一堆”,相当于方程中的未知数。整个题目可意译为:已知“堆”与七分之一“堆”相加为 19,求“堆”的值。
古埃及人对此问题的解法比较有趣。他们先把 7 作为未知数的实验值,代入得数 8,但应得结果是 19,这两个结果之比是 ,于是将 7 乘以 即得出正确的答案。
《莱茵德纸草书》第 26 个问题也使用了这种技巧。这个问题可意译为:求一未知数,它与自身的 相加的结果为 15。纸草书中的解法如下:假设答数为 4,那么 4 加 4 的 为 5……找一个乘以 5 能得到 15 的数,答案是 3,再用 4 乘以 3,答案是 12。
这种解法被称为“假位法”,实质上是一种算术方法:先假设一个特殊的数作为“堆”值,将其代入等号左边去运算,然后比较得数与应得结果,再通过比例方法确定未知数的真值。这种假位法是《莱茵德纸草书》中普遍使用的方法,因其过程采用了一次假设,故这种解法也叫“单假设法”。
对此,著名数学史家史密斯曾评述说:“世界曾经为形如 的方程所困惑过,这似乎是不可思议的,但是古代数学家为解这种方程,确实曾求助于一种比较烦琐的方法,这种方法后来在欧洲称为‘假位法’。”
不过,古埃及纸草书中也记载了用我们现代的方法来求解一次方程。例如,《莫斯科纸草书》中有一个例子是:求一个数,它的 倍加上 4 等于 10。用现代的记号表示即 ,其解法是:首先 10 减去 4,然后将 6 乘以 ,得解为 4。
在纸草书中,古埃及人还求解了形如 或 的一次方程。除了含有一个未知数的一次方程问题外,古埃及人还研究并处理了简单的二次方程。如在别的纸草书中有一个问题:把一个面积为 100 的正方形分为两个小正方形,使其中一个的边长是另一个的 。这个问题用现代的记号表示为:
我们看到,从这一问题可引出一个二次方程。有意思的是,古埃及人对此的处理也是使用假位法。其解题思路是:先假设 ,则 ,右端是边长为 的正方形面积,而题目中大正方形的边长是 10,两者的比是 ,因此将原假设的边长扩大 8 倍,得 ,而 ,此即为原问题的正确答案。
可以看到,古埃及人解决了相当于 类型的最简单的二次方程。
古巴比伦人的成就
美索不达米亚文明(其典型代表是古巴比伦文明)大约在公元前 3500 年出现于底格里斯河和幼发拉底河流域。人们对其的了解来自保存至今的约 50 万块泥板。
古巴比伦人曾用尖芦管在湿泥板上刻写楔形文字,然后将泥板晒干或烘干。后来,人们挖掘出大量这种不易毁的泥板。这些被保存下来的泥板中有 300 多块属于数学文献。它们主要分属两个相隔遥远的时期。一大批是公元前 2000 年头几个世纪的遗物,还有许多则来自公元前 1000 年后半期。通过研究这些泥板文书,人们发现古巴比伦人在多项式方程求解方面表现出高度的技巧,取得了十分可观的成就。
对于一次方程,古巴比伦人或许觉得简单,没有过多探讨。在留下的资料中很少有这类方程,并且没有提供求解算法。如一块泥板上有这样的问题:一块石头,加上它的 ,得到一个重量,在这个重量之上再加它的 ,得到 1 马那(mana,重量单位),问这块石头有多重?这个问题相当于方程 ,可解得 马那。答案是正确的,但没有解题的过程。
我们已看到古埃及人主要讨论的是一次方程,对于二次方程则仅涉及最简单的情形 。与之不同,古巴比伦人的突出成就恰恰表现在求解二次方程方面,这也是他们的一个主要研究领域。事实上,许多古巴比伦泥板上列有大量的二次方程。例如一块泥板文书中有这样的问题:已知 igibum(依几布姆)比 igum(依古姆)大 7,问 igibum 和 igum 各为多少?
这里的 igibum 和 igum 是古巴比伦数学文献中表示互为倒数(即乘积为 1)的两个数的专有术语。值得注意的是,古巴比伦人在这里相当于用记号表示了未知量。另外需要说明的是,古巴比伦人使用 60 进制,igibum 与 igum 乘积为 1,1 指一个大单位,相当于 60 个小单位,而问题中的 7 则是小单位。于是若以 表示 igibum, 表示 igum,则上述问题相当于求解方程组:
如我们所熟知的,这可转化为求解一个二次方程 ,古巴比伦人给出算法: 。这相当于对二次方程 使用了求根公式 ,这与我们更熟悉的 显然是等价的。
古巴比伦人也给出了另一类似问题——求一个数,使它和它的倒数之和等于一个给定的数——的正确解法。
进而,古巴比伦人还研究并解决了更具一般性的一种标准形式:已知两数的和与积,求这两个数。对要求的两个未知量,他们使用的单词是长(us)、宽(sag),对两者的积使用的单词是面积(asa)。所要解决的问题与问题的陈述都使人想到,古巴比伦人想处理的是矩形的面积、周长与边长之间的关系。事实上,他们研究的这种标准形式相当于:已知矩形的周长与面积,确定矩形的长与宽。这一问题的求解在古代既重要又迫切,因为当时人们普遍有一种错误认识:矩形的面积完全取决于它的周长。许多懂得多的人就利用这一点欺骗他人,在占便宜的同时还赢得了慷慨的名声——他们自己拿到周长较小面积较大的土地,给别人周长较大面积较小的土地。
不过,随着时间的推移,这一问题逐渐失去几何意义,“长”“宽”这些几何术语也慢慢成为表示未知量的标准符号,并演变成抽象的代数符号,相当于我们熟悉的 和 。因此,古巴比伦人研究的这种标准形式用现代的代数语言来叙述,那就是:已知 ,求 。
古巴比伦人用下述五个步骤求这两个数:
(1) 取 的一半;
(2) 将此数平方;
(3) 从中再减去 ;
(4) 对所得结果开平方;
(5) 再加 的一半得出所求两数中的一数,从 中减去这个数得出另一个数。
容易明白,他们所解的方程组可转化为二次方程: 。而他们的五步解法,用现代代数语言来写就是: 。这与我们更熟悉的形式 和 自然是等价的。
除求解由方程组获得的二次方程外,古巴比伦人也求解单个的二次方程。如有这样一个问题:一正方形的面积与它的一条边的 之和为 ,求其边长。
用现代的术语来说,就是要解方程 。古巴比伦人求解的步骤与方法是:取 的一半,得 ,取 的平方,得 ,然后将这个结果与 相加,得 ,这个值是 的平方。从 减去 得 ,这就是所需要的边长。这一算法可以翻译成现代求解方程 的公式,即 。可以看出,这是二次方程求根公式的一种解形式。
还有一个问题如下:如果某正方形的面积减去某边长得 870,问边长是多少?用现代的代数语言表示,即解方程 。泥板给出的解法是:取 1 的一半,得 ;以 乘以 ,得 ;把 加在 870 上,得 ,它是 的平方, 再加上 ,结果是 30。这一算法可以很容易地翻译成现代求解方程 的公式,即 。可以看出,这也是二次方程求根公式的一种解形式。
此外,古巴比伦人还研究并给出了形如 的方程的正确解法。
可以看到,古巴比伦人把不缺项二次方程分成了不同的形式并分别求解,现代读者可能会对此深感困惑。古巴比伦人为什么不像我们现在所做的这样把二次方程统一处理,而非要自找麻烦呢?原因在于,古代没有负数的概念。因此,未知数的系数、常数及方程的解都必须是正数。这样,要研究的不缺项二次方程就被分成三种基本类型: 、、(其中 、 均为正数),而且要对不同的类型分别求解。通过后面的介绍,我们会明白这种分类处理方程的方式在数学发展上延续了相当长的时期。
所有这三类方程在古巴比伦泥板文书中都可以找到,并都给出了正确的解算程序。而古巴比伦人也清楚如何把给定的二次方程转化成上面三类方程之一。可以说,古巴比伦人已经圆满地解决了二次方程的求解问题,这在古代特别是几千年以前是相当非凡的成就。不过,需要指明的是,古巴比伦人并没有真正地使用类似如今多项式方程的概念,其解法也都是通过文字来叙述求解步骤。事实上,他们所谓的算法是由一个个简练的短语或句子组成的,没有“等号”或其他简洁符号。自然,因为没有符号表示法,所以也不可能给出我们现在所使用的一般二次方程的求根公式,他们所能做的只是给出具体例题,并通过这些具体例题的求解来说明一般解法。也正是由于没有符号表示法,他们在解题时才会遇到那么多困难。这样的困难是代数语言系统发展起来以前人们不得不面对的。
此外,古巴比伦人虽给出了求解的正确步骤,却没有说明每一步做法的理由。后人对此做出一些推测,比如“已知 ,求 ”,古巴比伦人的思路可能如下:若取 和 ,则满足 ,但不一定满足 。因此,这解应有误差,假设误差是 ,则可设真正的解 和 。于是 。由此可以得到 。进而,可得出 。
除了有效地解决一般的不缺项二次方程外,古巴比伦人还处理了古埃及人未探讨的三次方程。像最简单的 ,主要通过查立方表或立方根表来求解。事实上,为了使计算简洁,古巴比伦人编制了大量的数学用表。在现有的 300 多块数学泥板文书中,就有 200 多块是数学用表,包括乘法表、倒数表、平方表、立方表、平方根表、立方根表,甚至还有指数表、对数表。对形如 的混合三次方程,他们也是借助现成的表来求解,因为古巴比伦人编有专门的 (其中 为整数)的数值表。
对一个特殊三次方程 的解决,显示了他们在解方程方面的高超水平。古巴比伦人先运用了代换的方法:用 12 乘以方程两端,并设 ,从而把方程转化为 ,查表得 ,因此 。在没有现代符号的情况下,能够认识到方程 与 本质上属于同一类型,这种初等的代数变换思想在当时是了不起的成就。
古巴比伦人在研究中还涉及并解决了简单的四次方程。比如泥板中有这样一个问题:“我把长乘宽得面积 10。我把长自乘得面积,我把长大于宽的量自乘,再把这个结果乘以 9。这个面积等于长自乘所得的面积。问长和宽是多少?”
如我们上面已经介绍到的,这里的文字长、宽,只不过是两个未知量的方便说法,相当于我们的 、 。于是这个问题用现在的符号可表示为:
在解这一方程组时,会得到 的一个四次方程,但其中缺少 和 项,因而这个方程可作为 的二次方程来解。古巴比伦人给出了这一问题的正确答案。
通过上述的介绍,我们看到古巴比伦人可以圆满解决一次、二次方程,可以求解部分特殊的三次、四次方程,古巴比伦人在多项式方程研究方面取得的成就在古代数学中确实是非常突出的。