1980年10月130期上一篇下一篇

#發行日期:1980、10

#期號:0130

#專欄:

#標題:劉徽與出入相補原理

#作者:洪萬生

第三世紀的偉大數學家

出入相補與面積

出入相補與體積

陽馬的體積與極限

多面體體積的理論基礎

結語

圖一

圖二

圖三

圖四

圖五

圖六

圖七

圖八

圖九

圖十

圖十一

圖十二

圖十三

:洪萬生現任教於師大數學系,本刊編輯委員。

 

 

 

 劉徽與出入相補原理


第三世紀的偉大數學家

古希臘的亞歷山卓時期文明,雖然延續到西元後640年被回教徒摧毀才告落幕,不過,它的頹勢卻早在西元前212年阿基米德被刺殞命時即已註定。到了西元後,雖然還出現了幾位有關於數學的傑出評註家,如巴伯斯(Pappus)、席恩(Theon of Alexandria)和普羅可勃斯(Proclus),但終究無補於希臘文明的式微。幾乎在這同時,東方的中國卻以輝煌的漢文明為基礎,成就了一位偉大的數學家──劉徽。

劉徽是三國時代人,生平與事跡均不詳,我們只知道他在魏陳留王景元四年(西元263年)注釋九章算術。在此一工作中,他創立「割圓術」(求圓周率的科學方法)、發明「出入相補原理」(核證面積、體積公式的正確性)及重差術(對句股測量方法做了進一步的延拓與發展)等等,都深具原創性,而連帶地也賦予原先側重解題形式的九章算術無窮的生命力與內涵。九章算術能成為東方文明中最傑出、最重要及影響力最為深遠的一部數學經典,論功行賞,劉徽應居首功。(編者案:句股的「句」同「勾」。)

九章算術約在東漢初期(西元1∼50年間)成書,其第一卷「方田章」專門討論面積的計算,包括的直線形計有正方形(方田)、長方形(廣田、直田)、三角形(圭田)、梯形(邪田、箕田)等,其中所給出的公式都是正確的。不過,九章算術的著述體例中只有問題、答案及解法,並沒有對解法所依據的原理作進一步的說明,它的形式還保有相當豐富的實用面貌。這個缺憾和不足便是被劉徽所彌補的。

出入相補與面積

我們都知道面積理論必須有一個起點,那就是假設「正方形或長方形的面積為邊長的乘積」這個基本前提(當然,也可以三角形的面積公式為一個起點,不過這個假設沒有前述的簡單),然後,由此推求三角形的面積公式,再進一步求得多邊形的面積公式。在劉徽的注文中,他並沒有敘述此一前提,但很顯然地已暗寓在他的論證之中。例如,九章算術中的三角形面積公式為「半廣以乘正從」(見圖一,相當於現代的1/2底×高),劉徽注釋道:「半廣者,以盈補虛為直田也。」意思是說:用「半廣」的理由,是為了應用「以盈補虛原理」,把三角形變換成1/2底(半廣)、等高的長方形(直田)的緣故(見圖二)。以盈補虛是一種「等積變換」──平面上保持面積不變的一種變換,在圖二中,它分別把「盈」的部分△BEL、△CGM變換成「虛」的部分△AFL、△AHM,使得我們可以由長方形的面積(公式)來推求三角形的面積(公式)。同樣地,給像圖三的梯形,劉徽仍用以盈補虛原理,把梯形ABCD變換成長方形EFGH,從而核證梯形ABCD面積公式1/2(BC+AD).EF的正確性。

在上一段的兩個例子中所使用的等積變換──以盈補虛比較簡單,在九章算術第九卷「句股章」中,劉徽把這種方法延拓得更為巧妙成熟了。在句股章第1、2、3題的解法「句股各自乘,并而開方除之即弦」的注文中,劉徽提出另一種等積變換──出入相補,用來證明商高定理a2+b2=c2,其中a、b及c為直角三角形(中國古稱「句股形」)的句、股及弦。數學史家推斷劉徽的構想可能是由c2=4.1/2ab+(b-a)2〔見圖四(2)〕,推得c2=a2+b2〔見圖四(3))。在本例中,應用出入相補原理可將圖中的正方形c2變換成「矩形」(形如現在木匠用的曲尺)。再有,對句股章第15、16題分別求直角三角形中的最大內接正方形的邊長x(見圖五)、內切圓的直徑d(見圖六),劉徽仍然是運用出入相補原理來推證

x=ab/(a+b), d=2ab/(a+b+c)

的正確性。其中出入相補原理,把兩個全等直角三角形所組成的長方形變換成另一個相關的長方形(請參見九章算術,與李儼等著中國古代數學簡史,九章出版社)。由本段三個例子看來,「出入相補」果然是「以盈補虛」的一種延拓,前者所處理的等積變換顯然複雜得多了。

出入相補與體積

接著,我們敘述出入相補原理在體積理論中的應用。九章算術中有關直線形立體體積計算,大都集中在第五卷「商功章」內,計有立方體(方堡壔)、長方體(方窖)、方錐(陽馬)、方台(方亭)、楔(堵,同塹,音槧,繞城水,溝也;掘也)、楔(臑,臑讀撓,蹄的下端)、楔(羨除)、楔(芻甍,甍音蒙,屋脊)、長方台(芻童)(見圖七)等體積公式。這些立體所具備的古典中文名稱,適足以反映它們在中國古代土木建築的用途。劉徽給出四種他稱為「棋」的立體模型:

一、立方(包括正立方體、長方體),

二、塹堵(斜割立方得二個塹堵),體積為1/2立方

三、陽馬(再斜割塹堵得陽馬、臑各一),體積為1/3立方,

四、臑=1/6立方,

然後把其他的立體分割成這四種棋的組合。比方,在核證商功章第10題方台的體積公式確為1/3h(ab+a2+b2)時(見圖八,其中a、b為方台上、下底正方形的邊長,h為方台的高),劉徽推得

abh=ABDCQRML+CDRQTU+BDRMNS+ABMLIJ+ACQLKP,

b2h=ABDCQRML+2(CDRQTU+BDRMNS+ABMLIJ+ACQLKP)

       +3(CQTGP+DRUHS+BMNFJ+ALIEK),

a2h=ABDCQRML

把上三個等式加起來,得

abh+b2h+a2h=3ABDCQRML+3(CDRQTU+BDRMNS+ABMLIJ

                +ACQLKP)+3(CQTGP+DRUHS+BMNFJ+ALIEK).

也就是他總共使用了27個棋,其中3個立方,12個塹堵,12個陽馬,總共可以拼成3個方台,故方台體積

V=ABDCQRML+CDRQTU+BDRMNS+ABMLIJ+ACQLKP

    +CQTGP+DRUHS+BMNFJ+ALIEK

   =1/3(abh+b2h+a2h)

   =1/3(ab+b2+a2)h

得證。為了方便讀者參閱,我們把劉徽的這一段注文抄錄如下(請注意劉徽所使用的a=1尺,b=3尺,h=1尺,1尺約為現在的21公分):「假令方亭上方一尺,下方三尺,高一尺。其用棋也,中央立方一,四面塹堵四,四角陽馬四。上下方相乘,為三尺以高乘之,約積三尺是為得中央立方一,四面塹堵各一。上方自乘亦得中央立方一,下方自乘為九,以高乘之,得積九尺,是為中央立方一,四面塹堵各二,四角陽馬各三也。上方自乘,以高乘之,得積一尺,又為中央立方一。凡三品棋,皆一而為三,故三而一,得積尺。用棋之數,立方三,塹堵陽馬各十二,凡二十七棋。十二與三更差次之,而成方亭者三,驗矣。」同樣地,劉徽也使用類似的方法核證了其他的體積公式,如芻甍體積=1/6ch(a+2b),羨除體積=1/6(a+b+c)hl,芻童體積=1/6[(2a+c)b+(2c+a)d]h,讀者請自行參閱九章算術。

從上一段的討論,我們也可以很明顯地看出劉徽在那四個棋中,以「立方體(長方體)體積=長×寬×高」作為一個根本假設之事實,不過,他一樣未曾明白指出。有了長方體的體積公式做為一個起點,運用出入相補原理,我們是否可以輕易地導得四面體的體積,從而建立體積理論?這是模仿面積理論的建構方式來考慮的(參見本文出入相補與面積一節)。事實上,問題並沒有那麼簡單。西元1834年,高斯曾提及如果不使用極限程序,是否不能證得角錐體的體積?這是著名的希伯特23問題中的第三個之基礎。西元1900年,德國大數學家希伯特(D. Hilbert)在國際數學會議中,提出有名的23個問題,作為二十世紀數學研究的指導方向。其第三個問題可簡述如下:不可能只用到幾何圖形的全等公理來證明同底等高的兩個四面體的體積相等。這個問題隨即被德恩(M. Dehn)所解決(1900年),德恩證明:兩個多面體要分割成彼此重合的多面體,必須滿足所謂的德恩條件。不過,問題仍然沒有獲得完全的解決,德恩條件的敘述複雜,也很難令人感到滿意。

陽馬的體積與極限

在這樣的背景下,我們來回顧劉徽推求陽馬(四角錐)體積的方法是很有意義的。因為在他的推證過程中,劉徽明確地運用了極限步驟,我們可想像他在應用出入相補原理時,應該也面對了上述的難題,所以才結合極限來加以克服。至於像高斯和希伯特所提出那種概念層次的問題,即使劉徽曾經覺悟,恐怕也不是中國古代傳統算家治算的焦點。現在,就讓我們來看劉徽核證陽馬體積公式的方法吧!商功章第15題所給出的陽馬體積公式為「廣袤相乘(按即得底面積),以高乘之,三而一。」劉徽在注文中說:「假令廣袤各一尺,高一尺,相乘之得立方積一尺(按即現在的一立方尺)。邪解立方,得兩塹堵。邪解塹堵,其一為陽馬,一為臑。陽馬居二,臑居一,不易之率也。合兩臑成一陽馬,合三陽馬而成一立方,故三而一。驗之以棋,其形露矣。」明白地指出,如果斜割立方,則成為兩個塹堵,再斜割塹堵,就得到一個陽馬,一個臑,並且進一步提出「劉徽原理」:「斜割一長方體,則其陽馬的體積是臑體積的兩倍。」如此,合兩臑成一陽馬,合三陽馬而成一立方,所以,陽馬體積=1/3(同底面積等高的)立方體積。在接著下來的一段注文中,劉徽考慮由一般的長方體所斜割得到的陽馬與臑,並仍然斷言後二者的體積比率為2:1。然後,他又說:「其使臑廣、袤、高二尺,用塹堵、臑之棋各二,皆用赤棋。又使陽馬之廣、袤、高各二尺。用立方之棋一,塹堵、陽馬之棋各二,皆用黑棋。棋之赤黑,接為塹堵,廣、袤、高各二尺。於是中效其廣,又中分其高,令赤、黑塹堵各自適當一方,高二尺,方二尺(按此句可能是「高一尺,方一尺」之誤),每二分臑則一陽馬也(按此句也可能是「每二分,則一臑一陽馬也」之誤)。其餘兩棋各積本體,合成一方焉。是為別種而方者率居三,通其體而方者率居一。雖方隨棋改,而固有常然之勢也。按餘數具而可知者有一、二之別,即一、二之率定矣。其於理也豈虛矣。若為數而窮之,置餘廣袤高之數各半之,則四分之三又可知也。半之彌少,其餘彌細。至細曰微,微則無形。由是言之,安取餘哉。數而求窮之者,謂之情推,不用籌算。臑之物,不同器用。陽馬之形,或隨脩短廣狹。然不有臑,無以審陽馬之數,不有陽馬,無以知錐亭之類,功實之主也。」在這一段注文中,劉徽告訴我們核證「陽馬體積等於兩倍臑體積」的方法,底下,我們試用現代的數學符號來加以解說。

給一個陽馬(見圖九),底面(長方形CDFE)邊長各為a、b,高BD=h(按劉徽採用特例a=b=h=2尺來著手,不過其處理手法對一般的a、b、h也會成立)。可取一個廣、袤、高亦分別為a、b、h的臑接合成為一個塹堵(見圖十),其中BDCEF為陽馬、ABCE為臑、ABDFEC為塹堵。令 

c=塹堵ABDFEC的體積,

y=陽馬BDFEC的體積﹐

p=臑BACE的體積﹐

則由於劉徽已證得c=1/2abh(見商功章第14題注文),因此,如要證明y=1/3abh,則須證明y=2p(因為c=y+p)。現在,分別以下列方法區分臑和陽馬:如圖十一,IJML垂直ACE,且J為AC中點,GIL垂直IJML,PLM垂直IJML;如圖十二,HILK垂直BDF,且H為BD中點,KLPN垂直CDFE,ILQR垂直CDFE(注意到HILK平行於CDFE)。則臑BACE就可以區分成兩個(小)塹堵AGIJML、ILMJCP,及兩個(小)臑BGIL、EPML(按即劉徽注文中的「赤棋」);陽馬BDFEC可區分為1個(小)長方體HILKNDRO,2個(小)塹堵ILORCP、KLONFQ,及2個(小)陽馬BHILK、LOPEQ(按即劉徽注文中的「黑棋」)。今黑棋中的長方體與塹堵的體積恰為赤棋中塹堵體積之2倍,所以要證明y=2p,其實只需證明:黑棋中的兩個全等(小)陽馬BHILK、LOPEQ體積為赤棋中兩個全等(小)臑BGIL、EPML體積的2倍就行了,也就是,如設y1是由大陽馬所產生的一個小陽馬的體積,p1是由大臑所產生的一個小臑的體積,則只需證明y1=2p1就行了。如再設c1為一個小塹堵的體積,則有

y=4c1+2y1,

p=2c1+2p1,

c1=y1+p1.

模仿同樣的區分法,設ckyk及Pk(k≧2)分別表示第k次區分所得到的一個塹堵、陽馬及臑之體積,並令c0=c、y0=yp0=p,則對正整數k≧1,有

yk-1=4ck+2yk          (1)

pk-1=2ck+2Pk          (2)

ck=yk+pk                 (3)

因此,如想證明yk-1=2pk-1,勢須證明yk=2Pk不可。由此可見,不運用極限程序是無法證明y=2p的。

對任意正整數n,由(1)、(2)、(3)式,我們有

c=c0=y0+p0=y+p=8c1=23c1=23(23c2)=22×3c2==23ncn    (4)

瀏覽原件

接著,令Sn=22c1+23c2++2ncn-1,Tn=2c1+22c2++2n-1cn-1,由於yn-1+pn-1=6cn+2(yn+pn)=6cn+2cn=8cn,故知在第n次的區分中,總有2n-1yn-1+2n-1pn-1中的3/4(=6/8)(體積)一起併入Sn與Tn之內,而分別成為Sn+1與Tn+1。這就是劉徽所說的「若為數而窮之(按即窮盡這種計算),置餘廣、袤、高之數各半,則四分之三又可知矣。」再由(3)、(4)式,

0<yn-1<cn-1=2-3(n-1)c,

0<pn-1<cn-1=2-3(n-1)c,

可得

0<2n-1yn-1<2n-1cn-1=2-2n+2c,

0<2n-1pn-1<2n-1cn-1=2-2n+2c,

取極限,

瀏覽原件

(半之彌少,其餘彌細。至細曰微,微則無形)。這樣看來,區分到最後,剩下來的已經「無形」,所以就不用加以考慮了(由是言之,安取餘哉):

瀏覽原件

得證 y=2p=2/3c=2/3.1/2abh=1/3abh。

多面體體積的理論基礎

劉徽對陽馬體積的推求原理與程序,由於年代久遠,文字錯誤脫落,很多文句非常難以索解,所以上文中最後兩個極限步驟,純是筆者針對劉徽注文所作的一種現代化解釋,但劉徽本意是否如此,則不敢百分之百確定。不過,可以確定這是一個結合出入相補原理與極限過程的方法。將來如能把這一段文字徹底弄清楚,說不定對數學史,或對方興未艾的多面體理論之研究,都會有可觀的貢獻。在這一段注文的最後,劉徽還特別指出,雖然臑沒有實際用途,而且陽馬的形狀也可能或長或短、或寬或狹,然而,沒有臑,便無法求得陽馬之體積;而沒有陽馬,則錐、亭(台)之類的體積便無法推知,因此,臑、陽馬真可以說是「功實之主」。事實上,由於每一個多面體都可區分為幾個四面體,而任一個四面體(臑是特別的一種)又可區分成六個臑(見圖十三),所以多面體的體積理論,除了可以建立在歐幾里得的全等公理與希伯特所添加的連續公理(見希伯特的名著Foundation of Geometry)外,也可以奠基於劉徽原理與出入相補原理。這個令人驚奇的結果,大慨不是第三世紀的劉徽所可以預見得到的。

結語

從以上的論述,我們可以看出劉徽在體積理論上取得了非常高的成就(不管他是自覺的或是不自覺的),更重要地,我們也可以看出,他企圖超越中算溯自九章算術側重實用傳統的興趣。至於他所發明的割圓術和重差術,則請讀者參看有關中算史的專書,此處不贅。

參考資料

1.吳俊雄 出入相補原理 數學傳播第三卷第四期p.6∼22

2. D. B. Wagner, "An Early Chinese Derivation of the Volume of a Pyramid:Liu Hui, Third Century A.D.", Historia Mathematica, 6:164∼188, 1979.

(筆者承這兩篇傑作教益良多,本文希望能給它們做一個腳註。)

 

 

 
   

回到最上面

 

科學月刊全文資料庫

最佳瀏覽解析度800*600,請使用IE4.0以上版本的瀏覽器

科學月刊雜誌社.金台灣資訊事業有限公司.圖龍文化事業股份有限公司版權所有
Copyright 2000 Science Monthly and King-Taiwan Information Technology Inc. All Rights Reserved.