比《九章算术》还早的数学著作(图)
【看中国2013年08月24日讯】1983年底、1984年之初在湖北省江陵县张家山,出土了一批西汉初年,即吕后至文帝初年的竹简,共千余支。经初步整理,其中有律令、《脉书》、《引书》、历谱、日书等多种古代珍贵的文献,还有一部数学著作,据写在一支竹简背面的字迹辨认,这部竹简算书的书名叫《算数书》。
《算数书》
考古学家推定该墓下葬于公元前186年或稍晚,《算数书》的编写年代自然要更早一些。《算数书》是目前已知最早的中国数学著作,其内容丰富,李学勤先生称为之为“中国数学史上的重大发现”
全书约有200多支竹简,其中完整的有185支,10余根已残破。经研究,它和《九章算术》有许多相同之处,体例也是“问题集”形式,大多数题都由问、答、术三部分组成,而且有些概念、术语也与《九章算术》的一样。据考证,它比《九章算术》要早一个半世纪以上,书中有些内容和《九章算术》非常相似,一些内容的文句也基本相同。有人推测两书具有某些继承关系,但也有不同的看法认为《九章算术》没有直接受到《算数书》影响。全书总共约七千多字,有60多个小标题,如“方田”、“少广”、“金价”、“合分”、“约分”、“经分”、“分乘”、“相乘”、“增减分”、“贾盐”、“息钱”、“程未”等等,但未分章或卷。
《算数书》是中国现已发现的最古的一部算书,大约比现有传本的《九章算术》还要早近二百年,而且《九章算术》是传世抄本或刊书,《算数书》则是出土的竹筒算书,属于更可珍贵的第一手资料。所以,《算数书》引起了国内外学者的广泛关注,目前正在被深入研究之中。
《算数书》的性质
《算数书》的时代,彭浩先生认为其大部分算题形成至迟不会晚过秦代,有的是战国时代。这一看法应该是正确的。《算数书》中有两个题末尾处分别写有文字“王已雠”、“杨已雠”,应分别是姓王的人、姓杨的人已校对的意思。另有多处写“王”或“杨”字,此二字与上下文难以协调,甚至必须去掉才能读通,也应表示“王已雠”或“杨已雠”的意思。这种情况说明《算数书》应是从别处抄的,不会是墓主去世前的作品,因为如果是他自己所著,只要他看一看就行了,不必请人校对。《算数书》的这个版本也不会是墓主本人从几本不同的书编抄到一起的原本(虽然是撮编之书),否则一人校到一个问题中间就停下来而不把该问题校完的可能性就不会太大。此外,此书“合分”条中“五人分七钱少半、半钱,……,亦六钱以为实”一段是“经分”类问题,而书中有“径(经)分”一条,此段本不应放在“合分”条中,这种明显的差错不大可能是整理者的过错,这也许正好说明《算数书》的这个版本,不是它的原始版本,而是从别的《算数书》版本抄来的。因此,虽然此本《算数书》的抄写年代之下限可能晚到公元前186年下葬前夕,但此书的编成年代应早过若干年,可能在秦代或略早。
据考古学者整理的释文,《算数书》有如下68个标题:
1相乘,2分乘,3乘,4矰(增)减分,5分当半者,6分半者,7约分,8合分,9径分,10出金,11共买材,12狐出关,13狐皮,14女织,15并租,16负米,17金贾(价),18舂粟,19铜秏(耗),20传马,21妇织,22羽矢,23桼(漆)钱,24缯幅,25息钱,26(饮)桼(漆),27税田,28程竹,29医,30石?(率),31贾盐,32挐脂,33取程,34秏(耗)租,35程禾,36取枲程,37误券,38租吴(误)券,39粺毁(毇),40秏,41粟为米,42粟求米,43米求粟,44米粟并,45粟米并,46负炭,47卢唐,48羽矢,49丝练,50行,51分钱,52米出钱,53方田,54除,55郓都,56刍,57旋粟,58囷盖,59睘(圜)亭,60井材,61以睘(圜)材方,62以方材睘(圜),63睘(圜)材,64启广,65启从(纵),66少广,67大广,68里田。
以上68条的标题,释文都以黑体标记。另在第41“粟为米”条下并列有“粟求米”一条(暂记为41a),此标题未用黑体字标记,不知是否排印或原简有误,算上此标题共69个。
这69个标题统领着《算数书》的各部分内容,其中的题目可以归入今传汉代编成本《九章算术》中方田、粟米、衰分、少广、商功、均输、盈不足等章的题目类型,涉及今天的整数和分数四则运算、各种比例、面积、体积、负数、双设法的内容。其广度和深度虽稍逊《九章算术》,但已包括着十分丰富的知识。
《算数书》与《九章算术》
《算数书》与《九章》的关系,是一个容易引起大家关注的问题。由于《算数书》至少要比《九章》早一个半世纪,所以,人们很容易想当然认为它是《九章》的一个来源。如彭浩就说《算数书》“对另一部数学巨著《九章算术》的产生有着直接的影响”。但实际情况不是这么简单。
《九章》粟米章的开头的“粟米之法”,列出一张各种粮食换算比例的清单:
粟米之法:
粟率五十粝米三十
粺米二十七糳米二十四
御米二十一小䵂十三半
大䵂五十四粝饭七十五
粺饭五十四糳饭四十八
御饭四十二菽、荅、麻、麦各四十五
稻六十豉六十三
飱九十熟菽一百三半
糵一百七十五,
《算数书》第35“程禾”条也有关于各种粮食的换算规定:
“程曰:禾黍一石为粟十六斗泰(大)半斗,舂之为粝米一石,粝米一石为糳米九斗,糳米[九]斗为毁(毇)米八斗。王程曰:稻禾一石为粟廿斗,舂之为米十斗,为毁(毇)粲米六斗泰(大)半斗。麦十斗,三斗。程曰:麦、菽、荅、麻十五斗一石,禀毁(毇)者,以十斗为一石”
“程”字是标准、规定意思。这段文字让人联想到云梦睡虎地秦墓(墓主死于公元前217年)出土的《秦律十八种•仓律》(可能成于秦始皇元年即公元前246年以前):
“[粟一]石六斗大半斗,舂之为粝米一石;粝米一石为糳米九斗;九斗为毇米八斗。稻禾一石,为粟廿斗,舂为米十斗;十斗粲,毇米六斗大半斗。麦十斗,为?三斗。菽、荅、麻十五斗为一石。禀毇粺者,以十斗为石”。
彭浩先生认为两段文字几乎是完全相同的,《算数书》引用了秦代法律。据《九章》“粟米之法”,粟、粝米、粺米、糳米之比50:30:27:24,按秦律则粟、粝米、糳米、毇米之比为16:10:9:8即50:30:27:24。《九章》以糳米之率为8,而秦律规定则为9,《九章》把比率弄错了。不过,《九章》是一部首尾一贯,精心编纂的书,除圆周率用3,宛田面积公式、球体积公式、用双设法处理非线性问题等极少量不准确或差误外,很少有错误;全书用到糳米的问题都按这个错误比例进行计算,可见《九章》编者张苍、耿寿昌等的认真与严谨。他们如果注意过《算数书》,以他们的学识就自然会根据此书所引秦律修改错误数据或用正确的数据设置问题。因此,惟一合理的解释是张苍、耿寿昌等在编辑《九章》时没有读过《算数书》,而未加深察地将错就错采用了以前已经弄错的数据。
《算数书》和《九章》有少量相同的内容,这容易让人觉得《算数书》是今本《九章》的一个来源。但是两者有相同部分的原因可以是多种多样的:一是《算数书》在前,《九章》采用了《算数书》的材料;二是《九章》在前,《算数书》采用了《九章》的材料;三是两者的一部分有共同的来源。今本《九章》成书于汉代是公认的,第二种可能性是不存在的;第一种已如前述难以成立。因此,只能是二者有共同的来源,两个本子没有直接的袭用关系。其实,对照二者的相同部分,不难发现这种相同只是相对的,其相异处也不少。
《算数书》和《九章》在方法和文本方面有相同处(不是很严格的“相同”)的内容,放宽点还有一些。如《算数书》第16“负米”条和《九章•均输》第27问,都是带米过三关抽税问题,但前者三关的税都是1/3,后者则外、中、内关的税率分别为1/3、1/5、1/7,要麻烦一点。总的说来,上面关于两种文献中有相同处的内容之异同的对照和讨论,也同样不支持《九章》直接受到《算数书》影响的假设。相反,《算数书》中所用的方法明显不是原始的产生形态,它们不是在根据一些例子总结或归纳出普适性的方法;其中一些简省的表述说明《算数书》是在罗列一些已有的方法、算题或利用已有的方法解决应用问题;换句话说,《算数书》中这些部分的方法是早已有之的,它们中间的一部分在《九章》中的形态更显原生态的性质。
确立算法式数学发展的意义
中国古代数学在春秋战国时代有算法式数学和理论化数学两种倾向,汉代以后,前者成为中国数学的主流。以前,由于汉代编成的《九章算术》是这种主流数学的最早著作,人们习惯于说到汉代时中国数学有了什么成就和思想,而对先秦迄汉代数学发展的演变往往语焉不详。钱宝琮先生以秦统一中国为界给中国数学史分期,一方面说“虽然没有一本先秦的数学书流传到后世,但不容怀疑的是:《九章算术》方田、粟米、衰分、少广、商功等章的内容,绝大部分是产生于秦以前的”,一方面又把秦统一以前作为中国数学的萌芽阶段,这就有些不协调。郭书春先生据《九章算术》的结构把其中术文统率应用问题的部分大体上归为先秦,余者视为汉人所补,这是一个可操作的区分秦及秦以前与汉代数学的方案。由于论据还欠丰满,郭先生曾把战国至西汉作为中国古代数学框架的形成阶段,没有刻意对秦统一前后的情况做区分。近年来专家在前贤的基础上比较系统地利用传世文献和出土材料,从其中用到的数学知识特别是从社会背景、需要和要求方面论证了《九章算术》各章的绝大部分数学方法在先秦已经出现,中国数学在春秋战国时出现第一个高潮,汉代是对先秦数学进行筛选和整合的时代这一观点。
《算数书》释文的发表,正好可以打破这层隔膜。它的年代处在先秦与秦汉的转折点上,为切实建立实用的算法式数学在战国至秦汉之演变历史提供了基础。如前所述,《算数书》是一本撮编之书,它是在利用已有的数学方法解决问题,所以《九章》中的这些方法出于先秦自然没有问题。《算数书》基本上没有用到《九章》的方程和勾股两章的方法,《九章》的其他章也有些方法在《算数书》中没有用到,如方田章的方田术、圭田术、邪田术、箕田术、圆田术、环田术、弧田术、宛田术,粟米章的其率术与反其率术,少广章的开方术、开圆术和开立方术、开立圆术,商功章的方堢?术、方锥术、方亭术、壍堵术、阳马术与鳖腝术,均输章的均输本术等。但从侧面看,这些方法的绝大部分也应在先秦用到。如《算数书》第55-60条,用到刍甍、刍童、圆锥、圆台、圆柱的体积公式,第64-68条用长方形面积公式及其逆运算,据此推断当时已有《九章》的方田术、圭田术、邪田术、箕田术、圆田术、环田术、方堢?术、方锥术、方亭术、壍堵术、阳马术就不成问题。又如《算数书》第29“医”条说“程曰:医治病者得六十筭(算)而负廿筭(算)有囗程及弗……得六十而负几何?曰:负十七筭(算)二百六十九分筭(算)十一。其术曰:以今得筭(算)为法,令六十乘负筭(算)为实。”由于文字残损,其具体涵义还有待进一步研究,但其中用到正负数乘除法则不成问题。对照董仲舒《春秋繁露•考功名》:“考试之法,……九分三三列之,亦有上中下。以一为最,五为中,九为殿,有余归之于中,中而上者有得,中而下者有负,得少者,以一益之,至于四,负多者,以四减之,至于一,皆逆行。三四十二,而成于计,得满计者绌陟之。次次每计,各逐其弟,以通来数。初次再计,次次四计,各不失故弟,而亦满计绌陟之”看,得“若干算”和“负若干算”应是一种考课记分。在《九章》中负数只见于方程章,可能是在方程消元时两行相减不足减时引进的,那么我们说《算数书》的“医”条把先秦数学中已有的负数概念用于对医生治病效果的考核,是合乎情理的,方程章的部分内容在先秦也可能是存在的。《算数书》没有均输本术问题,大概由于它是秦人编集的作品,而秦律禁止委输的缘故。胡平生先生据阜阳双古堆残简《算术书》(抄成下限为公元前165年)有《九章》均输章第一题的残简,说明均输问题是古已有之的;这与笔者从传世文献说明先秦要用到均输本术的数学方法相一致。
尽管《九章》中有一些数学方法不能从《算数书》直接证明其在先秦已经存在,但《算数书》已经证明:从社会背景和需要来论证先秦时代可能存在相应的数学方法,是可信的。考虑到《算数书》只是一部不完备的撮编之书,它较为直接地服务于下层官吏进行管理的需要,同时作为秦人编的作品,它也必定受到一些局限,所以此书缺乏一些内容特别是一些较为深入的内容是不足为奇的。
综之,《算数书》是秦统一前后一本适应下层官吏管理需要的不大成系统的撮编之书,它至少有两个来源,它主要是把已有的数学方法、社会经济标准用到实际中的产物,也收录了少量与实际存在差距的问题。《算数书》与《九章算术》之间没有直接的文本影响关系,它们有共同的源泉。《九章》有一部分内容比《算数书》更显原生态的性质,其绝大部分产生于先秦,甚至在先秦可能存在一种与《九章》规模差不多后来演变为《九章》主要来源的书,这本书或其衍生本为《算数书》的作者们所学习和引用。《算数书》与传世文献和其他出土材料结合,有助于确立先秦至秦汉算法式数学发展演变的历史。