版权归原作者所有,如有侵权,请联系我们

[科普中国]-秦九韶算法

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

秦九韶算法是中国南宋时期的数学家秦九韶提出的一种多项式简化算法。在西方被称作霍纳算法。秦九韶(约公元1202年-1261年),字道古,南宋末年人,出生于鲁郡(今山东曲阜一带人)。

早年曾从隐君子学数术,后因其父往四川做官,即随父迁徙,也认为是普州安岳(今四川安岳县)人。

基本介绍学者简介秦九韶与李冶、杨辉、朱世杰并称宋元数学四大家。(安岳县于1998年9月正式开工建设秦九韶纪念馆,2000年12月竣工落成。)

秦九韶聪敏勤学,宋绍定四年(公元1231),秦九韶考中进士,先后担任县尉、通判、参议官、州守等职。先后在湖北、安徽、江苏、浙江等地做官。南宋理宗景定元年(公元1260年)出任梅州太守,翌年卒于梅州。据史书记载,他“性及机巧,星象、音律、算术以至营造无不精究”,还尝从李梅亭学诗词。他在政务之余,以数学为主线进行潜心钻研,且应用范围至为广泛:天文历法、水利水文、建筑、测绘、农耕、军事、商业金融等方面。

秦九韶是我国古代数学家的杰出代表之一,他的《数书九章》概括了宋元时期中国传统数学的主要成就,尤其是系统总结和发展了高次方程的数值解法与一次同余问题的解法,提出了相当完备的“正负开方术”和“大衍求一术”。对数学发展产生了广泛的影响。

秦九韶是一位既重视理论又重视实践,既善于继承又勇于创新的科学家,他被国外科学史家称为是“他那个民族,那个时代,并且确实也是所有时代最伟大的数学家之一。1

相关贡献秦九韶算法是一种将一元n次多项式的求值问题转化为n个一次式的算法。其大大简化了计算过程,即使在现代,利用计算机解决多项式的求值问题时,秦九韶算法依然是最优的算法。

在西方被称作霍纳算法,是以英国数学家霍纳命名的。1

计算方法一般地,一元n次多项式的求值需要经过(n+1)*n/2次乘法和n次加法,而秦九韶算法只需要n次乘法和n次加法。在人工计算时,一次大大简化了运算过程。

把一个n次多项式

改写成如下形式:

求多项式的值时,首先计算最内层括号内一次多项式的值,即

然后由内向外逐层计算一次多项式的值,即

这样,求n次多项式f(x)的值就转化为求n个一次多项式的值。

结论:对于一个n次多项式,至多做n次乘法和n次加法。2

《数书九章》

宋淳祜四至七年(公元1244至1247),秦九韶在湖州为母亲守孝三年期间,把长期积累的数学知识和研究所得加以编辑,写成了举世闻名的数学巨著《数书九章》。 书成后,并未出版。原稿几乎流失,书名也不确切。后历经宋、元,到明建国,此书无人问津,直到明永乐年间,在解缙主编《永乐大典》时,记书名为《数学九章》。又经过一百多年,经王应麟抄录后,由王修改为《数书九章》。1

全书不但在数量上取胜,重要的是在质量上也是拔尖的。从历史上来看,秦九韶的《数书九章》可与《九章算术》相媲美;从世界范围来看,秦九韶的《数书九章》也不愧为世界数学名著。

他在《数书九章》序言中说,数学“大则可以通神明,顺性命;小则可以经世务,类万物”。所谓“通神明”,即往来于变化莫测的事物之间,明察其中的奥秘;“顺性命”,即顺应事物本性及其发展规律。在秦九韶看来,数学不仅是解决实际问题的工具,而且应该达到“通神明,顺性命”的崇高境界。1

《数书九章》全书共九章九类,十八卷,每类9题共计81个算题。该书著述方式,大多由“问曰”、“答曰”、“术曰”、“草曰”四部分组成:“问曰”,是从实际生活中提出问题;“答曰”,是给出答案;“术曰”,是阐述解题原理与步骤;“草曰”,是给出详细的解题过程。另外,每类下还有颂词,词简意赅,用来记述本类算题主要内容、与国计民生的关系及其解题思路等。2

历史19世纪初,英国数学家威廉·乔治·霍纳重新发现并证明,后世称作霍纳算法(Horner's method、Horner scheme)。但是,19世纪英国传教士伟烈亚力Alexander Wylie. (1815–1887) 最早对霍纳的发明权提出质疑。他在1852年著的《中国科学扎记》(Jottings on the Science of the Chinese)一篇论文中,详细介绍秦九韶的正负开方术之后写道“读者不难认出这就是霍纳在1819年因为发表《解所有次方程》论文,被数学家奥古斯都·德·摩根评为‘必使其发明人因发现此算法而置身于重要发明家之列’的方法;我以为应该对霍纳的发明权提出辩驳。欧洲的朋友们可能会觉得意外,一位来自天朝帝国的竞争者,有更大的机会确立他的优先权”。此后,日本数学史家三上义夫在《中日数学史》一书中在详述秦九韶的正负开方术后写道:“谁能否认,霍纳的辉煌方法,至少在早于欧洲六百年之前,已经在中国运用了。”。三上义夫还最先指出,秦九韶算法起源于汉代《九章算术》的开方法。其后王玲和李约瑟有专文论述秦九韶算法起源于《九章算术》。前苏联数学史家尤什克维奇说“这是中国传统数学最伟大成就之一”,他还说印度人不知有此方法,而阿拉伯数学家可能从中国前人传入此方法。

下面以自今到古的顺序,列出早在霍纳之前对该算法的发现:

1809年,保罗·鲁菲尼

1669年,艾萨克·牛顿(但缺乏详细引文)

14世纪,中国数学家朱世杰

13世纪,中国数学家秦九韶在《数书九章》中

12世纪,波斯的伊斯兰数学家萨拉夫·丁·图西

11世纪(宋朝),中国数学家贾宪

汉朝(公元前202到公元220年),刘徽所注的《九章算术》中

霍纳在1819年发表的《解所有次方程》论文中的算例,其算法程序和数字处理都远不及五百多年前的秦九韶有条理;秦九韶算法不仅在时间上早于霍纳,也比较成熟。

元代数学家李冶和朱世杰继承了秦九韶算法。2

本词条内容贡献者为:

杨晓红 - 副教授 - 西南大学