查看原文
其他

艾俊川 | 古代算书中的“投”和数学解题时的“设”

文汇学人 2021-12-26


《算数书》这个“投”字,既可训“取”,又可训“置”,但“取”和“置”独立使用时是两个相反的动作,并非同义词,只有摆设物品,从一边取来,到另一边放下,“取”和“置”对应着移动中的同一物体,才能表达同一过程。


◆◆
 
张家山出土《算数书》之《少广》,右数第9行起,据《张家山汉墓竹简(二四七号墓)》,文物出版社,2001年

1986年出土于湖北江陵的张家山汉代竹简,内有一部《算数书》,内容与我国最早的传世数学著作《九章算术》接近,成书年代则早于后者,在数学史研究中地位重要。
      
《算数书》有《少广》一章,内列一亩之田已知宽度、求其长度的解题方法和算题集。“少广”是古代“九数”之一,著名的数学课题,《九章算术》也专列一章,包含以最小公倍数通分、开平方、开立方等复杂公式和算题。《算数书》中的《少广》没有这么多内容,只是提供一个简便算法,用来解决生活中的土地步量问题。
      
对《少广》的整理注释,主要有彭浩先生《张家山汉墓〈算数书〉注释》的相关部分(科学出版社,2001年)与纪志刚先生《〈算数书〉“少广”“大广”二问的释读与校勘》(《自然科学史研究》,第24卷第3期,2005年)。现在看来,两个注本都有未愜之处,并且文中有一个难识之字,众说纷纭,影响到对文义的理解,有必要再作讨论。
      
下面从《张家山汉墓〈算数书〉注释》节录《少广》的术文部分:
      
少广
      
救(求)少广之术曰:先直(置)广,即曰:下有若干步,以一为若干,以半为若干,以三分为若干,积分以尽所救(求)分同之,以为法。即耤(藉)直(置)田二百四十步,亦以一为若干,以为积步,除积步,如法得從(纵)一步。不盈步者,以法命其分。
      
文中有几对通假字。第一个字前后出现两次,彭浩将其隶定为“救”,读为“求”,引来不少商榷意见。下面“直”读为“置”,“耤”读为“藉”,“從”读为“纵”,都是算术用语,在出土文献中常见,没有异议。
      
对彭浩释为“救”的字,吴朝阳释为“扱”,谭竞男释为“牧”,均取义为“求”,指“求解”“求取答案”。按“求”义在文中扞格难通。在第一处,“少广之术”是用来解题的现成方法,下面运算都据此进行,若此字确为“求取答案”之义,就应当说“以少广之术求之”,而非“求少广之术”,否则就变成对“少广之术”本身的推演了。岳麓书院藏秦简《数》“少广术”的类似起首语句,为“述(术)曰以少广”、“即以少广曰”,所用词皆为“以”,与“求”义无关。该简行文中又说“以少广求之”,可见古人言辞简练而逻辑严密。(见肖灿《岳麓书院藏秦简〈数〉研究》,湖南大学博士论文,2010)在第二处,如果真是“所求分”,而且能相加(“同之”),那是“所求”已有结果,但实际情况是运算刚刚开始,远未有答案。所以这两处都不会是“求”义。
      
程少轩先生《小议秦汉简中训为“取”的“投”》一文(《中国文字学报》,第七辑,2017),将此字与放马滩秦简《钟律式占》中字形相同而较清晰的“投”字进行综合研究,认为此字也是“投”,在算数书中应训为“取”。
      
这是个通达的解释。在“取”的“采用”之义上,《少广》两处文字均可讲通,第一处即“取用少广之术”,第二处即“将所取用的算筹相加”,但若使用“求取”之义,依然不通。
      
既然此字即放马滩秦简中的“投”字,我们可以利用该简中的训诂资料更进一解(下文所引放马滩秦简文均据《秦简牍合集4放马滩秦墓简牍》,武汉大学出版社,2014)。
      
放马滩秦简中很多占法需要通过计算来进行,程少轩文中举出不少例子,但有一条与我们现在讨论的问题密切相关,他没有提及:
      
凡阴阳钟,各殳(投)所卜大娄(数)曰置娄(数)者。《阴阳钟》,第130页
      
此句通过“曰”建立起一个等式,“投大数”=“置数”,也就是“投”=“置”。
      
再看程少轩引用的两段文字:
      
凡人来问病者,以来时投日、辰、时数并之。(《问病》,第142页
      
占病者,以其来问时直日、辰、时,因而三之。(《占病》,第144页
      
程少轩认为从“直日辰时”可知占卜是用求卜时刻的天干、地支、时辰对应的具体数值计算,但未揭出这两句也直接表明“投”的词义等同于“直”。他将“直”读为“值”,解为“数值”,则可商榷。此“直”应和《算数书》中的“直”一样,释为“置”,即用算筹摆出数字,给出计算条件。上引文“置”用在“日辰时”前面,所置确是它们的数值,但“置”本身并不是数值。
      
用算筹摆出数字,给定条件,在《九章算术》中统称为“置”,在出土秦汉文献中多写作“直”,它们是没有争议的一对通假字。
      
    

“投”少广之术
   
传世文献中也偶有“投”用作“置放”之义的例子。承郭永秉先生指示,《老子·德经》中“兕无所投其角,虎无所措其爪”,“投”与“措(措置义)”对文,也可能是“置放”的意思。
      
《算数书》这个“投”字,既可训“取”,又可训“置”,但“取”和“置”独立使用时是两个相反的动作,并非同义词,只有摆设物品,从一边取来,到另一边放下,“取”和“置”对应着移动中的同一物体,才能表达同一过程。摆放算筹,这边放下多少枚,等于从那边取来多少枚,所以既可说“取筹”若干,又可说“置筹”若干,如换用一个能概括整个过程而包容“取”“置”二义的词,应该是“设”。
      
秦汉时“设”和“置”词义极近,毋须详辩;“设”与“取”也词义相近。如《管子》卷十三“心术上”:“感而后应,非所设也;缘理而动,非所取也。”又如《韩非子》卷十九“显学”:“宋荣子之议,设不斗争,取不随仇。”“设”与“取”均相对为言。
      
对《九章算术》中的“置”,魏晋时人刘辉曾用“设”来注释,其《少广》“以三乘所得数置中行”,刘辉注为“设三廉之定长”。“置”是具体操作,“设”是操作的全程。唐宋以还,数学书中“设”字渐多,如唐李淳风注《九章算术》,所用一些“设”即为“置”义;又如宋杨辉撰《详解九章算法》,将《九章算术·少广》中的“置全步及分母子”直接引述为“设诸分母子”。这种用法一直沿用到今天,现在解数学题也要先“设”条件。
      
通此一义,“投少广之术”即“设少广之术”;“所投分”即“所设分”。下面以通用字对《算数书·少广》录文,重新标点,对文义略加疏通,其中为厘清逻辑关系,使用了一个括号。
      
少广
      
投少广之术。曰先置广。即曰下有若干步,以一为若干,以半为若干,以三分为若干……积分(以尽所投分同之)以为法。即藉置田二百四十步,亦以一为若干,以为积步,除积步,如法得纵一步。不盈步者,以法命其分。
      
“投少广之术”,设立少广术算式。
      
“曰”和下文“即曰”、“即”表示算式内容,也提示三个运算步骤。
      
“先置广”,首先设置“广”即田地的横边。
      
“下有若干步,以一为若干,以半为若干,以三分为若干,积分(以尽所投分同之)以为法”,算式下方此时摆出“广”的数值“若干步”,步数包含整数和分数。将一步设定为若干分,半步设定为若干分,三分之一步设定为若干分……以此类推。把“分”累积起来(算法是将所有设定的“分”加起来),作为除数(法)。
      
已知矩形面积和一条边长,求另一条边长,在使用小数的情况下,是简单的除法题。但中国古代没有小数概念,非整数都用分数表示,难做除法,于是发展出 “少广术”专门解决此类问题。其术是把除数中的分数化为整数,以便相除,从现代数学看,是求出最小公倍数,与各分数相乘,直接将所有分母约掉,再将通分后的分子加起来。《九章算术》中设有公式:“置全步及分母子,以最下分母乘诸分子及全步,各以其母除其子,置之于左,命通分者。又以分母遍乘诸分子及已通者,皆通而同之,并之为法。”看上去很是复杂。《算数书》是简单算法,没有给出求公倍数和通分的公式,而是在算题集中给出预先算好的数值,即当“广”分别包含1-9个相加的分数时,对“一步”、“半步”直到“九分之一步”均设定相应的“分”,供解题者使用。所以术文在求“积分”时,不用通分,直接以对应的数值即“所投分”相加即可。
      
在以前的研究中,对“下有若干步”,纪志刚认为即指“最下分数的分母”,实则不然。“若干”后面带有单位“步”,是步的数量,而非其中一个分数的分母。这就像一群人站队,个子高的站在最后,我们不能将“外面有若干人”说成“外面站着大个子”。再说这一步骤是求积分的,如果只有一个数,就不劳“以尽所投分同之”了。
      
   
尽所“投”分


对 “积分”,彭浩认为是“若干个分数通分相加后所得之分数”,纪志刚指为“误解”。确实如此,因为经过前面“以半为若干……”的转换,所有分数已化为整数。但纪志刚对“积分”的解释,也同样是误解。他将“积分”以下的句子断为“积分以尽,所求分同之以为法”,认为此“积分”并非《九章算术》“少广”术中的“全步积分”,而是指“广”的各个分数,“积分以尽”指所有的分数皆已约化为整数;“所求分”指通分后的分子(分母已被约掉)。这种解读,不符合文本原意。
      
在古代数学、天文书中,还没有看到“积分”可以解释成“各个分数”的例子。“分”是一个基本数量单位的下一级单位,“积”则是累加,“积分”是“分”的总和。就像纪志刚提出的《九章算术》“少广”术中的“全步积分”:
      
置所求步数,以全步积分乘之,为实。实如法而一,得从步。
      
“全步积分”指由“全步”(一整步)转化而来的所有“分”,相当于《算数书》中的“以一为若干”。两个“积分”虽然内涵不完全一致,但性质相同,都是“步”的向下拆分单位“分”的总和,只不过《算数书》中的“积分”除了一整步化成的分,还要加上各分数步化成的分。
      
纪文又认为 “所求分同之”指“通分后的分子相加”,但术中并未给出通分公式,也未提出通分要求,并不存在这样的运算。
      
“少广之术”最后一个步骤,都是常规算法:借筹(增加算筹)设置一亩田的步数二百四十步,将与“一步”对应的“若干分”与其相乘,求得240步的“积步”,作为被除数。用积分除积步,每满一个积分,得出纵边(从)一步,不足一步的余数,化成以积分为分母的分数。在这一步骤中,积分与积步形成新分数,因为分母乘过最小公倍数,所以分子也要乘以相同倍数(若干分),才能保证二者相除后得数正确。
      
通读一遍,《算数书·少广》术文道理简单,意思显豁。
      
除了张家山汉简和放马滩秦简,岳麓书院、北京大学等处所藏出土秦代算书中也有“投”字(岳麓简原释为“救”),若代以“设”字,均文从字顺。
      
北大藏秦简《算书》“方田”中有“其投所用三章”一句,旧释未能贯通,现在借机会讨论一下。术文说:
      
欲方田述(术),耤(藉)方十六而有余十六,耤(藉)方十五不足十五,即并赢(盈)、不足以为法;而直(置)十五,亦耤(藉)十五令相乘殹(也),即成步;有(又)耤(藉)卅一分十五,令韦(维)乘上十五,有(又)令十五自乘殹(也),十五成一,从韦(维)乘者而卅一成一,乃得从上,即成为田一亩。其投此用三章。
      
韩巍先生解释说:“‘投’字作为秦汉《算书》类文献中常用的术语,义为‘求取’、‘求解’。‘其投此用三章’,大概是说求解这种问题要用到‘三章’的方法,究竟是指哪‘三章’,还有待进一步的整理和研究。”(《北大秦简〈算书〉土地面积类算题初识》,《简帛》第八辑,上海古籍出版社,2013年版

      《九章算术》书影
按细绎文义,此节文字首尾呼应,“欲方田术……其投此用三章”,实为一句话分在两处说,中间列出计算方田的算式,又分三个小算式,各以“即”字结束,就是“即并盈不足以为法”,“即成步”和“即成为田一亩”,它们显然是后文所言“三章”。最后一句,“其”指代“欲方田术”;“投此”乃“设此”,“用三章”即使用三个步骤,通读为“想做方田计算,就设置上述算式使用三个步骤”。这是对首句的呼应,也是对整个算法的总结。此时“三章”已经摆列出来并使用完毕,不需要也无从“求取”“求解”了。
      
出土算数书中的“投”可读为“设”,传世文献中也有些许“设”“投”似曾混用的痕迹,如《史记》卷六十九:“苏秦既约六国從亲,归赵,赵肃侯封为武安君,乃设從约书于秦。”司马贞索隐:“乃设從约书,案诸本作投。”《汉书》注卷一百上引应劭:“饵为爵禄,君所以制使其臣,亦犹钓鱼之设饵也。”宋祁补注:“注文设一作投。”
      
这些异文不排除是文本传抄中产生的讹误。但出土算数书中的“投”与“设”,从训诂角度看词义相同,从文字角度看均由“殳”组成,可谓形近,那么是否存在一种可能性,即“投”是“设”的一种早期写法 (放马滩简若干“投”字原写作“殳”,其实也可能是“设”的简写)?献疑于此,愿求教于高明。
      
学林(2019.9.20)|   古代算书中的“投”和数学解题时的“设”
艾俊川   《金融时报》编辑


相关链接

艾俊川 | 傅山致魏一鳌手札编年

艾俊川 | 严复的版权保卫战

艾俊川 | 从林纾致臧荫松书札看“林蔡斗争”前后

艾俊川 | 顾道台的十万雪花银

艾俊川 | 雾里看花的曹雪芹“朋友圈”

艾俊川 | 复堂师友手札中的两位“无名氏”

艾俊川 | 从钱大昕的四首集外诗谈起


订阅我们!点击标题右下“文汇学人

转载本公众号文章请注明出处

投稿邮箱  wenhuixueren@139.com   

      
: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存