中國數學·魏晉南北朝數學
魏晉南北朝是指從三國到隋文帝統一中國之前的時代,在此期間,中國數學的各項成就達到了高峰,而中國數學的傳統、特色也有了明確的顯示。
三國時代吳人趙爽,字君卿,身世不詳。曾為《周髀》作注,在“注” 中,有 “負薪余日,聊觀《周髀》”之類語句,依此而論,趙爽當是一介寒儒。他不但補繪了“日高圖”及“七衡圖”;他還撰寫了“勾股圓方圖”注、“日高圖”注、“七衡圖”注;在“勾股圓方圖”注中,他用五百余字,論證了勾股原理,并論證了有關勾、股、弦的二十多條命題,在“日高圖”注中,他對所謂“日高術”即重差術,也給予幾何證明,在“七衡圖”注中,他對蓋天學說的理論作了說明,所有這些,對后世研討《周髀》者都有很大裨益。例如“勾股圓方圖”注說:“勾、股各自乘,并之為弦實。開方除之,即弦。案弦圖又可以勾、股相乘為朱實二,倍之為朱實四。以勾、股之差自相乘為中黃實。加差實一,亦成弦實。”其前一句是重復論述勾股原理,而后一句則是以面積概念證明了勾股原理 (圖5)。即:
設勾、股、弦分別為a、b、c,勾股原理即:
其證明過程為:
勾、股相乘為朱實二 ab
倍之為朱實四 2ab
以勾、股之差自相乘為中黃實 (b-a)2
加差實一,亦成弦實 2ab+ (b-a)2=c2
這是中國對勾股原理第一次嚴密的證明。
圖5
在“日高圖”下,趙爽注說:“黃甲與黃乙其實正等。以表高乘兩表相去為黃甲之實。以影差為黃乙之廣而一,所得,則變得黃乙之袤,上與日齊。按圖當加表高,今言八萬里者,從表以上復加之。青丙與青己其實亦等。黃甲與青丙相連,黃乙與青己相連,其實亦等”。這是中國古代推求日高的傳統方法,一般稱為“重差術”,就是在平地上立兩根等高的表,當日光照射兩表時,兩表即有表影。根據兩表相對位置、高度、影長便可求得日高。其計算公式為:
日高=[ (表高×兩表間距離)
÷兩表之影差] +表高
為了說明這一算法的正確性,趙爽給予嚴密的證明(圖6):
圖6
黃甲與黃乙其實正等 □BH=□HN
以表高乘兩表相去為黃甲之實 BC×BG=□BH
以影差為黃乙之廣而一 □HN÷(GK-BE)=HO
所得則變得黃乙之袤,上與日齊 HO=(BC×BG)÷(GK-BE)
按圖當加表高 AR=[(BC×BG)÷(GK-BE)]+BC
今言八萬里者,從表上復加之 其中所說“八萬里”,是《周髀》所推算的日高數字
青丙與青己其實亦等 □AC=□JM
黃甲與青丙相連,黃乙與青
已相連,其實亦等 □AC+□BH=□HN+□JM
趙爽可能根據這樣等積關系證明上述日高公式的:長方形的一條對角線,將長方形分割成等積的兩部分,因而可得右上小長方形與左下小長方形等積(圖7)。趙爽對日高公式的論證,為重差理論的發展奠定了堅實的基礎。
圖7
在《周髀算經注》中,趙爽不但在數學方面作了精采的闡述,還寫出了珍貴的治學之道;他說“累,重也。若誠能重累思之,則達至微之理”。在數學研究上,他主張“累思”;只有累思才能貫通各種道理。他還說“凡教之道,不憤不啟,不悱不發;憤之,悱之,然后啟發,……,舉一隅,使反之以三也”。在數學的學習中,不僅要獨立思考,而且還要舉一反三。只有這樣才能收到良好的教益。
略晚于趙爽的是劉徽。劉徽是魏、晉期間杰出布衣數學家,其身世不詳,經初步考證,當是現今山東人,曾為《九章算術》作過注解; 劉徽《九章算術注》中,在數學理論上、方法上、技巧上、程序上多所建樹和發明,為中國數學奠定了傳統的理論基礎,為中國數學形成了獨特的理論體系,其錚錚之詞,鏗鏘有聲。
劉徽利用 “出入相補原理”,即圖形的分、合、移、補的方法證明平面圖形如圭田、邪田、箕田、圓田、宛田、弧田、環田的面積算法,還用以證明勾股原理。《九章·方田》圭田術為“半廣以乘正從”。劉徽注稱“半廣者,以盈補虛為直田也。亦可半正從以乘廣。按半廣乘從,以取中平之數。故廣、從相乘為積步”。劉徽把“圭田”即等腰三角形割補成長方形,依據長方形的面積算法推證“圭田”的面積算法(圖8)。故得:
圭田面積=1/2×(廣)×(正從)=1/2×(正從)×(廣)
圖8
《九章·勾股》勾股術為“勾股各自乘,并而開方除之,即弦”。劉徽注稱:“勾自乘為朱方,股自乘為青方,令出入相補,各從其類,因就其余不移動也。合成弦方之冪,開方除之,即弦也。”其證明方法,就是把勾方之“朱出”部分,補入“朱入”之處;再把股方之“青出”部分,補入“青入”部分;便合成了弦方。開平方求其邊長,即得其弦長 (圖9)。即:
圖9
劉徽還利用面積理論證明了可以與希臘哲學家畢達哥拉斯(Pythagoras,約公元前580—500)、哲學家柏拉圖(Plato,公元前427—347)以及數學家歐幾里得(Euclid,約公元前330—275)相媲美的整數勾股弦的一般公式。
設勾、股、弦分別為a、b、c,整數勾股弦一般公式為:
a∶b∶c=[m2-(1/2)(m2+n2)]
∶mn∶(1/2) (m2+n2)
關于直線型平面圖形的面積算法,劉徽都是以“出入相補原理”證明的。對于圓型平面圖形如圓田、弧田的面積算法,劉徽則是利用極限觀念和出入相補原理也即所謂“割圓術”證明其面積算法,并求得圓周率較精密之值分別為:
π=157/50=3.14
π=3927/1250=3.1416
對于環田,乃是將環田之周拉直,使變為等積的梯形,再用出入相補原理證明其面積算法。在算法理論上、數學思想上,劉徽的這一套理論和方法是十分珍貴的。
劉徽把環田之周拉直,使之變形為等積的梯形。實際上這是一種“化曲為直”或“以直代曲”的思想,這種思想一方面體現在《九章》商功章“曲池術”下注文中,他說“此池環而不通匝,表如盤蛇而曲之。亦云周者,謂如委谷依垣之周耳。引而伸之,周為袤,求袤之意,環田也”。一方面體現在《九章》勾股章“葛之纏木術”下注文中,他說“以筆管青線宛轉有似葛之纏木,解而觀之,則每周之間,自有相間成勾股弦”。也即是說,他不但把一些平面曲線即圓弧拉成直線,還把空間曲線即柱面螺旋線拉成直線。劉徽這種思想成為中國數學的一項傳統、特色,并影響著后世。
劉徽在推證勾股原理的基礎上,還用面積理論推證有關勾、股的各種線段的求法,還用相似勾股形性質推證“勾股容方”、“勾股容圓”的算法,也證明了簡單的測量算法。“勾股容方”即是推求直角三角形內接正方形的邊長,勾股章第15問為“今有勾五步,股十二步。問勾中容方幾何”。術文為“并勾、股為法,勾、股相乘為實,實如法而一,得方一步”。設勾、股分別為a=5,b=12,其內接正方形之邊長為x。按術乃得:
x=ab÷(a+b)=5×12÷(5+12)=3+(9/17)
劉徽一方面用相似形性質即比例證明這一算法的正確性,一方面用面積理論證明這一算法的合理性。“勾股容圓”即是推求直角三角形內切圓的直徑,勾股章第16問為“今有勾八步,股十五步。問勾中容圓,徑幾何”。術文為“八步為勾,十五步為股,為之求弦。三位并之為法,以勾乘股,倍之為實。實如法得徑一步”。設勾、股分別為a=8,b=15,弦為c,內切圓直徑為d,按術乃得:
d =2ab÷ (a+b+c)
=2×8×15÷ (8+15+17) =6
其中c=

d=a-(c-b)
d=b-(c-a)
d=(a+b)-c
劉徽對于直線型柱體如城、垣、堤、溝、塹、渠的體積或容積算法,也以“出入相補原理”予以證明;他把“出入相補原理”作為一條普遍原理,幾乎應用于全部的幾何中。劉徽又利用三種基本幾何體,即塹堵、陽馬、鱉臑,先證明三種基本幾何體的體積算法,再把直線型非柱體的立體分割為三種基本幾何體,然后證明其體積或容積的算法。可見,他把三種基本幾何體作為多面體體積算法的理論關鍵。例如,他推證方亭體積,即正四棱臺體積時,把方亭分割為一長方體、四塹堵、四陽馬,由長方體、陽馬、鱉臑的體積算法,推證方亭的體積算法為:
方亭= (1/3) (上方2+上方×下方+下方2) ×高
其中“上方”、“下方”分別是正四棱臺的上、下底邊之長。又如他把方錐,即正四棱錐分割為四個陽馬,由陽馬的體積算法,推證方錐的體積算法為:
方錐= (1/3) ×下方2×高
其中“下方”即是方錐下底之邊長。再如,對于羨除、芻甍、芻童、盤池等立體,也都是分割為若干個三種基本幾何體進行論證的。
劉徽在推證圓型立體體積算法時,采用了“截割原理”,即是在圓柱、圓錐、圓臺上,分別作一外切方柱、方錐、方臺,以圓型立體與其外切方型立體體積之比為π∶4,于是,可從方型立體的體積算法推證得圓型立體的體積算法。如劉徽推證圓亭體積,即正圓臺的體積時,其算法為:
圓亭=(1/3)(1/4π)(上周2+上周×下周
+下周2)×高
=(π/4)方亭
=(π/4)[(1/3)(上方2+上方×下方
+下方2)×高]
其中“上周”、“下周”分別是圓亭上、下底之周長。而“上方”、“下方”分別是圓亭外切正四棱臺上底、下底一邊之長。在《九章》中,一般取圓率為π=3。又如他推證圓錐體積,即正圓錐體積時,其算法為:
圓錐= (1/3) (1/4π) (下周2) ×高
=(π/4) 方錐= (π/4) [ (1/3) ×
(下方2) ×高]
其中“下周”即圓錐下底之周長,“下方”即圓錐外切方錐下底之邊長。劉徽在推求圓型立體體積運算中,提出圓柱、圓亭、圓錐、與其外切方柱、方亭、方錐體積之比為π∶4,這是十分正確的論斷,不但對推算圓型立體體積給予了一條捷徑,而且是中國數學的一項突出成就。在推求球體積問題上,劉徽取一正方體,在正方體內作相互垂直的兩圓柱面,稱兩圓柱的公共部分為“牟合方蓋”,再在“牟合方蓋”里作一內切球,他深知“牟合方蓋”與其內切球體積之比為4∶π。雖然他未能求得球體積的算法,但提出“牟合方蓋”與其內切球體積之比,在算法理論上、數學思想上都是十分珍貴的。
在代數方面,劉徽也有不少杰出的貢獻。例如,他對分數、正負數及其運算都有獨到的論述,對于某些無理數即二次根數也有逼近的描述。在實數領域中,可以說中國古代已形成基本的體系。《九章》對“方程”即所謂線性方程組的解法,原是“直除法”,即是連續相減的消元法,劉徽把“直除法”推廣為“互乘對減”的加減消元法,并提出消去常數項法;使線性方程組的解法達到盡善盡美的地步。對于衰分算法、等比級數、等差級數、調和級數等項,都有創新工作。他還明確地給予等差級數的求和公式、通項公式、公差公式。即:
Sn=[a1+(n-1)(d/2)]×n
=n·a1+[n(n-1)]×(d/2)
an=a1+ (n-1) ×d
d= (am-an) ÷ (m-n)
其中“Sn”、“a1”、“n”、“d”、“an”以及“am”分別是等差級數的前n項之和、首項、項數、公差、第n項以及第m項。
劉徽對數學名詞改變了“約定俗成”的慣例,對一些名詞給予明確的定義,如把“率”定義為“凡數相與者,謂之率”。“等除法實,相與率也”。即是說,凡數與數之比,稱之為“率”,約簡兩數之比,則稱為“相與率”。并把“率”概念幾乎應用到所有算法之中,作為各種算法的主線。給正負數所下定義為:“今兩算得失相反,要令正負以名之。”還給“方程”下了正確的定義,既給出“方程”有確切解的條件,又給出 “方程”的同解理論,并創造性的給出 “方程”的新解法。此外,劉徽還對冪、齊同通、列衰、開平方、開立方、鱉臑、陽馬、塹堵、勾、股、弦等數學名詞都給出正確的定義。劉徽的這些定義,不但沒有含混不清之詞,也沒有循環定義之舉,都合于邏輯,因而成為演繹論證的理論依據。劉徽在推理演繹與證明方法上,既有歸納,也有演繹;既有綜合法,也有分析法,還有反證法; 在邏輯方面是十分豐富的。在中國數學理論的發展上,形成了第一次高峰。
西漢時期,主張蓋天學說的天文學家創造了測量日高、遠的方法,稱之為重差術,到劉徽時代,幾乎失傳。劉徽乃潛心研究測量原理,使重差術加以發展,并由兩次測望推廣至三次、四次測望,編撰九道測量問題,綴于《九章算術》之終。他說“輒造《重差》,并為注解,以究古人之意,綴于《勾股》之下。度高者重表,測深者累矩,孤離者三望,離而又旁求者四望”。唐代,李淳風為國子監審定數學教材,使另行單本,因其第一問為“今有望海島”,故稱之為《海島算經》。可見劉徽在測量理論上的成就是卓著的。
生活在南北朝宋、齊時代的著名數學家祖沖之及其子祖暅,對數學有很出色的貢獻,例如他們父子曾作《綴術》一書,可惜早已失傳。保留至今的,只有祖沖之所創造的圓周率,即:
介于盈朒二限:3.1415926<π<3.1415927
密率:π=355/113
約率:π=22/7
還有其子祖暅解決了劉徽所提出的“牟合方蓋”體積問題,從而得到球體積的巧妙證法。
在南北朝成書的數學名著有《孫子算經》及《張邱建算經》。《孫子算經》三卷,是一部數學普及著作,其中著名的問題有卷下“雞兔同籠”問題和“物不知數”問題。“雞兔同籠”題稱:“今有雉兔同籠,上有三十五頭,下有九十四足。問雉兔各幾何。”“術曰:上置三十五頭,下置九十四足。半其足得四十七。以少減多,再命之,上三除下四,上五除下七。下有一除上三,下有二除上五,即得。又術曰:上置頭,下置足。半其足,以頭除足,以足除頭,即得。”表示以現代形式,即:
上頭 35 下足 94 | 35 | 35 35-12=23(雉) |
半足94÷2=47(雙) | 47 47-35=12 | 12(兔) |
實即:(94÷2)-35=12 即是兔頭數35-12=23
即是雉頭數
這種問題實際是現今所謂“帶余除法”算法的延續;也是小學算術教材中難題“雞兔同籠”題的最早記載。“物不知數”題稱:“今有物,不知其數。三三數之,剩二;五五數之,剩三;七七數之,剩二。問物幾何。”也即現今之一次同余式組問題。表示以現代形式,設所求物數為N,則有:
《孫子算經》給出N的最小解為N=23。西方學者一直稱這問題為“中國剩余定理”,我們則稱之為“孫子定理”。
《張邱建算經》也是一部數學普及著作,書中涉及最大公約數和最小公倍數的正確求法,還有七道問題涉及等差級數及其解法,有的固然是繼承了《九章》的成果,但在等差級數方面,有更多的內容則是創新。如求出自然數之和、等差級數前n項之和、公差公式、通項公式、項數公式等,其形式分別為:
1+2+3+……+n=n(n-1)/2
Sn=(n/2)(a1+an)
d=2[(Sn/n)-a1]÷(n-1)
a1=an-(n-1) d
Sn=na1+n (n-1) (d/2)
n= [2 (m-a1) +d] ÷d
其中“n”、“Sn”、“a1”、“an”、“d”、“m”,分別是等差級數的項數、前n項之和、首項、末項、公差、前n項的算術平均值。在《張邱建算經》卷下,有一“百雞問題”,是著名的不定方程問題,即:“今有雞翁一,值錢五;雞母一,值錢三;雞雛三,值錢一。凡百錢買雞百只,問雞翁、母雛各幾何。”其術文過于簡略,只說“雞翁每增四,雞母每減七,雞雛每益三。即得”。所以很難通曉其具體算法。今以現代解法論述如次:設雞翁、雞母、雞雛的只數分別為x、y、z,依題意得:
《張邱建算經》給出三組答案,即是:
實際上相當于指出這一不定方程組的解是:x=4t,y=25-7t,z=75+3t。(其中參數t分別取1、2、3,即得其解。)書中所給三組答案,雖然《九章算術》已有不定方程的記載,但一題給以數種答卻始自《張邱建算經》。
在南北朝時代,還出現了較為通俗的數學著作,計有《五曹算經》、《五經算術》以及《數術記遺》等書。而《五曹算經》,是一部為地方行政官員所編寫的應用算術手冊,全書分為五卷,分別是“田曹”、“兵曹”、“集曹”、“倉曹”、“金曹”,其中共列有67道算術問題,其解法都很淺近,在計算中所用數字,好像有意避免使用分數;在“田曹”中,除了長方形、三角形、平行四邊形的面積計算公式正確外,其他腰鼓形、鼓形、四不等形的面積算法都是錯誤的。其《五經算術》,是把《詩》、《書》、《周禮》、《儀禮》、《禮記》、《論語》以及《左傳》里有關數字計算的問題,加以解說,雖然對于經學的研究有所幫助,但有些解說不免過于穿鑿附會。而《數術記遺》則是一部脫離現實的書,其中討論了 “三等數”,認為 “上數”是累進制,即:“上數者,數窮則變,若言萬萬曰億,億億曰兆,兆兆曰京也。”“中數”是萬萬進制,即:“中數者,萬萬變之,若言萬萬曰億,萬萬億曰兆,萬萬兆曰京也。”“下數”是十進制,即:“下數者,十十變之,若言十萬曰億,十億曰兆,十兆曰京也。”并把數分為“十等”,即億、兆、京、垓、秭、壤、溝、澗、正、載。還列舉了十四種不同記數法:即“積算”、“太乙算”、“兩儀算”、“三才算”、“五行算”、“八卦算”、“九宮算”、“運籌算”、“了知算”、“成數算”、“把頭算”、“龜算”、“珠算”、“計數算”等。
以上所述,就是中國數學在魏晉南北朝的輝煌成就。尤其是在三國時代,數學家趙爽及劉徽的貢獻與成就,使中國數學達到了輝煌的境界,從而形成中國數學的第一次高峰。

上一篇:三通學·踵作諸書——從“九通”到“十通”
下一篇:申韓學·現代申韓學研究·國內申韓學