中国古代数学概论
姓名:
学号:
专业:机械设计制造及其自动化
院系:计算机与信息科学学院
摘要:从公元前后到公元14世纪这段时期内 ,中国在数学方面所取得的成就 ,在世界数学发展史中遥遥领先。
关键词:中国 古代 数学 成就
正文
1 .中国古代数学的发展及其成就
在古代世界四大文明中,中国数学持续繁荣时期最为长久。从公元前后至公元14世纪,中国古典数学先后经历了三次发展高潮,即两汉时期、魏晋南北朝时期和宋元时期,并在宋元时期达到顶峰。
与以证明定理为中心的希腊古典数学不同,中国古代数学是以创造算法特别是各种解方程的算法为主线。从线性方程组到高次多项式方程,乃至不定方程,中国古代数学家创造了一系列先进的算法(中国数学家称之为“术”),他们用这些算法去求解相应类型的代数方程,从而解决导致这些方程的各种各样的科学和实际问题。特别是,几何问题也归结为代数方程,然后用程式化的算法来求解。因此,中国古代数学具有明显的算法化、机械化的特征。以下择要举例说明中国古代数学发展的这种特征。
在古代世界四大文明中,中国数学持续繁荣时期最为长久。从公元前后至公元14世纪,中国古典数学先后经历了三次发展高潮,即两汉时期、魏晋南北朝时期和宋元时期,并在宋元时期达到顶峰。
与以证明定理为中心的希腊古典数学不同,中国古代数学是以创造算法特别是各种解方程的算法为主线。从线性方程组到高次多项式方程,乃至不定方程,中国古代数学家创造了一系列先进的算法(中国数学家称之为“术”),他们用这些算法去求解相应类型的代数方程,从而解决导致这些方程的各种各样的科学和实际问题。特别是,几何问题也归结为代数方程,然后用程式化的算法来求解。因此,中国古代数学具有明显的算法化、机械化的特征。以下择要举例说明中国古代数学发展的这种特征。
1.1 线性方程组与“方程术”
中国古代最重要的数学经典《九章算术》(约公元前2世纪)卷8的“方程术”,是解线性方程组的算法。以该卷第1题为例,用现代符号表述,该问题相当于解一个三元一次方程组:
3x+2y+z=39
2x+3y+z=34
x+2y+3z=26
《九章》没有表示未知数的符号,而是用算筹将x y z的系数和常数项排列成一个(长)方阵:
1 2 3
2 3 2
3 1 1
26 34 39
“方程术”的关键算法叫“遍乘直除”,在本例中演算程序如下:用右行(x)的系数(3)“遍乘”中行和左行各数,然后从所得结果按行分别“直除”右行,即连续减去右行对应各数,就将中行与左行的系数化为0。反复执行这种“遍乘直除”算法,就可以解出方程。很清楚,《九章算术》方程术的“遍乘直除” 算法,实质上就是我们今天所使用的解线性方程组的消元法,以往西方文献中称之为“高斯消去法”,但近年开始改变称谓,如法国科学院院士、原苏黎世大学数学系主任P.Gabriel教授在他撰写的教科书[4]中就称解线性方程组的消元法为“张苍法”,张苍相传是《九章算术》的作者之一。
x+2y+3z=26
《九章》没有表示未知数的符号,而是用算筹将x y z的系数和常数项排列成一个(长)方阵:
1 2 3
2 3 2
3 1 1
26 34 39
“方程术”的关键算法叫“遍乘直除”,在本例中演算程序如下:用右行(x)的系数(3)“遍乘”中行和左行各数,然后从所得结果按行分别“直除”右行,即连续减去右行对应各数,就将中行与左行的系数化为0。反复执行这种“遍乘直除”算法,就可以解出方程。很清楚,《九章算术》方程术的“遍乘直除” 算法,实质上就是我们今天所使用的解线性方程组的消元法,以往西方文献中称之为“高斯消去法”,但近年开始改变称谓,如法国科学院院士、原苏黎世大学数学系主任P.Gabriel教授在他撰写的教科书[4]中就称解线性方程组的消元法为“张苍法”,张苍相传是《九章算术》的作者之一。
1.2 高次多项式方程与“正负开方术”
《九章算术》卷4中有“开方术”和“开立方术”。《九章算术》中的这些算法后来逐步推广到开更高次方的情形,并且在宋元时代发展为一般高次多项式方程的数值求解。秦九韶是这方面的集大成者,他在《数书九章》(1247年)一书中给出了高次多项式方程数值解的完整算法,即他所称的“正负开方术”。
用现代符号表达,秦九韶“正负开方术”的思路如下:对任意给定的方程
f(x)=a0xn+a1xn-1+……+an-2x2+an-1x+an=0 (1)
其中a0≠0,an<0,要求(1)式的一个正根。秦九韶先估计根的最高位数字,连同其位数一起称为“首商”,记作c,则根x=c+h,代入(1)得
f(c+h)=a0(c+h)n+a1(c+h)n-1+……+an-1(c+h)+an=0
按h的幂次合并同类项即得到关于h的方程:
f(h)=a0hn+a1hn-1+……+an-1h+an=0 (2)
于是又可估计满足新方程(2)的根的最高位数字。如此进行下去,若得到某个新方程的常数项为0,则求得的根是有理数;否则上述过程可继续下去,按所需精度求得根的近似值。
如果从原方程(1)的系数a0,a1,…,an及估值c求出新方程(2)的系数a0,a1,…,an的算法是需
《九章算术》卷4中有“开方术”和“开立方术”。《九章算术》中的这些算法后来逐步推广到开更高次方的情形,并且在宋元时代发展为一般高次多项式方程的数值求解。秦九韶是这方面的集大成者,他在《数书九章》(1247年)一书中给出了高次多项式方程数值解的完整算法,即他所称的“正负开方术”。
用现代符号表达,秦九韶“正负开方术”的思路如下:对任意给定的方程
f(x)=a0xn+a1xn-1+……+an-2x2+an-1x+an=0 (1)
其中a0≠0,an<0,要求(1)式的一个正根。秦九韶先估计根的最高位数字,连同其位数一起称为“首商”,记作c,则根x=c+h,代入(1)得
f(c+h)=a0(c+h)n+a1(c+h)n-1+……+an-1(c+h)+an=0
按h的幂次合并同类项即得到关于h的方程:
f(h)=a0hn+a1hn-1+……+an-1h+an=0 (2)
于是又可估计满足新方程(2)的根的最高位数字。如此进行下去,若得到某个新方程的常数项为0,则求得的根是有理数;否则上述过程可继续下去,按所需精度求得根的近似值。
如果从原方程(1)的系数a0,a1,…,an及估值c求出新方程(2)的系数a0,a1,…,an的算法是需
要反复迭代使用的,秦九韶给出了一个规格化的程序,我们可称之为“秦九韶程序”, 他在《数书九章》中用这一算法去解决各种可以归结为代数方程的实际问题,其中涉及的方程最高次数达到10次,秦九韶解这些问题的算法整齐划一,步骤分明,堪称是中国古代数学算法化、机械化的典范。
1.3 多元高次方程组与“四元术”
绝不是所有的问题都可以归结为线性方程组或一个未知量的多项式方程来求解。实际上,可以说更大量的实际问题如果能化为代数方程求解的话,出现的将是含有多个未知量的高次方程组。
多元高次方程组的求解即使在今天也绝非易事。历史上最早对多元高次方程组作出系统处理的是中国元代数学家朱世杰。朱世杰的《四元玉鉴》(1303年)一书中涉及的高次方程达到了4个未知数。朱世杰用“四元术”来解这些方程。“四元术”首先是以“天”、“地”、“人”、“物”来表示不同的未知数,同时建立起方程式,然后用顺序消元的一般方法解出方程。朱世杰在《四元玉鉴》中创造了多种消元程序。
通过《四元玉鉴》中的具体例子可以清晰地了解朱世杰“四元术”的特征。值得注意的是,
1.3 多元高次方程组与“四元术”
绝不是所有的问题都可以归结为线性方程组或一个未知量的多项式方程来求解。实际上,可以说更大量的实际问题如果能化为代数方程求解的话,出现的将是含有多个未知量的高次方程组。
多元高次方程组的求解即使在今天也绝非易事。历史上最早对多元高次方程组作出系统处理的是中国元代数学家朱世杰。朱世杰的《四元玉鉴》(1303年)一书中涉及的高次方程达到了4个未知数。朱世杰用“四元术”来解这些方程。“四元术”首先是以“天”、“地”、“人”、“物”来表示不同的未知数,同时建立起方程式,然后用顺序消元的一般方法解出方程。朱世杰在《四元玉鉴》中创造了多种消元程序。
通过《四元玉鉴》中的具体例子可以清晰地了解朱世杰“四元术”的特征。值得注意的是,
这些例子中相当一部分是由几何问题导出的。这种将几何问题转化为代数方程并用某种统一的算法求解的例子,在宋元数学著作中比比皆是,充分反映了中国古代几何代数化和机械化的倾向。
1.4 一次同余方程组与“中国剩余定理”
中国古代数学家出于历法计算的需要,很早就开始研究形如:
X≡RI (mod ai) i=1,2,...,n (1) (其中ai 是两两互素的整数)的一次同余方程组求解问题。公元4世纪的《孙子算经》中已有相当于求解下列一次同余组的著名的“孙子问题”:
X≡2(mod3) ≡3(mod5) ≡2(mod7)
《孙子算经》作者给出的解法,引导了宋代秦九韶求解一次同余组的一般算法——“大衍求一术”。现代文献中通常把这种一般算法称为“中国剩余定理”。
1.4 一次同余方程组与“中国剩余定理”
中国古代数学家出于历法计算的需要,很早就开始研究形如:
X≡RI (mod ai) i=1,2,...,n (1) (其中ai 是两两互素的整数)的一次同余方程组求解问题。公元4世纪的《孙子算经》中已有相当于求解下列一次同余组的著名的“孙子问题”:
X≡2(mod3) ≡3(mod5) ≡2(mod7)
《孙子算经》作者给出的解法,引导了宋代秦九韶求解一次同余组的一般算法——“大衍求一术”。现代文献中通常把这种一般算法称为“中国剩余定理”。
1.5 插值法与“招差术”
插值算法在微积分的酝酿过程中扮演了重要角。在中国,早从东汉时期起,学者们就惯用插值法来推算日月五星的运动。起初是简单的一次内插法,隋唐时期出现二次插值法(如一
行《大衍历》,727年)。由于天体运动的加速度也不均匀,二次插值仍不够精密。随着历法的进步,到了宋元时代,便产生了三次内插法(郭守敬《授时历》,1280年)。在此基础上,数学家朱世杰更创造出一般高次内插公式,即他所说的“招差术”。 朱世杰的公式相当于
f(n)=n△+ n(n 1)△2+ n(n 1)(n 2)△3 + n(n 1)(n 2)(n 3)△4+……
这是一项很突出的成就。
这里不可能一一列举中国古代数学家的所有算法,但仅从以上介绍不难看到,古代与中世纪中国数学家创造的算法,有许多即使按现代标准衡量也达到了很高的水平。这些算法所表达的数学真理,有的在欧洲直到18世纪以后依赖近代数学工具才重新获得(如前面提到的高次代数方程数值求解的秦九韶程序,与1819年英国数学家W. 霍纳重新导出的“霍纳算法”基本一致;多元高次方程组的系统研究在欧洲也要到18世纪末才开始在E. 别朱等人的著作中出现;解一次同余组的剩余定理则由欧拉与高斯分别独立重新获得;至于朱世杰的高次内插公式,实质上已与现在通用的牛顿-格列高里公式相一致)。这些算法的结构,其复杂程度也是惊人的。如对秦九韶“大衍求一术”和“正负开方术”的分析表明,这些算法的计算程序,包含了现代计算机语言中构造非平易算法的基本要素与基本结构。这类复杂的算法,很难再仅仅被看作是简单的经验法则了,而是高度的概括思维能力的产物,这种能力与欧几里得几何的演
f(n)=n△+ n(n 1)△2+ n(n 1)(n 2)△3 + n(n 1)(n 2)(n 3)△4+……
这是一项很突出的成就。
这里不可能一一列举中国古代数学家的所有算法,但仅从以上介绍不难看到,古代与中世纪中国数学家创造的算法,有许多即使按现代标准衡量也达到了很高的水平。这些算法所表达的数学真理,有的在欧洲直到18世纪以后依赖近代数学工具才重新获得(如前面提到的高次代数方程数值求解的秦九韶程序,与1819年英国数学家W. 霍纳重新导出的“霍纳算法”基本一致;多元高次方程组的系统研究在欧洲也要到18世纪末才开始在E. 别朱等人的著作中出现;解一次同余组的剩余定理则由欧拉与高斯分别独立重新获得;至于朱世杰的高次内插公式,实质上已与现在通用的牛顿-格列高里公式相一致)。这些算法的结构,其复杂程度也是惊人的。如对秦九韶“大衍求一术”和“正负开方术”的分析表明,这些算法的计算程序,包含了现代计算机语言中构造非平易算法的基本要素与基本结构。这类复杂的算法,很难再仅仅被看作是简单的经验法则了,而是高度的概括思维能力的产物,这种能力与欧几里得几何的演
绎思维风格截然不同,但却在数学的发展中起着完全可与之相媲美的作用。事实上,古代中国算法的繁荣,同时也孕育了一系列极其重要的概念,显示了算法化思维在数学进化中的创造意义和动力功能。以下亦举几例。
1.6 负数的引进
《九章算术》“方程术”的消元程序,在方程系数相减时会出现较小数减较大数的情况,正是在这里,《九章算术》的作者们引进了负数,并给出了正、负数的加减运算法则,即“正负术”。
对负数的认识是人类数系扩充的重大步骤。公元7世纪印度数学家也开始使用负数,但负数的认识在欧洲却进展缓慢,甚至到16世纪,韦达的著作还回避负数。
1.7 无理数的发现
中国古代数学家在开方运算中接触到了无理数。《九章算术》开方术中指出了存在有开不尽的情形:“若开方不尽者,为不可开”,《九章算术》的作者们给这种不尽根数起了一个专门名词——“面”。“面”,就是无理数。与古希腊毕达哥拉斯学派发现正方形的对角线不是有理
1.6 负数的引进
《九章算术》“方程术”的消元程序,在方程系数相减时会出现较小数减较大数的情况,正是在这里,《九章算术》的作者们引进了负数,并给出了正、负数的加减运算法则,即“正负术”。
对负数的认识是人类数系扩充的重大步骤。公元7世纪印度数学家也开始使用负数,但负数的认识在欧洲却进展缓慢,甚至到16世纪,韦达的著作还回避负数。
1.7 无理数的发现
中国古代数学家在开方运算中接触到了无理数。《九章算术》开方术中指出了存在有开不尽的情形:“若开方不尽者,为不可开”,《九章算术》的作者们给这种不尽根数起了一个专门名词——“面”。“面”,就是无理数。与古希腊毕达哥拉斯学派发现正方形的对角线不是有理
数时惊慌失措的表现相比,中国古代数学家却是相对自然地接受了那些“开不尽”的无理数,这也许应归功于他们早就习惯使用的十进位制,这种十进位制使他们能够有效地计算“不尽根数”的近似值。为《九章算术》作注的三国时代数学家刘徽就在“开方术”注中明确提出了用十进制小数任意逼近不尽根数的方法,他称之为“求微数法”,并指出在开方过程中,“其一退以十为步,其再退以百为步,退之弥下,其分弥细,则……虽有所弃之数,不足言之也”。
十进位值记数制是对人类文明不可磨灭的贡献。法国大数学家拉普拉斯曾盛赞十进位值制的发明,认为它“使得我们的算术系统在所有有用的创造中成为第一流的”。中国古代数学家正是在严格遵循十进位制的筹算系统基础上,建立起了富有算法化特的东方数学大厦。
1.8 贾宪三角或杨辉三角
从前面关于高次方程数值求解算法(秦九韶程序)的介绍我们可以看到,中国古代开方术是以 c+h n的二项展开为基础的,这就引导了二项系数表的发现。南宋数学家杨辉著《详解九章算法》(1261年)中,载有一张所谓“开方作法本源图”,实际就是一张二项系数表。这张图摘自公元1050年左右北宋数学家贾宪的一部著作。“开方作法本源图”现在就叫“贾宪三角”或“杨辉三角”。二项系数表在西方则叫“帕斯卡三角”。
十进位值记数制是对人类文明不可磨灭的贡献。法国大数学家拉普拉斯曾盛赞十进位值制的发明,认为它“使得我们的算术系统在所有有用的创造中成为第一流的”。中国古代数学家正是在严格遵循十进位制的筹算系统基础上,建立起了富有算法化特的东方数学大厦。
1.8 贾宪三角或杨辉三角
从前面关于高次方程数值求解算法(秦九韶程序)的介绍我们可以看到,中国古代开方术是以 c+h n的二项展开为基础的,这就引导了二项系数表的发现。南宋数学家杨辉著《详解九章算法》(1261年)中,载有一张所谓“开方作法本源图”,实际就是一张二项系数表。这张图摘自公元1050年左右北宋数学家贾宪的一部著作。“开方作法本源图”现在就叫“贾宪三角”或“杨辉三角”。二项系数表在西方则叫“帕斯卡三角”。
1.9 走向符号代数
解方程的数学活动,必然引起人们对方程表达形式的思考。在这方面,以解方程擅长的中国古代数学家们很自然也是走在了前列。在宋元时期的数学著作中,已出现了用特定的汉字作为未知数符号并进而建立方程的系统努力。这就是以李冶为代表的“天元术”和以朱世杰为代表的“四元术”。所谓“天元术”,首先是“立天元一为某某”,这相当于“设为某某”,“天元一”就表示未知数,然后在筹算盘上布列“天元式”,即一元方程式。该方法被推广到多个未知数情形,就是前面提到的朱世杰的“四元术”。因此,用天元术和四元术列方程的方法,与现代代数中的列方程法已相类似。
符号化是近世代数的标志之一。中国宋元数学家在这方面迈出了重要一步,“天元术”和“四元术”,是以创造算法特别是解方程的算法为主线的中国古代数学的一个高峰。
2.主要人物及其成就
祖冲之
祖冲之(公元429~500年)祖籍是现今河北省涞源县,他是南北朝时代的一位杰出科学家。
他不仅是一位数学家,同时还通晓天文历法、机械制造、音乐等领域,并且是一位天文学家。
祖冲之在数学方面的主要成就是关于圆周率的计算,他算出的圆周率为3.1415926<π<3.1415927,这一结果的重要意义在于指出误差的范围,是当时世界最杰出的成就。祖冲之确定了两个形式的π值,约率355/173(≈3.1415926)密率22/7(≈3.14),这两个数都是π的渐近分数。
刘徽(生于公元250年左右),是中国数学史上一个非常伟大的数学家,在世界数学史上,也占有杰出的地位.他的杰作《九章算术注》和《海岛算经》,是我国最宝贵的数学遗产.
贾宪
贾宪,中国古代北宋时期杰出的数学家。曾撰写的《黄帝九章算法细草》(九卷)和《算法斆古集》(二卷)(斆xiphoid,意:数导)均已失传。
他的主要贡献是创造了贾宪三角和增乘开方法,增乘开方法即求高次幂的正根法。目前中学数学中的混合除法,其原理和程序均与此相仿,增乘开方法比传统的方法整齐简捷、又更程
序化,所以在开高次方时,尤其显出它的优越性,这个方法的提出要比欧洲数学家霍纳的结论早七百多年。
秦九韶
秦九韶(约202--1261),字道古,四川安岳人。先后在湖北,安徽,江苏,浙江等地做官,1261年左右被贬至梅州,(今广东梅县),不久死于任所。他与李冶,杨辉,朱世杰并称宋元数学四大家。早年在杭州“访习于太史,又尝从隐君子受数学”,1247年写成著名的《数书九章》。《数书九章》全书凡18卷,81题,分为九大类。其最重要的数学成就----“大衍总数术”(一次同余组解法)与“正负开方术"(高次方程数值解法),使这部宋代算经在中世纪世界数学史上占有突出的地位。
李冶
李冶(1192----1279),原名李治,号敬斋,金代真定栾城人,曾任钧州(今河南禹县)知事,1232年钧州被蒙古军所破,遂隐居治学,被元世祖忽必烈聘为翰林学士,仅一年,便辞官回乡。1248年撰成《测圆海秦九韶著作镜》,其主要目的是说明用天元术列方程的方法。“天元术”与
现代代数中的列方程法相类似,“立天元一为某某”,相当于“设x为某某“,可以说是符号代数的尝试。李冶还有另一步数学著作《益古演段》(1259)也是讲解天元术的。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论