王鑫義,郭世榮
(內(nèi)蒙古師范大學(xué) 科學(xué)技術(shù)史研究院,內(nèi)蒙古 呼和浩特010022)
徐有壬(1800—1860),字君青(鈞卿),浙江烏程(今湖州市)人,晚清八大算學(xué)家之一[1]。他所著的《測圓密率》三卷(1840年前后)是在沒有受西方近代數(shù)學(xué)影響之下獨立研究的結(jié)果,共有56“術(shù)”,每“術(shù)”即為一個公式?!陡顖A八線綴術(shù)》(以下稱“《綴術(shù)》”)則是他的代表作,原作三卷,后由吳嘉善(1820—1885)述草(1862)和左潛(?—1874)補(bǔ)草(1873)為四卷,該書包括了《測圓密率》中全部的級數(shù)展開式,并創(chuàng)造了推求級數(shù)展開式的“綴術(shù)”。
關(guān)于徐有壬的《測圓密率》和《割圓八線綴術(shù)》,李儼[2]、錢寶琮[3]、李迪[4]、王海林[5]、孫力[6]、羅見今[7-8]和張升[9]等對此有過詳盡分析,各有側(cè)重,但對“綴術(shù)”的中算來源只有一些零星討論,忽略了“綴術(shù)”作為運算方法這層意義,且對“因式立術(shù),由術(shù)立法”的實質(zhì)闡述不多。鑒于此,本文以徐氏《測圓密率》和《割圓八線綴術(shù)》為研究對象,對相關(guān)問題做進(jìn)一步的考察和分析。
清代數(shù)學(xué)家真正全面掌握天元術(shù)是從李銳(1769—1817)完全讀懂《測圓海鏡》開始的。此后,清代中后期的數(shù)學(xué)家對天元術(shù)和借根方都很熟悉,對二者關(guān)系的認(rèn)識也逐漸深入[10]。
1822年,徐有壬首次讀到《四元玉鑒》鈔本后,“積思三晝夜,寫出細(xì)草”[11],他未刻的《四元算式》是對《四元玉鑒》的細(xì)草,也是清代研究《四元玉鑒》最早的著作。黎應(yīng)南在《演元九式》序中稱“徐有壬甄而明之,使讀者有下手處”[12],認(rèn)為徐氏通曉并幫助讀者理解四元術(shù)。徐有壬對《四元玉鑒》的深入研究,為以后羅士琳(1789—1853)的細(xì)草和其他人的注釋起了重要作用[5]12,從徐氏給羅士琳《演元九式》(1827年)的序中也可看出,他是完全理解四元術(shù)的數(shù)學(xué)含義及相消方法的[13]。此外,徐氏曾將《四元玉鑒》3冊寄贈朝鮮學(xué)者金正喜[14];沈欽裴(《四元玉鑒細(xì)草》三卷,1829年)、羅士琳(《四元玉鑒細(xì)草》三卷,1835年)對四元術(shù)的理解也都受到了徐氏的影響??梢哉f,徐有壬為四元術(shù)于清代被重新理解的關(guān)鍵人物[13]45。
徐有壬在研究《四元玉鑒》的基礎(chǔ)上,對垛積招差之法最有心得,而其《造各表簡法》(又稱為《垛積招差》)早在1856年已經(jīng)寫成[15]。他在《造各表簡法》的序中寫道:“余讀《四元玉鑒》,究心于垛積招差之法,推之割圓諸術(shù),無所不通?!保?6]事實上,徐有壬研究割圓術(shù)比戴煦和李善蘭都早,并把垛積招差二法運用到了割圓問題中。
1859年,馮桂芬與徐有壬一起研究《代微積拾級》,徐有壬認(rèn)為:“是法壬叔外鮮能通曉,書中文義語氣多仍西人之舊,奧澀不可讀,惟圖式皆可授,宜以意紬繹圖式,其理自見?!保?7]表明他對李善蘭等的翻譯工作并非全然接受。在《綴術(shù)》中,徐氏比較了代數(shù)學(xué)與天元術(shù)??梢?,徐有壬未用代數(shù)學(xué),一是表達(dá)的不便性;二是運算的繁瑣性;三是深諳天元術(shù)的本質(zhì),并非完全的泥古不化;但與中西兩種文化固有的觀念和方法不無關(guān)系。
需要注意的是,徐有壬同時掌握借根方,深諳天元術(shù),又接觸過代數(shù)學(xué)。他在研究《四元玉鑒》并為之補(bǔ)細(xì)草時強(qiáng)調(diào)天元術(shù)的重要性與實用性,在《綴術(shù)》中則與左潛都表明天元術(shù)優(yōu)于借根方,并把“綴術(shù)”視為天元術(shù)的變形,而在讀到《代微積拾級》時,又指出其佶屈聱牙、晦澀難懂。這些不同階段的觀點反映了他研究天元術(shù)、借根方與代數(shù)學(xué)的動機(jī)與動力的不同,不只反映了天元術(shù)與代數(shù)學(xué)這兩種主流學(xué)術(shù)傳統(tǒng)的競爭與比較的過程。天元術(shù)、四元術(shù)與借根方對理解代數(shù)學(xué)起了很大作用,反過來,西方代數(shù)學(xué)也是幫助理解天元術(shù)、四元術(shù)和借根方的重要工具。
算式由三部分構(gòu)成:率名(即連比例各率,用一、二、三等表示率名)、率數(shù)(即分子或乘數(shù),用商業(yè)暗碼〡、〢、〣、〤、〥等表示)和除法(即分母用小字旁書寄于率上)。
對于“率式”,在“比例法”中有所說明:“比例既畢,乃取各式之四行齊等列而相并,得數(shù)重列之,為所求各率式也。”[18]所謂“各率式”是指用“比例法”求得的每行率式,“算式”僅指其中的一部分,實指單項式,而“各率式”是多項式或是多個單項式的和。由于這些“算式”共存于一式即“率式”,各項之間構(gòu)成連比例,因此,對于“率式”也可以按各算式的相關(guān)規(guī)則去運算。
對于“級數(shù)式”,徐有壬先在《綴術(shù)》卷二中引入了“級數(shù)”:“新譯西算所云‘級數(shù)’是也,其求法初若繁重,究之得數(shù)級后,其余‘級數(shù)’可以推類,而得以等級井然也?!保?8]由此說明:一方面徐有壬已見到《代微積拾級》,將“級”解釋為“等級”;另一方面,他對“級數(shù)”的認(rèn)識只具其形,在發(fā)現(xiàn)所蘊含的規(guī)律后,通過類推,以期各率式的求解能依附于“級數(shù)”之形。
在《綴術(shù)》卷四中,徐有壬使用了“級數(shù)式”這一術(shù)語,因在前幾卷中討論的對象是“術(shù)”,而卷四中討論的對象由“術(shù)”變?yōu)椤笆健?,且他在尋求“立法之原”時,試圖給出具有一般性的適用方法。
《綴術(shù)》卷一的預(yù)備知識中還給出了加、減、乘、除法,齊母通分和化分。其中的乘法是用一常數(shù)乘,若所乘常數(shù)與分母有公因子,可用約去分母中的公因子來代替作乘法。若分母不同者,先齊其分,即用通分法互乘后再相加。“化分”主要為了解決同率名中分母不統(tǒng)一的問題,如:
依據(jù)“齊母通分”,“互乘齊之”,“變其式不變其實”,使得弦求矢式的各率式中的分母成“二、二四、二四六”等依次遞增之?dāng)?shù),同時與西算中級數(shù)表達(dá)形式保持一致。
“比例法”是基本方法,“還原術(shù)”和“借徑術(shù)”等都以“比例法”為前提,也是“比例法”的應(yīng)用拓展?!胺驳谝恍惺街灰晃徽哂么朔ā保?8],此時第一率式為算式即單項式。較之“比例法”,“比例商除法”的適用范圍更廣,可將“比例法”納入其中。由“正弦求余弦式”,用“比例商除法”得“弦求切式”,記“弦求切式”的各率名為?n,正弦為?2,半徑為r=?1,所求的正切為tanα,余弦為cosα,有:
在《象數(shù)一原》(1843年)卷二“半分起度弦矢率論”中,項名達(dá)所用的“除法式”與戴煦在《外切密率》(1852年)中推導(dǎo)本弧求切線時所用的方法是相同的。從著作的完成時間看,“比例商除法”并非徐有壬首先使用,但他首先給出該方法名稱。
“借徑術(shù)”相當(dāng)于“代換法”,“還原術(shù)”先把“算式”變?yōu)椤奥适健保谩氨壤ā鼻蟾髀适?,將兩率式相乘,通過各率式的加減,最后只剩一新的算式,即為所求。這一過程與明安圖的“反求”、李善蘭的“回求”等計算思路大體一致。
《綴術(shù)》卷二伊始,徐有壬表明了欲得“綴術(shù)”的前提是求得各率式,各率式“連綴而下”,依據(jù)連比例各率,再以各率式為基礎(chǔ),將“式”變?yōu)椤靶g(shù)”。并指出了“綴術(shù)”“能于算術(shù)中自成一隊者”[18],是因為在“弦求矢”等問題時,對于出現(xiàn)的開方問題,可通過屢乘屢除的方法來解決。
前人對徐有壬的幾何證明作了細(xì)致詳盡地推導(dǎo),本文不再贅述。在這一過程中,徐有壬運用了“出入相補(bǔ)原理”“今有術(shù)”“三要法”等初等方法,并結(jié)合了“比例商除法”“還原術(shù)”“借徑術(shù)”等推導(dǎo)方法。事實上,并不是徐有壬首先使用此類初等方法解決級數(shù)展開問題,早在《割圓密率捷法》卷三的“三法”中,明安圖構(gòu)造了新的幾何圖形,創(chuàng)造出求二分全弧通弦的方法,在論述中使用了“廉”①指磬折形一側(cè)邊之長。、“隅”②指拐角小方形的寬度。和“廉隅共積”③指磬折形面積,即兩長方、正方的和。等術(shù)語,依次求得初商、次商和三商等,明氏所構(gòu)造的這一幾何模型是用無窮級數(shù)來逼近平方根[19]。明、徐作法的不同之處在于前者依據(jù)開方術(shù),后者避開開方術(shù)?!端脑耔b》中的類似問題也運用了“出入相補(bǔ)原理”,徐有壬研究了《四元玉鑒》后,對其中的題目及其解題方法都較為熟悉。
李儼曾依徐氏原意給出了《測圓密率》中弧背求正切式前六項的系數(shù)分子,后來嘗試將“一差至四差”等公式化,但結(jié)果并不明顯。《測圓密率》卷三第13、14、17、18術(shù)中均已出現(xiàn)了正切數(shù),但結(jié)果不夠清晰[7]856。張升[9]111將徐有壬的和式進(jìn)行了重新組合,對卷三中“差”的系數(shù)用公式明確地表示出來,并對“差”作了進(jìn)一步研究,重新組合得到了形式上的美觀,而徐有壬對此略而不述,如此組合仍舊不能擺脫“差”對第幾數(shù)的依賴。其中的正切級數(shù)展開式含有加差形式,是因為徐氏以研究每項之間的遞推規(guī)律為主要目的,加減差則是輔助函數(shù)形式[5]39。
在《綴術(shù)》卷四中,他將各率式轉(zhuǎn)化為含有加減差形式的各術(shù),所關(guān)注的不再是如何方圓互化,而是如何由“算式”變?yōu)椤奥适健痹僮優(yōu)椤靶g(shù)”,由“術(shù)”再尋求“立法之原”。徐氏將得到的各式分為不含加減差和含有加減差,前一類的各率式系數(shù)分子可用遞推關(guān)系來統(tǒng)一表達(dá),后一類則無法得到統(tǒng)一的表達(dá)式?!凹鹊酶髑笫剑丝砷F而為術(shù),未能求得差根無可立為術(shù)”[18],表明立術(shù)的前提是求得差根,而求得差根則是立術(shù)的關(guān)鍵。在“弦求矢式”中,他引入了“分段除法”和“分段乘法”,含有加減差中各式的“分段除法”與“分段乘法”規(guī)律較為明顯,并且可遞推,不含加減差中各式的“分段除法”規(guī)律明顯,而“分段乘法”規(guī)律不明顯,需用加減差的形式來解釋。為什么徐有壬會引入“綴術(shù)”來研究各項之間的關(guān)系呢?實際上,要想找到級數(shù)展開式的規(guī)律就需研究每項的系數(shù)規(guī)律,徐有壬在明安圖和董祐誠等人的工作基礎(chǔ)上,觀察到各項之間的比例關(guān)系,加之有些個別率式中的分子分母有著特殊的比例關(guān)系,為此,他想從整體上把握并尋求統(tǒng)一的解決方法,雖在《綴術(shù)》中通過大量的計算求出了各加減差,卻未能確定求各加減差的遞推規(guī)律,故未能立術(shù)。
在“比例法”中,徐有壬將方格分為“除、乘、實、得”,滿足“乘×實÷除=得”,每個式子相當(dāng)于單項式與多項式相乘的運算?!叭舸笮“司€相求,則中兩行相乘須畫方格如天元術(shù)乘法逐層求之”,因為在大小八線相求中,某些率式中的“率數(shù)”不是常數(shù),而是多項式,所以要用天元術(shù)[4]666??梢?,在簡單的“比例法”中“乘”和“實”兩列的計算量較小,操作簡單,基本為單項式與多項式相乘,但在大小八線相求的“乘”和“實”兩列中,運算對象變成了多項式,需要進(jìn)行多項式與多項式相乘,計算量較大,涉及的步驟較多,因此,方格法可以根據(jù)實際的運算對象和計算量的多少來選擇。
吳敬將“格子算法”稱為“寫算”,程大位稱為“鋪地錦”[20]。寫算在后來影響很大,清代數(shù)學(xué)著作涉及寫算的很多[21]。在《綴術(shù)》中稱為“方格捷法”,使人們對“鋪地錦”有了新的認(rèn)識?!胺礁窠莘ā钡闹匾饔迷谟?,一是在方格內(nèi)可進(jìn)行齊母通分再相加減的操作,二是在方格內(nèi)通過虛線的聯(lián)結(jié)即把相同率名的算式放一起,便于進(jìn)行同類項的合并。
一般而言,尾數(shù)的截留包括兩個方面:項數(shù)的截留(即算至哪一項停止)和奇零小數(shù)的處理(即實際應(yīng)用時對小數(shù)的處理)。在《綴術(shù)》中,有六處專論尾數(shù)截留的問題,多出現(xiàn)在左潛的“案語”中。如在“弦求矢式”中,“用比例法求其三率五率,以下各式列之,至十一率止。十一以下連綴不盡,今每式止求五位,故尾數(shù)截去不用也”[18]。求五位是指只求三率、五率、七率、九率和十一率。若半徑取1,則從首項開始得數(shù)即為小數(shù)。在實際運算中,當(dāng)取偶數(shù)各率時到?10,取奇數(shù)各率時,到?11止[4]674。左潛在《綴術(shù)釋明》中指出:“求至十一率止,以下截去不用,緣級數(shù)式不必多求也”[22],把原來的“各率式”視為“級數(shù)式”,他們已認(rèn)識到級數(shù)展開式的項數(shù)是“無窮無盡”的。早在《測圓密率》的每術(shù)之后,徐有壬就有“如是遞求,至單位下而止”的表述,這一點和明安圖的表述相同,即求至出現(xiàn)小數(shù)時停止計算。
可見,徐有壬在一開始就指出各率式是“連綴不盡”的,并在計算之前就規(guī)定了求至十率或十一率,不關(guān)注各率式中數(shù)值的變化,也不關(guān)注求至十率或十一率后造成的誤差問題。但是,徐有壬對“連綴不盡”和“級數(shù)式”等的表述,說明了他對級數(shù)“無窮無盡”的更深層次的認(rèn)識。戴煦對這一問題則給出更為詳細(xì)地分析和說明。
在《綴術(shù)》卷二中,“求式者連綴而下,連比例各率之式”,即是利用連比例關(guān)系求出各率式之系數(shù),從而將“式”變?yōu)椤靶g(shù)”。從卷四“大小八線相求各式”起,排列方式也發(fā)生了變化,由“豎列之”調(diào)整為“橫列之”,“因各算式太繁,故改用橫列”[18],原豎列的各算式中率數(shù)為單層即單項式,當(dāng)率數(shù)變?yōu)槎鄬蛹炊囗検降臅r候,豎列的方式不便于表達(dá)。對于“橫列”后如何表達(dá),徐有壬亦有詳細(xì)介紹:“其率上旁書者為累除法,率下算式為乘數(shù),與前各式例同,其乘數(shù)有數(shù)層者,非累乘法數(shù),乃天元式也?!保?8]雖調(diào)整排列方式前后各式大體相同,均有三部分構(gòu)成,對于構(gòu)成要素來講,卻有很大變化。豎列時的各算式由率名、率數(shù)和寄母構(gòu)成,橫列后的各算式由率名、累乘法和累除法構(gòu)成,率名的奇偶不同所表達(dá)的意義也不同?!袄鄢ā奔聪禂?shù)的分母,“累乘法”的表達(dá)較為復(fù)雜,若為單層(即單項式)時與豎列的情形相同,若為多層(即多項式)時需用天元術(shù)的表達(dá)方式。
徐有壬為何提出“斜綴而下”?一是在方格中進(jìn)行各算式或各率式的加減和率式的自乘(即“鋪地錦”方法);二是計算含有加減差的各率式時,計算量較大,通過“斜綴而下”可驗證或直接給出該率式中后續(xù)幾項??梢姡靶本Y而下”是由方格的形式或豎列形式所帶來的結(jié)果,如果換為橫列的形式,以天元式表示,這一效果并不明顯,但徐有壬并非發(fā)現(xiàn)某種對應(yīng)后就以“斜綴而下”作為立術(shù)的依據(jù),而僅是將“斜綴而下”作為驗證的方法。一般情況下,“連綴而下”指同一率式,“斜綴而下”指不同率式,因含有加減差,前者只關(guān)注率名的變化而不關(guān)注其它變化,后者不僅關(guān)注率名而且關(guān)注各算式中分母的變化規(guī)律。但需要注意的是,“連綴而下”和“斜綴而下”均包含了徐有壬對級數(shù)展開中“無窮無盡”的把握,并非完全直觀層面上的認(rèn)識。
“是故‘綴術(shù)’之生,因于明氏而又足以盡明氏之變,明氏之未能立式也。試取明氏書馭之以‘綴術(shù)’,其遞降各率,頃刻可求”[23],顯然,左潛把徐氏“綴術(shù)”視為一種推求方法。以往對《綴術(shù)》的研究中,更多的是將“綴術(shù)”視為一種表達(dá)相關(guān)運算操作的方法。
從形式上來看,徐有壬接觸并深入研讀了《四元玉鑒》后,使用了其中的術(shù)語和表述方式,指出了“借根方”在表達(dá)大小八線相求等問題上的局限性,即分母為多項式時無法有效表達(dá)。同時,西學(xué)作為“他者”,徐有壬等人不僅對西學(xué)作出了回應(yīng),而且重新審視了中算。中算家的級數(shù)表達(dá)式至徐有壬才開始趨于符號化[24]32,“綴術(shù)”的影響比微積分方法的影響更深遠(yuǎn)。如,左潛于《代微積拾級》《代數(shù)術(shù)》等書出版以后孜孜不倦地發(fā)揮徐氏“綴術(shù)”,又如,一些中算家在比較了“綴術(shù)”和“微積分”之后,明知微積分有許多優(yōu)越性,卻試圖把微積分和“綴術(shù)”放在同樣的位置上,究其心理正在于“綴術(shù)”為“國粹”[25]。
從方法上來看,《綴術(shù)》中徐有壬將“式”(算式)化為“術(shù)”,試圖確定展開式中的每一項均以其前若干項的多項式形式表達(dá)的遞推規(guī)律[6]87,再由此遞推求得展開式任意項的表達(dá)式?!熬Y術(shù)”是《綴術(shù)》中“比例商除法”“還原術(shù)”和“借徑術(shù)”的總括[26],把幾種運算手段有機(jī)地結(jié)合起來,建立一種演繹體系[26]64?!熬Y術(shù)”雖只是其表現(xiàn)形式,究本質(zhì)而言,當(dāng)為無窮級數(shù)遞推研究[24]。至于“綴術(shù)”的計算,是通過對原算題的變式從原算法基礎(chǔ)上推衍出新的算法,前提則是根據(jù)各率式結(jié)構(gòu)的不同,即是否含有加減差先求得各率式,于是各率式的分母有法可尋,而其分子無法可依。
“因式立術(shù)”是建立在“算式”的基礎(chǔ)上,用“綴術(shù)”處理級數(shù)問題的一個關(guān)鍵環(huán)節(jié),“術(shù)”是在“式”的基礎(chǔ)上提煉而出的[6]92。其中的算式實指單項式,各率式實指多項式或無窮級數(shù),“術(shù)”為一般的無窮級數(shù)。整數(shù)的一些性質(zhì)確實能夠“移植”到多項式上來[27],反過來,整式到整數(shù)也可以進(jìn)行形式轉(zhuǎn)換。徐氏之本意是由單一的形式完全統(tǒng)一起來,從而形成一個相互依賴的比較嚴(yán)密的新體系,從整體上研究進(jìn)而尋求統(tǒng)一的作法。
如上所述,徐有壬創(chuàng)造“綴術(shù)”與他剛開始接觸四元術(shù)有關(guān),“綴術(shù)”即為天元術(shù)的變形,其最終目的是以“綴術(shù)”來實現(xiàn)“因式立術(shù),由術(shù)立法”,其中的算式指單項式,率式指多項式或無窮級數(shù),“綴術(shù)”則是將“級數(shù)式”作為一個整體入算,借助四種計算方法推求級數(shù)展開式?!熬Y術(shù)”除了作為一種級數(shù)表示法之外,更是一種運算方法,“連綴而下”即遞推,“綴”是形,“術(shù)”是質(zhì),“綴術(shù)”的質(zhì)是由“綴術(shù)”的形——連綴之形來反映,而“綴術(shù)”的形須由“綴術(shù)”的質(zhì)才能顯現(xiàn)。概言之,其本質(zhì)是以算式和率式為基礎(chǔ)的連綴而成的運算方法?!耙蚴搅⑿g(shù),由術(shù)立法”則表明了徐有壬在探求內(nèi)在原理時,欲將單項式與多項式推廣至無窮多項,從而使算式與各率式滿足級數(shù)式的相關(guān)條件。