− x⁴ + 15245x² − 6262506.25的秦九韶算法
**秦九韶算法**是中国南宋时期的数学家秦九韶表述求解一元高次多项式的值的算法——正负开方术。它也可以配合牛顿法用来求解一元高次多项式的根。

历史
--

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

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

* 1809年，保羅·魯菲尼
* 1669年，艾萨克·牛顿（但缺乏详细引文）
* 14世纪，中国数学家朱世
* 13世纪，中国数学家秦九韶在《数书九章》中
* 12世纪，波斯的伊斯兰数学家萨拉夫·丁·图西（英语：）
* 11世纪（宋朝），中国数学家贾宪
* 汉朝（公元前202到公元220年），刘徽所注的《九章算术》中[可疑]

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

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

秦九韶算法
-----

-x^4+763200x^2-40642560000=0秦九韶算法  
精确解x=840
 -x^4+15245x^2-6262506.25=0秦九韶算法  
近似解x=20.5
南宋数学家秦九韶将贾宪的增乘开方术推广，以求解任意高次方程的实数根的数值解。秦九韶的《数书九章》详细叙述用秦九韶算法求解二十六个二次到十次方程的的实数根的数值解，其中包含二十个二次方程，一个三次方程，四个四次方程和一个十次方程。；其中有些得到精确解；多数得近似解。

《数书九章》"《遥度圆城》"题列出一个十次方程，求解圆城的直径：

x^{10}+15x^8+72x^6-864x^4-11664x^2-34992=0 ，得**精确解**x=3。
《数书九章》"《兴田求积》"题列出一个四次方程，

-x^4+763200x^2-40642560000=0

將方程式寫成一般式{\displaystyle -x^{4}+0x^{3}+763200x^{2}+0x-40642560000=0}

第一次估根~800；作y=x-800减根代换，估出根的第二位数字为y=40；经过第二次减根代换z=y-40后常数项抵消为0；得**精确解** y=40；x=800+y=800+40=840。右图为用阿拉伯数字表示的解此四次方程的秦九韶程序图（c'、d'、e'是运算过程中的临时数，最终分别并入c、d、e）。

《数书九章》"《环田三积》"题列出另一个四次方程，

 -x^4+15245x^2-6262506.25=0右图为秦九韶解下列四次方程的程序
 -x^4+15245x^2-6262506.25=0
其中经过x=10x'扩根代换和 x'=y+2减根代换得

-10000y^4-80000y^3+1284500y^2+577800y-324506.25=0

再次作扩根变换令z=10y 得： 

{\displaystyle -z^{4}-80z^{3}+12845z^{2}+57780z-324506.25=0}

筹算程序：

已隱藏部分未翻譯内容，歡迎參與翻譯。
1. 置6262506.25为实
2. 置15245为上廉
3. 置1为益隅
4. 上廉超二位，益隅超三位。
5. 置商20步
6. 以商乘益隅入下廉
7. 以下廉乘商生负廉
8. 以负廉与正廉相消得正上廉
9. 以商乘上廉为方
10. 以方乘商除实
11. 又以商乘益隅入下廉
12. 以下廉乘商生负廉
13. 负廉与正廉相消
14. 商与上廉生方
15. 商隅相乘入下廉
16. 商与下廉生负廉
17. 负廉与正廉相消
18. 商又与隅生下廉
19. 下廉三退，隅四退
20. 无商（商第二位为0），以上廉并入方，并益隅入下廉
21. 益隅并负廉与正方廉相消，命为母
22. 约分

得x~ 20\frac{1298025}{2362256}
其中：\frac{1298025}{2362256} 不等于0，其第一位有效数字=0.5；即商的下一位数字为5，商~20.5，按秦九韶程序的一般规则，运算须继续进行下去直到"实"=0为止；但秦九韶在商=20.5而止，因20.5的精确度已满足在相关问题的需要。

三上义夫特别指出（1）秦九韶在处理 -x^4+15245x^2-6262506.25=0这一类四次方程式时，绝非作为x^{2}
的二次方程式来求解（所谓双二次方程），而是按四次方程来求解的。（2）秦九韶算法同样可以求出小数点后的数值，后来的中国数学家和日本数学正是这么做的。

原理
--

设有n+1项的n次函数

f(x)=a\_nx^n+a\_{n-1}x^{n-1}+a\_{n-2}x^{n-2}+......+a\_2x^2+a\_1x+a\_0

  

将前n项提取公因子x，得

f(x)=(a\_nx^{n-1}+a\_{n-1}x^{n-2}+a\_{n-2}x^{n-3}+......+a\_2x+a\_1)x+a\_0

  

再将括号内的前n-1项提取公因子x，得

f(x)=((a\_nx^{n-2}+a\_{n-1}x^{n-3}+a\_{n-2}x^{n-4}+......+a\_2)x+a\_1)x+a\_0

  

**如此反复提取公因子x**，最后将函数化为

f(x)=(((a\_nx+a\_{n-1})x+a\_{n-2})x+......+a\_1)x+a\_0

  

令

f\_1=a\_nx+a\_{n-1}

f\_2=f\_1x+a\_{n-2}

f\_3=f\_2x+a\_{n-3}

......

f\_n=f\_{n-1}x+a\_0

  

则f\_{n}即为所求

应用示例
----

求当{\displaystyle x=3}时f(x)=2x^3-6x^2+2x-1\,的值。
  

反复提取公因子x后，原函数可以写成f\_1(x)=x(x(2x-6)+2)-1。建立下列**系数表**可以用来加快演算速度：

```
  x\_0 |   x^{3}   x^{2}    x^{1}   x^{0} 
  3 |   2    -6     2    -1
    |        6      0    6  
    |----------------------
        2    0      2    5
```

第四行中的数是表中本列上方两数之和。第三行的数字是x的值与左下方第四行数的乘积。第二行的数是多项式各项按照次数从大到小排列后的系数。表中右下角的数就是函数的值：5。

效率
--

对于一个n次的多项式函数，用常规方法（用重复乘法计算幂，再把各项相加）计算出结果最多需要n次加法和\frac{(n^2 + n)}{2}次乘法。若用x迭代的方法计算幂则需要n次加法和2n+1次乘法。如果计算中的数值数据是以字节方式储存的，那么常规方法约需要x占用的字节的2n倍空间。

而使用秦九韶算法时，至多只需作n次加法和n次乘法，最多需要x占用的字节的n倍空间。

意义
--

该算法看似简单，其最大的意义在于将求n次多项式的值转化为求n个一次多项式的值。在人工计算时，利用秦九韶算法和其中的系数表可以大幅简化运算；对于计算机程序算法而言，加法比乘法的计算效率要高很多，因此该算法仍有极大的意义，用于减少中央处理器运算时间。

参考文献
----

### 引用

1. ↑ .  [2008-10-12]. （原始内容存档于2008-12-03）.
2. ↑  Alexander Wylie Jottings on the Sciences of The Chinese p188 1852
3. ↑  吴文俊主编《中国数学史大系》第五卷533-537
4. ↑  Yoshio Mikami, The Development of Mathematics in China and Japan, Chelsia, New York, 1913 edition, p77
5. ↑  Urich Librecht Chinese Mathematics in Thirteen Century平08 Dover
6. ↑  Florian Cajori, Horner's method of approximation anticipated by Ruffini （页面存档备份，存于）, Bulletin of the American Mathematical Society, Vol. 17, No. 9, pp. 409–414, 1911 (read before the Southwestern Section of the American Mathematical Society on November 26, 1910).
7. 1 2  約翰·J·奧康納; 埃德蒙·F·羅伯遜（英语：）,  （英语）
8. ↑  Berggren, J. L.. Journal of the American Oriental Society. 1990, **110** (2): 304–309. doi:10.2307/604533.
9. ↑  Temple, Robert. (1986). *The Genius of China: 3,000 Years of Science, Discovery, and Invention*. With a forward by Joseph Needham. New York: Simon and Schuster, Inc. ISBN 0-671-62028-2. Page 142.
10. ↑  白尚恕 《中国数学史研究白尚恕文集》 47页
11. ↑  Urich Librecht Chinese Mathematics in the Thirteen Century p189 Dover
12. ↑  吴文俊主编 中国数学史大系第五卷 302-309页
13. ↑  吴文俊主编中国数学史大系第五卷 293-298页
14. ↑  吴文俊主编中国数学史大系第五卷 299-302页
15. ↑  Jean Claude Matzloff, A History of Chinese Mathematics, p233-245 ISBN 3-54033782-2
16. ↑  Yoshio Mikami ,Mathematics in China and Japan p77, 1912

### 来源

书籍
* 李庆扬、王能超、易大义 (编).  第四版. 清华大学出版社、Springer出版社. ISBN 7-302-04561-5.

参见
--

* icon数学主题
* 中国数学史主题

* 秦九韶
* 多项式方程求解


|  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
多項式 |
| --- |
|  |
| 函數 | 
* 零次函數(常數函數)
* 一次函數
* 二次函数
* 三次函數
* 四次函數
* 五次函數

 |
|  |
| 方程 | 
* 一次方程
* 二次方程
* 三次方程
* 四次方程
* 五次方程
* 六次方程
* 七次方程
* 八次方程
* 九次方程

 |
|  |
| 算法 | 
* 多项式除法
* 因式
* 不可约多项式
* 最大公因式（英语：）
* 秦九韶算法
* 結式
* 判别式

 |

 |

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
中國數學史 |
| --- |
|  |
| 上古至西汉 | 
* 幻方
* 十进位制
* 九九表
* 算筹
* 筹算
* 算表
* 算数书
* 《周髀算經》
* 《九章算术》
* 张苍
* 耿寿昌
* 《许昌算术》
* 《杜忠算术》
* 勾股定理
* 开方术
* 盈不足术

 |
|  |
| 东汉三国 | 
* 张衡
* 赵爽
* 刘洪
* 徐岳
* 《数术记遗》
* 王蕃
* 刘徽
	+ 割圆术
* 《海岛算经》
* 勾股容方
* 出入相补

 |
|  |
| 晋隋唐五代 | 
* 张邱建
	+ 《张邱建算经》
* 夏侯阳
	+ 《夏侯阳算经》
* 何承天
	+ 调日法
* 甄鸾
* 祖冲之
* 开差幂
* 牟合方盖
* 王孝通
	+ 《缉古算经》
* 李淳风
* 僧一行
* 大衍历
* 明算科
* 重差术
* 《孙子算经》
* 《五经算术》
* 《五曹算经》
* 《算经十书》

 |
|  |
| 两宋 | 
* 沈括
* 李籍
* 刘益
	+ 《议古根源》
* 贾宪
	+ 贾宪三角形
	+ 增乘开平方法
	+ 增乘开立方法
	+ 《黄帝九章算术细草》
* 秦九韶
	+ 秦九韶算法
	+ 《数书九章》
	+ 大衍求一术
* 杨辉
	+ 杨辉纵横图
	+ 幻圆
	+ 《杨辉算法》
		- 《乘除通變算寶》
		- 《田畝比類乘除捷法》
		- 《續古摘奇算法》
	+ 《詳解九章算法》
	+ 《日用算法》
* 《九章算法纂類》
* 递增三乘开四次方术

 |
|  |
| 辽金元 | 
* 张行简
* 天元术
* 李冶
	+ 《测圆海镜》
	+ 《益古演段》
* 《授时历》
	+ 郭守敬
	+ 王恂
* 朱世
	+ 《算学启蒙》
	+ 《四元玉鉴》
	+ 垛积术
* 招差术
* 赵友钦
	+ 《革象新书》
	+ 割圆术
* 金历法
* 耶律楚材历法
* 阿拉伯幻方
* 马拉加天文台

 |
|  |
| 明 | 
* 《丁巨算法》
* 《算法全能集》
* 《透帘细草》
* 吴敬
	+ 《九章详注比类算法大全》
* 王文素
	+ 《新集通證古今算學寶鑑》
* 朱載堉
	+ 十二平均律
	+ 《算学新说》
	+ 《嘉量算經》
* 珠算
	+ 算盘
	+ 《盘珠算法》
* 柯尚迁
	+ 《数学通轨》
* 程大位
	+ 《算法統宗》
		- 格子乘法
* 徐光启
	+ 译《几何原本》前6卷
	+ 《崇祯历书》
* 《算法全能集》
* 《详明算法》
* 《通源算法》

 |
|  |
| 清 | 
* 薛凤祚
* 李子金
	+ 《算法通义》
* 梅文鼎
* 年希尧
	+ 《视学》
* 戴震
* 李湟
* 沈钦裴
* 《畴人传》
* 《数理精蕴》
* 明安图
	+ 《割圜密率捷法》
	+ 割圆连比例
	+ 明安图变换
	+ 卡塔兰数
* 吴烺
* 焦循
	+ 《加减乘除释》
* 李锐
	+ 《开方说》
* 汪莱
	+ 《衡斋算学》
* 孔广森
* 董祐誠
	+ 《割圆比例术图解》
	+ 项名达
* 《象数一原》
* 張敦仁
	+ 《求一算术》
* 戴煦
	+ 《求表捷术》
* 王韬
* 李善兰
	+ 李善兰恒等式
	+ 《则古昔斋算学》
	+ 译《几何原本》后9卷
* 华蘅芳
	+ 《决疑数学》
* 丁取忠
	+ 《白芙堂算学从书》
* 时曰醇
	+ 《百鸡术衍》
* 同文馆
	+ 《同文馆算学课艺》

 |
|  |
| 现代 | 
* 胡明复
* 熊庆来
* 何鲁
* 段子燮
* 李俨
* 姜立夫
* 陈苏学派
	+ 陈建功
	+ 苏步青
* 陈省身
* 钱宝琮
* 江泽涵
* 华罗庚
	+ 《數論導引》
	+ 《堆叠素数论》
* 王元
* 潘承洞
* 许宝騄
* 陈景润
* 丘成桐
* 吴文俊
	+ 吴消元法
* 廖山涛

 |

 |