【算數書】是1983、1984年之交出土於湖北江陵張家山247號墓一部抄寫於竹簡上的數學著作。該書的抄寫下限為公元前186年,其著作年代自然會更早些,比傳世最早的中國數學經典【周髀算經】和【九章算術】的編定至少還要早一個世紀左右。由於內容非常豐富,自2年前公佈它的釋文以來[1],【算數書】已引起海內外很多學者的注意,除原整理者陸續發表的兩個校釋本外,還有一批學者從事校釋研究。由於該書出土時已散亂,保存狀態不理想,原簡的抄寫工作也較粗疏,因此我們不能期望在短時間內發現和解決它的所有問題。本文主要針對【算數書】中前人已經努力但尚未真正弄清的『舂粟』條提出新的校釋意見。
整理小組為該條所作的釋文如下:
舂粟 A粟一石舂之為八斗八升,當益m粟幾何?曰:二斗三升十一分升八。術曰:直所得米升數以為法,又值一石米粟升數而以m米升數乘之,如法得一升。[2]
『A』的意思是賜予、給予或接受、承受,這裏可理解為領取。『益』是增加、增補之義。『直』和『值』是『置』的假借字,整理小組已經指出[1]。『置』是中國傳統數學常用術語,由於古代用竹製或木製算籌計算,所以用『置』字,即放置之義。中國古代數學把除數稱為『法』,被除數稱為『實』,用除數去除被除數稱為『實如法而一』或類似的說法,本義是實中有一個法就得到一,言下之意即實有多少個法就有多少個一。『舂粟』條沒有出現『實』字,但容易看出術文中涉及乘法和除法。『m』既可以是一種稻,也可以通『耗』,表示消耗、損耗。經過這樣的疏解後,我們不難理解此條的字面意思。但是,這距離把文字和題設、算法等讀通,還差得遠。蘇意雯、蘇俊鴻、蘇惠玉等即說『本題因無法了解其題目意含,故不予解讀』[3]。
彭浩、郭書春、郭世榮、吳任哲等先生為解讀『舂粟』條做出了貢獻,但還沒有取得令人滿意的結果。不過,大家都承認在問句『當益m粟幾何』前原文脫落了一個已知條件,這是當然是毫無疑問的。
彭浩先生在問句前補已知條件『今舂粟一石八斗八升』,這種校補也許是把脫文的部分原因歸結為脫落了重文號。原文沒有出現『實』字,彭以為有脫文,乃於『乘之』後又補『以為實』三字。他把第一句理解為10斗粟舂為米8斗8升,粟和米之差1斗2升為相應的m粟,認為『舂粟一石八斗八升』的m粟為:12升×188÷88=25 升=2斗5 升。於是他把答數的『三』和『八』分別校改為『五』和『七』。[4]
整理小組基本上沿用了彭先生的校勘(彭先生是【算數書】的主要整理者),只是把已知條件補為『舂粟一石八斗八升』,少補一『今』字[2]。
按上述校勘,粟的出米率達88%,這實在是太高了。據【算數書】的『程禾』條,由粟舂出的米,以糲為最粗,其出米率亦只有60%(詳下文),該書的其他地方也是用這個比率。所以,把第一句理解為10斗粟舂為米8斗8升,是很可疑的事。另外,彭先生所補是已知被舂的粟為『一石八斗八升』,而他解釋古人的計算時卻是把它作為舂出的米來看待,這就不能自洽,而且這與原術文『一石米粟升數』也對不上號。此外,他將答數改動兩字,在致誤原因上只能理解為偶然致誤,因為『五』和『三』、『七』和『八』的音與形都不能說相近。
郭世榮先生在『八斗八升』前補『米』字,又由答案返推而補已知條件為『今m米二斗廿五分升廿二』[5]。這從算法上能講得通,但題目的含義尚不清楚。郭書春先生的校勘在算法上與之相近,但在已知條件中『今』字後多補『有』字;從『舂粟』後的『銅m』條的行文看,這更可能。同時郭書春先生亦努力闡釋題目的含義,他明確認為這條的『m』不通『耗』,而是一種精稻,又謂術文『一石米粟升數』中的『米』字為衍文,當刪[6]。這種校勘,是把問題理解為已知10斗粟對應8斗8升m米,求2斗 升m米對應的粟的多少。
粟可以有兩種理解,一種是脫殼後為小米的糧食,又稱為『禾』,和稻本是兩種糧食;另一種是指未脫殼的穀子(粟或稻的都可)。照郭書春先生的理解,如按前一種,古代要把粟舂出稻米來(『A粟一石舂為m米八斗八升』)是難以想像的;如按第二種,以本條的粟指一種叫做m的稻穀,『m粟』或『粟』自然是可以舂為m米的,其出米率88%遠高於秦簡和【算數書】『程禾』條規定的稻出米之率50%,這當然是很蹊蹺的。但考慮到郭先生把『m米』解釋為精稻,我們也不必馬上就斷言這完全不可能。不過,本條問句原文是『當益m粟幾何』而不是『當m粟幾何』,如按郭先生的解釋,則『益』字應為衍文,可郭校並沒有把它刪去。
吳任哲先生認為題意為『A粟一石舂之為八斗八升。欲舂得一石,當益m粟幾何?』並按術文計算答案: =13 (升),認為本條的答案應改為『一斗三升十一分升七』[7]。這種理解也同樣導致88%的高出米率,而且需要改動的原文也嫌多。
上述各家校勘的校勘,都出現了高達88%的出米率,這是由於把第一句的『一石』按體積理解為10斗而引起的。事實上,『一石』也可以指重量。【說文解字】『粲』字條和『糲』字條(『 』通『石』)分別說:
粲:稻重一 為粟二十斗,為米十斗曰,為米六斗太半斗曰粲。
糲:粟重一 為十六斗太半斗,舂為米一斛曰糲。[8]
【算數書】『程禾』條說:
程曰:禾黍一石為粟十六斗泰半斗,舂之為糲米一石,糲米一石為d米九斗,d米九斗為米八斗。程曰:稻禾一石為粟廿斗,舂之為米十斗為,粲米六斗泰半斗。[9]
這裏『糲』、『』原文分別作『米f』、『毀』,屬通假字,今徑改為通行字(下引睡虎地秦簡同此)。後『d米九斗』的『九』系從彭浩據睡虎地秦簡補[10]。『為』在整理者的釋文中連下讀,今據文義及【說文】『粲』字條改為連上讀。
睡虎地秦簡【秦律十八種?倉律】說:
[禾黍一]石六斗大半斗,舂之為糲米一石;糲米一石為d米九斗;九斗為米八斗。稻禾一石,為粟廿斗,舂為米十斗;十斗,粲米六斗大半斗。[11]
這裏『禾黍一』據【算數書】『程禾』條補,『d』原作『』,屬通假字,今改為通行字。『十斗,粲米』的『』、『粲』二字原簡誤倒,據『程禾』條和【說文】『粲』字條移正。
上引三種文獻的校讀將另文詳論。文中『泰半』或『太半』、『大半』指三分之二。三種文獻都規定粟重一石體積為16 斗,稻重一石體積為20斗。這時,『舂粟』條中一石重的粟舂為米8斗8升,其出米率為88: =52.8%,低於標準的粟出糲米率60%和出d米率54%,而高於粟出米率48%。【算數書】中有一標題為『m』的條目,『m』字是損耗之義,討論A粟得米的問題時,先把所A的粟減去損耗的粟後,再按標準的出米率計算得米之數。『舂米』條的『當益m粟』也應該理解為應當增加所損耗的粟。由於糲米有時省略為米,故可假設舂出的米為糲米。粟出糲米的標準率為 ,8斗8升米按此標準率所需要的粟為88 升×5÷3= 升,因此一石重的粟舂為糲的耗粟量為( - )升=20升。根據術文『一石米粟』的啟示(吳任哲已注意及此),我推測脫落的已知條件為已知舂出的米為100升,這樣可以算出應增加的耗粟升數為20×100÷88= ,即2斗2 升或者說『二斗二升十一分升八』。這與問題的答案『二斗三升十一分升八』只有一字之差,顯然『三』與『二』是容易互誤的。從原簡的照片看,答案中的『三』字並不清楚,第三橫已漫滅[12],難以確認它一定是『三』字。因此不管原簡上它是『三』還是『二』,把釋文的『三』校正為『二』,都是合理的。這說明上面推測脫落的已知條件,以及把首句的『粟一石』理解為粟重一石(體積為16 斗),是合理的。基於上述分析,我將已知條件補作『今有米一石』,將答案的『三升』校改為『二升』,刪去術中『米粟』中的『粟』字,改『m米』為『m粟』,得到本條最後的校正結果如下:
舂粟 A粟一石舂之為八斗八升。今有米一石,當益m粟幾何?曰:二斗二升十一分升八。術曰:直所得米升數以為法,又值一石米升數而以m粟升數乘之,如法得一升。
由於原簡脫文太徹底,我所補已知條件『今有米一石』,只能說是數量上應如此,具體文字上也可以有別的可能,如『今舂為米一石』、『舂為米一石』之類。另外,我同兩位郭先生一樣不在『乘之』後補『以為實』三字,因為據上下文容易想見『如法得一升』的主語是『乘之』後得到的結果。另一方面,【算數書】中的『銅m』條、『取程』條等都沒點明『實』,說明當時省略『以為實』或『為實』是正常的。
最後,把本條翻譯如下:
領取一石重的粟,能舂出8斗8升的米。現有一石米,問應當增補多少損耗的粟?答案是:2斗2升11分之8升。計算方法為:用(一石重的粟)所得到的米(8斗8升)的升數作為除數,又用一石米的升數乘以(舂一石重的粟時)所損m的粟的升數(作為被除數),被除數除以除數就得到(答案)。
這樣,本條的含義就很清楚了。
來源: 科技日報 |