查看原文
其他

邹大海:中国上古时代数学门类均输新探

邹大海 先秦秦汉史 2021-05-13

中国上古时代数学门类均输新探


邹大海

(中国科学院 自然科学史研究所)


摘要:

均输是中国古代数学的一个重要门类,数学经典《九章算术》专设第6章讨论它。前人对其渊源和它与作为经济政策的均输之关系,都多有未及或存在若干问题。文章利用更为丰富的考古文献和传世文献,对中国上古时代均输的发展进行较为系统深入的研究。文章对《九章算术》“均输”章算题的特征进行了新的概括,指出“均输”的含义比前人理解的公平负担要宽泛,“均输”章的构成具有高度的一致性,算题的列入是编者刻意为之,而非随意安排。文章证明,不论是数学上的两类均输算题还是经济上的两种均输都有先秦及秦代的渊源,现存《九章算术》“均输”章的5个均输算题和睡虎地汉简《算术》中的一个均输算题虽然都定型于西汉,但在先秦及秦代应该已有其蓝本。岳麓书院藏秦简《数》和张家山汉简《算数书》证明,“均输”章后24题中有一部分在战国到西汉初期就很可能存在,不必等到公元前1世纪由耿寿昌补入。


关键词:

均输;《九章算术》;秦汉法律简牍;《盐铁论》;岳麓书院藏秦简《数》;张家山汉简《算数书》; 睡虎地汉简《算术》


均输既是中国古代数学的一个重要门类,也是中国古代的一种经济措施和经济活动。在传世数学文献中,它最早见于《九章算术》,是其第6章的章名。此章已含有十分丰富的内容。前辈学者对均输已有相当多的研究,大都把数学上的均输与经济上的均输联系起来。1933年,钱宝琮撰《汉均输法考》短文[1],对汉代均输法的流变及其与《九章算术》均输算法的关系进行了考订。他对汉武帝以来均输制度与平准制度进行了区分:前者是一种关于国家如何征税的制度,后者是国家进行商业活动的措施。同时,他认为“均输”章只有前4题属于“均输”章名所表示的范围,并称为均输本术问题。这些意见对后来很多学者产生了影响。


1983、1984年之交,湖北江陵张家山247号汉初墓出土的竹简中发现有《均输律》,之后宋杰提出,在《盐铁论》中,“古之均输”与桑弘羊(前152?~前80)的“均输法”不同,而《九章算术》“均输”章前4题与前者有相似之处。[2] 胡平生还利用阜阳汉简《算术》残简,明确提出《盐铁论•本议》“讨论过古今‘均输’的区别”,“古之均输”是“《九章算术》里的‘均输’。两种‘均输’的根本不同就在于桑弘羊的‘均输’‘为利而贾万物’”。[3] 他们认为《九章算术》“均输”章的前4个问题对应于“古之均输”,在汉初或更早时代就已经出现,“今之均输”是汉武帝时候推广开来的。杜石然将《周礼》“土均之法”和“均人”之职,和张家山汉简有“均输律”相联系,简要说明在先秦已有均输算法。[4] 郭书春也用汉简之有“均输法”与《周礼》、《左传》记有均输的思想和需要,说明“均输术最迟在秦或汉初已经存在”,“先秦典籍已有均输的萌芽”。同时,他强化了钱宝琮关于“均输”章不同算题之间不协调的观点,认为该章“大部分不是均输问题”,并从《九章算术》的体例上说明前4题来自战国及秦代,其他算题为汉人所增补。[5-7] 李迪认为均输的制定与张苍有关,后来桑弘羊又重新恢复,并补充算题到《九章算术》“均输”章里。[8] 笔者利用更为丰富的传世文献与出土文献,特别是《国语》、睡虎地秦简中的秦律、张家山汉简中的徭律、睡虎地汉简《算术》中的“委输”问题,从数学结构和社会需要等多个角度论证了均输算法有先秦的渊源[9-12],并用张家山汉简的《均输律》、《算数书》说明《九章算术》“均输”章中“非均输本术算题在先秦也是有的”[9-10]。上述研究还不够系统、深入,对“均输”章不同问题的性质、来源、流变以及该章的整体性等重要问题的认识还有待深入。本文拟搜集更为丰富的传世文献和考古文献,特别是新发现的简牍文献,将外史与内史结合互证,对均输在上古时代的发展,进行更为系统深入的研究。


01

《九章算术》均输算题与汉代均输法关系中的时代与逻辑问题


“均输”章中两类算题的出入很大。钱宝琮认为“均输”章只有前4题属于“均输”章名所表示的范围,并称为均输本术问题。他还说:“均输章第1题到第4题是四个实行均输法的计算问题。汉武帝太初元年(公元前104年)郡国始置均输官,施行均输法。这四个问题的写成自然是在太初元年之后”。[13]


李俨[14]、陈直[15]也把均输算题与均输法对应起来,但他们认为均输法开始于武帝元封元年(前110),均输算题在元封元年之后。这个时间比钱宝琮说的太初元年要早。核查史料,可知《史记·平准书》记有“元封元年,卜式贬秩为太子太傅。而桑弘羊为治粟都尉,领大农,尽代仅管天下盐铁。弘羊以诸官各自巿,相与争,物故腾跃,而天下赋输或不偿其僦费,乃请置大农部丞数十人,分部主郡国,各往往县置均输、盐铁官”[16],而没有太初元年郡国始置均输官的记录,故应以元封元年为是。钱先生的说法,大概源于《汉书·百官公卿表》所记:“治粟内史,秦官,掌谷货,有两丞。景帝后元年更名大农令,武帝太初元年更名大司农。属官有太仓、均输、平准、都内、籍田五令丞,斡官、铁市两长丞。”[17] 可能他把后一条史料的年份错记在前一条史料的史实上了。尽管老一辈研究数学史的学者对均输问题的时间上限有几年的出入,但都不早于汉武帝时代,甚至不早于元封元年。这是可以理解的,因为《史记·平准书》说:“而孔仅之使天下铸作器,三年中拜为大农,列于九卿。桑弘羊为大司农中丞,管诸会计事,稍稍置均输以通货物矣”,其下徐广注曰:“元鼎二年,时丙寅岁也”([16], 1431~1432页)[①]。徐广把置均输的时间定在元鼎二年(前115年),“稍稍”是逐渐的意思,那么一些学者把均输法视为桑弘羊在公元前115年的创造,也是一种自然的想法。


李迪认为“桑弘羊推行均输法和‘平准’制,必然要根据实际工作的需要编写数学题目,补充到原来的题简中”,现传本《九章算术》中“均输”章的28个题目中“有些题应出于他手,如第9题”“显然是‘置平准于京师,都受天下委输’之时或稍后编出来的题目。”([8],97页) 大概是觉得太“显然”,他没有给出具体的理由。另外,他也没有再举出其他与均输法和桑弘羊有关的具体问题。后面我们将证明,这个问题与桑弘羊及其均输法无关,而与更早时代的均输有关。但他把此题也纳入均输算题,虽无深意,却是一个新见。


无论是钱宝琮还是其他学者,都把《九章算术》的“均输”章至少是其中的前4个问题与作为经济制度的均输法联系起来,钱先生虽然也提到前者对后者有价值,但主要还是由后者论述前者产生的时代。不过,如果仔细研究两类文献,可以发现前人对数学上的均输和经济上的均输法所做的对应关系,对应得并不好,两者之间的关系其实是非常复杂的。


首先,既然张家山二四七号汉初墓(约公元前186年)中出土有《均输律》,比汉武帝早了三朝(皇帝),比桑弘羊开始试行均输早了70余年,那么不论数学上的均输与经济上的均输是否完全对应,我们都不能由武帝时实行了均输法来推定《九章算术》的均输要到汉武帝中后期才能出现。


再者,对于经济上的均输,如果仔细阅读传世文献中涉及武帝时桑弘羊的均输法的材料,我们可以发现,史料中只是说武帝时采用了均输法,却并没有说以前未曾有过均输法。所以,传世文献的记载与张家山汉初墓中出土有《均输律》,两者之间其实并无矛盾。前辈学者之所以认为均输在汉武帝中后期才出现,是因为只在史料所记关于汉武帝中后期的史实中才看到均输,就以自己所见之最早事迹作为历史上实有的最早事迹,而这在逻辑上显然是有很大缺陷的。


《史记·平准书》和《汉书·食货志》说公元前115年桑弘羊“稍稍置均输以通货物”,其实是顺着上文所讲社会经济中存在的问题、需要如何解决这样的问题的角度来叙述的,并不是在讲均输的历史。“置均输”是解决问题的一项措施。“稍稍”(逐渐地)虽然暗含着从无到有的意思,但这也只是从讲这话时当下的情境来说的,并不意味着《史记》和《汉书》认为均输在以前就一定没有。所以《均输律》出现在此年70年以前的张家山汉初墓中,其实也不是值得奇怪的事。


出土的张家山汉简中有“均输律”证明均输可以推到汉初,正是张苍(前252以前~前152)活动的时代。据公元3世纪刘徽的记载,张苍、耿寿昌(活动于公元前1世纪中叶)是包含有“均输”章的汉代编成本《九章算术》的编纂者[②],而张苍比耿寿昌早一个世纪,那么均输会不会就是张苍首创的,是不是以前就没有呢?按史学界通常的思路,这些也就自然成为一些学者关注的问题。比如李迪就认为出土《算数书》的墓的主人是张苍,《算数书》是张苍职掌、为官方所有的有关数学的竹简。[19] 他还说:

均输法的制订可能与张苍有关,因为它既是法律,又需要数学计算,而张苍是这两者的最大行家。在‘算数书’中已有具体的均输题,可能为张苍所加,说明西汉初已实行均输法,似乎是不久停止了,过了100多年,才又重新提出,汉武帝时由桑弘羊再实行。[8]

这种根据共同性推测两者相关的作法,是比较常见的,但两者有共同之处与两者有关系,并不等价。如果没有特异性的标志,这种关系是很难确认的。李迪关于该墓墓主是张苍的观点,受到几位学者的反驳[③],他们的证据是很充分的,故此说现在已很少有人相信了。


目前没发现张苍制订汉初均输制度的证据。另外,在已公布的《算数书》全文中其实都没有出现“均输”一词,也没有以均输制度为现实背景的算题。李先生当时还没有看到全书,他之所以说《算数书》有具体的均输问题,大概是源于参与整理的专家说过《算数书》中“算题类别还有《方田》、《粟米》、《衰分》、《少广》、《商功》、《均输》、《盈不足》等,它同《九章算术》有很多相同之处,而时代比《九章算术》早二百多年,它是《九章算术》之源”[20]。其实文章的“算题类别”这几字,只是说明《算数书》中有可以归到《九章算术》“均输”类的算题,并不意味着书中有涉及均输制度的算题。由于文章的原文没有对此做特别的强调,所以李迪有如此误解也在情理之中。另外,汉武帝时桑弘羊实行均输法,试行于公元前115年,推广于公元前110年,距离汉初不到100年而不是李先生所说的“100多年”。史籍中有张苍“定章程”的记载,但《均输律》属于不以程(数量标准)为主要内容的法律,不属于张苍的职司。《汉书•刑法志》说汉初“相国萧何攈摭秦法,取其宜于时者,作律九章”([17],1096页),似此,汉初的《均输律》应是萧何在秦法基础上进行取舍而制定的。不过,张苍曾因“明习天下图书计籍,又善用算律历”而被令“以列侯居相府,主郡国上计者”([17],2094页),《均输律》的制定虽然不属于“上计”的范围,但其中有的数量标准(“程”)曾征求过张苍的意见,也是有可能的。


02

《九章算术》均输算题的性质和特点


在现存版本中,《九章算术》的“均输”章共含28个问题。此外,王孝通《缉古算经》第一个问题的注中提到,“《九章》‘均输’篇有犬追兔术”问题,并引述了该题。此题不在上述28题之内,估计是在后来的流传过程中佚失了。它原来的位置,应在第13题和第14题之间,对此我们将在后文说明理由。


钱宝琮认为“均输”章只有前4题属于“均输”章名所表示的范围,并称为均输本术问题。后面的问题与该章本意“税收给运”“漠不相关”,其中一部分之所以列入该章,是因为假借均输本术问题的方法加以应用;而对其他各种比例杂题被列入该章,他没能找到特别的理由。他还说:“均输章里只有四个均输问题,却有很多分数应用问题和衰分问题”。([13], 32、34页)  看来,在钱宝琮心目中,很多算题之被列入该章,是有随意性的。


郭书春认为《九章算术》的一些问题“编排方式极不合理,人为的成分极大,在逻辑上违背了分类同一性的原则,是不严整的”,其中一个体现是“均输章大部分问题不是均输问题,而是衰分、今有、重今有、级数及其他算术问题”。([5], 303页) 他把《九章算术》算题分为三类:第一类是先给出例题,后给出抽象性术文;第二类反过来,先给出抽象性术文,后给出例题;第三类是一题一术且术文没有脱离具体问题的对象与数字。他认为前两者可以视为一类,具有术文统率应用问题的形式;第三类与前两类体例和风格差别很大,且算题的性质与所在章的标题不同,“有明显的补缀的性质,也反映了编纂思想的不同”。他认为前两类“大多数是战国及秦代完成的,而补缀的第3类,是汉朝人所为”,并且“多数是耿寿昌增补的”。([5],87~90页;[6];[7])


那么《九章算术》“均输”章的编排是不是随意的?是不是存在一以贯之的思想?为此,我们需要考虑这些算题的特征。前辈学者把这些算题大体归为两类,以前4个问题为一类、其他问题为另一类,我们认为这也是可以的;但必须注意到,后面这类算题中的绝大部分在数学结构上具有区别于其他章算题的明显特征,且其中亦有第9题属于古已有之的另一类均输算题(详见第5节)。因此,“均输”章的算题是按一定的指导思想进行编排的。下面对此详做讨论。


2.1  多指标下的公平负担问题


如前所述,“均输”章的前4题与其他问题确实很不一样,钱先生称为均输本术问题,为很多学者所采(有的使用意义相同而用语稍异的说法)[④]。不过,我们后面要谈到,这种称呼是有问题的。所以我们根据这些问题的数学结构特点并结合问题的现实背景,把它们称为“多指标下的公平负担问题”。这类问题的方法都是通过变通,最后化为衰分术(也就是比例分配的方法)来求解。衰分术已见于第三章,所以如何得到各衰(即比中的各个数)才是解决问题的关键。这4个问题中,我们只引第1、4两题的原文以节省篇幅。


第1题是:

今有均输粟,甲县一万户,行道八日;乙县九千五百户,行道十日;丙县一万二千三百五十户,行道十三日;丁县一万二千二百户,行道二十日,各到输所。凡四县赋当输二十五万斛,用车一万乘。欲以道里远近、户数多少衰出之,问粟、车各几何?

                荅曰:

               甲县粟八万三千一百斛,车三千三百二十四乘。

               乙县粟六万三千一百七十五斛,车二千五百二十七乘。

               丙县粟六万三千一百七十五斛,车二千五百二十七乘。

               丁县粟四万五百五十斛,车一千六百二十二乘。

        术曰:令县户数各如其本行道日数而一,以为衰。甲衰一百二十五,乙、丙衰各九十五,丁衰六十一,副并为法。以赋粟、车数乘未并者,各自为实。实如法得一车,有分者上下辈之。以二十五斛乘车数,即粟数。[25]

这个问题的开头是“今有均输粟”,其中“今有”是古代算书中各种算题起首的常用语,我们可以把“均输粟”作为算题的题名。这个问题是说:从4个县征收作为税的粟(当时最重要的两种主粮之一),并要求各县把应缴之粟运送到目的地。已知所征粟的总数和相应所需要的车辆总数,以及各县的户数和到目的地的距离,问如何摊派各县应缴的粟和应出的车辆才公平。这是考虑2个指标(按路上所需时间计量的路程、户数)影响下的公平负担问题。其解法的关键是户数除以路程(以日为单位,实际表示一日所行的路程),得到各县的衰。这种计算衰的方法,必须是在各县到目的地的距离相差不太悬殊的情况下才比较合理。


第2题的开头是“今有均输卒”,我们可以把“均输卒”作为此题的题名。此题说的是,从5个县征调士卒到边塞戍守,已知所征士卒的总数及在边塞戍守的时间(“居所日数”,为一个月,按30天算。《九章算术》本文只说“居所……日数”,没有提具体的时间,刘徽注说是“三十日”,与算题的数据吻合),各县的人口数及到边塞的路程(也以路上所需要的时间即“行道日数”计量),要求如何摊派各县应出的士卒数才公平。与第一题相似,这也是考虑2个指标(路程、人数)的公平负担问题。解决问题的关键是,把人数除以路程(以日数计量)与戍卒在边塞(“居所”)戍守的时间(日数)之和,得到各县的衰。不过《九章算术》所用的各衰实际是把这样得到的衰(40、50、40、30、50)简化后的结果(4、5、4、3、5)。这里没有考虑到对于远处的人而言,不光来到边塞需要时间,而且从边塞回去也需要一样的时间。不过,也许作者是把路上所花时间按戍守时间一半的劳动量来对待的。


第3题开头是“今有均赋粟”,说的是从5个县征收粟,都集中运到甲县,已知所征粟的总数,一车所载粟的斛数,将一车粟运送一里的价格,各县的户数、粟价和到甲县的距离,求如何摊派各县应出粟的数量才公平。这是考虑4个指标(户数、距离、粟价、僦价即运输价格)影响下的公平负担问题。这里的关键是把后3个指标的影响力化为一个指标,其方法是求每县运送一斛粟到目的地时粟价连同路费的和,以此作为影响该县所受摊派的一个指标,这时就与前两个算题一样,由两个指标(另一个是户数)来决定分摊的数量了。


第4题是这样的:

今有均赋粟,甲县四万二千筭,粟一斛二十,自输其县;乙县三万四千二百七十二筭,粟一斛一十八,佣价一日一十钱,到输所七十里;丙县一万九千三百二十八筭,粟一斛一十六,佣价一日五钱,到输所一百四十里;丁县一万七千七百筭,粟一斛一十四,佣价一日五钱,到输所一百七十五里;戊县二万三千四十筭,粟一斛一十二,佣价一日五钱,到输所二百一十里;己县一万九千一百三十六筭,粟一斛一十,佣价一日五钱,到输所二百八十里。凡六县赋粟六万斛,皆输甲县。六人共车,车载二十五斛,重车日行五十里,空车日行七十里,载、输之间各一日。粟有贵贱,佣各别价,以筭出钱,令费劳等。问县各粟几何?

                荅曰:

                甲县一万八千九百四十七斛一百三十三分斛之四十九。

                乙县一万八百二十七斛一百三十三分斛之九。

                丙县七千二百一十八斛一百三十三分斛之六。

                丁县六千七百六十六斛一百三十三分斛之一百二十二。

                戊县九千二十二斛一百三十三分斛之七十四。

                己县七千二百一十八斛一百三十三分斛之六。

        术曰:以车程行空、重相乘为法,并空、重以乘道里,各自为实,实如法得一日。加载、输各一日,而以六人乘之,又以佣价乘之,以二十五斛除之,加一斛粟价,即致一斛之费。各以约其筭数为衰,副并为法。以所赋粟乘未并者,各自为实。实如法得一斛。([25],222~224页)

这个问题与第3题一样,开头也是“今有均赋粟”。它说的是从6个县征收作为税的粟,都要集中运送到甲县,已知所征粟的总数,一车所载的斛数(25斛),一车由6个人装运,载货车(“重车”)和空车一天分别能走的路程(速度),装车、卸车的时间为各一天,各县的算(“筭”)[⑤]数、粟的价格、雇佣劳动力的价格、到甲县的距离,要求各县分摊的粟之数量。这是考虑4个指标(距离、劳动力价格、粟价、算数)时的公平负担问题,且多了6人一车、一车载25斛、重车与空车的速度以及装、卸各一天等几个常量因素。这几个常量对于后五县是一样的。对于甲县,原题只考虑了粟价和算数,不仅没有涉及常量因素,而且没有涉及距离,这大概是因为目的地就在本地。刘徽注第3题术文时提到“甲自输其县,则无取僦价也”,此题中别的县都没有计入装、卸的时间与花费,甲县不计是合理的。但第4题中其他县都计入了装、卸的时间与花费,甲县不计则不合理。[⑥] 是问题设计者还是官员考虑不周,不得而知。


这个问题的关键是,把各县的前3个指标折算成一个因素,在折算的过程中,还要考虑到一些常量因素。其目标是求出各县送一斛粟到目的地时粟价连同路费的和(甲县没有考虑运输费用,只算粟本身的价格)。具体思路是:先求运送一车粟的费用,除以25得到输送一斛粟的运费,再加粟价,最后得到每县完成一斛征收任务的花费。关于一车粟的运费求法,比较自然的作法是计算1÷50+1÷70,得到来回一里所需的时间,然后乘以该县与目的地的距离,得到整个往返在路上的时间,再加上装、卸各一天的时间,得到运送一次的总时间,乘以6人和每人一天的劳动力价格,得到该县一车粟的总运费。不过,原文在计算整个往返在途的时间时,是将空车、重车速度(一日所行里数)相乘作为除数,将两个速度相加,再乘距离(用到达目的地的时间来计量)得到的积作为被除数,然后相除得到的。这里不按现代的作法计算()×距离(日数),而是计算(50+70)×距离(日数)÷(50×70),两者是等价的,但古人的算法避开分数在前面步骤的出现,在计算上更为方便。这样,古人也把这个复杂的问题转化成为两个指标的问题,与第一、二题的数学结构就一致了。


从这4个多指标下的公平负担问题所反映的现实活动看,第1个问题是纯粹的摊派粮食税,第2个问题是纯粹的摊派徭役,第3、4两个问题虽然表面上也是摊派粮食税,但对于影响公平的因素,有更多的考虑,其中也涉及所出人力的多少,因此与徭役也有一些关系,甚至还跟市场价格有关。4个问题都是讲在多个指标影响下,如何摊派赋税才能做到公平合理。比如一个县户数多或物价便宜,应该多出人力物力;而如果它距离目的地远或其劳动力价格贵,则应该少人力物力。如何照顾到各项指标,通过定量计算的方法确定各县的赋税,使各县的负担均衡公平,是很不容易的事。这4个问题从简单到复杂,提出了处理这类难度很大的问题的方法,是很不容易的。可以说,在“均输”章,后面其他问题的难度,都比这组问题要容易。


表示均等之义的“均”字,要针对赋税才能较好地体现百姓负担的公平。这4个问题中都用到“赋”字。它既可作名词,表示赋税,如第1题中的“凡四县赋当输二十五万斛”、第2题中的“凡五县赋输卒一月一千二百人”、第3题中的“凡五县赋输粟一万斛”;也可作动词,表示征收赋税之义,如第3题首句“今有均赋粟”及后面的“欲以县赋粟,令费劳等”、第4题的首句“今有均赋粟”。在第4题“凡六县赋粟六万斛,皆输甲县”一句中,把“赋”理解为动词和名词都说得通,如作动词,整句可理解为向6个县总共征收6万斛粟的税,都要运送到甲县去;如作名词,整句可理解为“[摊派给]6个县的赋税总数为6万斛,都要运送到甲县去”。第1、2两题开头都有“均输”二字,呼应了章名。第3、4题开头都有“均赋”二字,是把“输”换成了“赋”。“均赋”远比“均输”更加切合这4个算题的内容。所以要说“均输”章前4个问题是“均赋本术问题”比说它们是“均输本术问题”要合适。第5节将证明,没有体现负担公平之义的“均输”章第9题,反而与“均输”一词有密切的关系。所以,至少从《九章算术》“均输”章的编纂来看,用是否“均输本术问题”来把前4题与其他问题划分开来,是不合适的。


2.2  其他归入“均输”章的问题


“均输”章的24个其他问题,彼此之间有程度不同的共性与差别。可以根据共性进行细分,但不太容易概括,所以下面的归类是粗略的,但仍是有意义的。


第5题已知粟的数量,让3个人各取一部分,分别舂成粝、粺、糳米,要让得到的3种米的体积相等,求此时3人所取粟的数量和最后所得米的总数。


第6题是这样的:

今有人当禀粟二斛。仓无粟,欲与米一、菽二,以当所禀粟。问各几何?

                荅曰:

                米五斗一升七分升之三。

                菽一斛二升七分升之六。

        术曰:置米一、菽二,求为粟之数。并之得三、九分之八,以为法。亦置米一、菽二,而以粟二斛乘之,各自为实。实如法得一斛。([25],225~226页)

这是已知应领取粟的数量,因仓库无粟而用米和菽代替,由米、菽的题设比(1:2)和它们与粟的相当比(全书统一的比,米、粟比为30:50即3:5,菽、粟比为45:50即9:10),确定应给米、菽的数量。


第7题是这样的:

今有取佣,负盐二斛,行一百里,与钱四十。今负盐一斛七斗三升少半升,行八十里。问与钱几何?

              荅曰:二十七钱十五分钱之十一。

        术曰:置盐二斛升数,以一百里乘之为法。以四十钱乘今负盐升数,又以八十里乘之,为实。实如法得一钱。([25],226页)

这是雇人送盐的问题,由给定的所送盐体积数、距离及对应的佣钱数(雇人送盐的费用),求送另一体积数的盐到另一距离所需的佣钱数。体积和距离之乘积数,与佣钱数成正比,是解决此问题的关键。


此题可与“衰分”章最后关于贷钱的问题做对比。该题是这样的:

今有贷人千钱,月息三十。今有贷人七百五十钱,九日归之,问息几何?

                荅曰:六钱四分钱之三。

        术曰:以月三十日乘千钱为法。以息三十乘今所贷钱数,又以九日乘之,为实。实如法得一钱。([25],107页)

可以看出,这个问题中的贷钱数、贷钱日数和息钱分别与上个问题的盐体积、距离和佣钱相对应;这个问题解法的关键点是,货钱数与贷钱的日数之积,和息钱数成正比,这也与上个问题解法的关键点相对应。可见两个问题具有相同的数学结构,可以通过简单的变通来由一个问题的解法得到另一个问题的解法。


第8题是:

今有负笼重一石,行百步,五十返。今负笼重一石一十七斤,行七十六步,问返几何?

                       荅曰:五十七返二千六百三分返之一千六百二十九。

        术曰:以今所行步数乘今笼重斤数为法。故笼重斤数乘故步,又以返数乘之,为实。实如法得一返。([25],227页)

这个问题由一组已知的笼重和距离的数据所对应的往返次数,求另一组已知的笼重和距离的数据所对应的往返次数。


第8题数学结构与第7题有不同之处,它是以两组笼重、距离、往返数的乘积相等为关键。也可以说,笼重与距离之积,与往返数成反比。它们的相同之处是,都以两个数的乘积和第3个数所成的正比或反比的关系为计算的基础。


第9题的具体内容我们后面会谈到。它讲的是已知来的速度和去的速度,由给定的日数与对应的往返次数,求距离。这与上题有部分类似之处,但已知指标和所求指标都有改易。


第10题,已知络丝与练丝之比,练丝与青丝之比,求已知青丝数对应的络丝之数。


第11题,已知恶粟与粝之比,粝与粺的普遍比,求得到已知粺数所需恶粟之数。


第10~11题的数学结构完全相同。其术文所给出的方法,与现代的连锁连比例求法完全相同,而不涉及比例分配。


第12题,已知善行者和不善行者的速度,以及后者先走的路程,求前者追及后者时所走的路程。这是以两者所行总路程相等为关键的前提条件。


第13题,已知不善行者先行路程,善行者走一定路程后超过前者的路程,求善行者追及前者时(实际是两人都)走的路程。这也是以追及时两人所行路程相等为关键的前提条件。


第14题,已知兔先走的步数,犬再追它,犬追兔时所走给定的步数时兔在犬之前的距离,求犬追及兔需要再往前走的步数。


这个问题和第13题相似,也是以追及时两者所走路程相等为关键的前提条件。但第13题是由先超出的路程求追及时追者所走的路程,而此题则是由不及的路程求追及时追者还需要再走的路程。


第12~14题为一组。王孝通《缉古算经》所引算题亦属于此组,他说:


今按:《九章》“均输”篇有犬追兔术,与此术相似。彼问:犬走一百步,兔走七十步。令兔先走七十五步,犬始追之,问几何步追及?荅曰:二百五十步追及。彼术曰:以兔走减犬走,余者为法。又以犬走乘兔先走为实。实如法而一,即得追及步数。[27]


这是已知犬和兔的速度和兔先行的路程,求犬追走多远后赶上兔。可以看出,这个问题在数学结构上与第12题相同,但设题场景与第14题相同,故可推测它原在第13题与第14题之间。


第15题,已知出关时所持金的数量和关税率,由关卡收税时收金的数量和因多收而找回钱的数量,求金的单价。


第16题,已知客人骑马行走的速度和离开时间,主人骑马追及客人又立即返回的时刻,求主人骑马行走的速度(一日所行路程)。这个问题与前面第11~14题同类。这个问题的位置可能原来在第14题之后。不过,此题求单位时间所走的路程和第15题求单位重量金的价格,有其共性,但后者与第28题在问题情境和数学结构上更接近,所以它可能原来不在此处。


第17题,已知金棍的长度,从其本、末分别斩下一尺的重量,求从末到本每一尺的重量。这是默认金棍从末到本重量均匀地增加。在数学上,它是已知等差数列的首项、末项和项数,求各项的大小。


第18题,已知总钱数为5、人数为5,默认按等差数列分钱,由分得多的2人与分得少的3人分得的钱数相等,求每人分得的钱数。这是已知等差数列的项数和总和,以前3项的和与后2项的和相等为条件,求各项。


第19题,已知一个9节的竹筒,它的下3节总容量之数与上4节总容量之数,并假设两相邻两节容量差均等,求各节的容量。


第17~19题为一组,都是等差数列问题,已知条件不同,但都是已知首项或首几项之和、末项或末几项之和,且都是求各项。第19题中,已知的两头项数之和少于总项数,且一头几项之和不等于另一头几项之和,而第18题则是两头项数之和为总项数,且一头几项之和与另一头几项之和相等,这是第18题比第19题简单的地方。但前者没有像后者那样已知两头几项之和的具体数目,需要由另外的已知条件求出,这是第18题的复杂之处。从数学结构上看,第17题可以视为第19题的特例。


第20题是:

今有凫起南海,七日至北海;雁起北海,九日至南海。今凫、雁俱起,问何日相逢?

                荅曰:三日十六分日之十五。

        术曰:并日数为法,日数相乘为实,实如法得一日。([25],236页)

这个算题已知凫、雁走完一个单程的时间(实际是它们的速度),求两者相向而行且同时出发时相遇的时间。此题术文是抽象性的,没有出现已知条件中的具体数据。


第21题,已知甲、乙两人走完一个单程的时间(实际是它们的速度),求相向而行且乙先出发2日时,甲出发至两人相遇所经历的时间。


第20~21题都是两者相向而行的相遇时间问题。其中关键的等量关系是总路程等于两者所走路程之和。


第22题是已知一人一日分别做牝瓦、牡瓦的数量(亦即做牝瓦和牡瓦的效率),求一人一日同时做同样数量的两种瓦的数量(亦即做同一数量的两种瓦的效率。如果把一块牝瓦和一块牡瓦视为一套瓦,则是一套瓦的效率)。这个问题与第20题在数学结构上相同,前者的效率相当于后者的速度。而且,此题术文“并牝、牡为法,牝、牡相乘为实,实如法得一枚”与第20题术文一样,不采用已知条件中的具体数据而采用抽象性用语,它们语言结构也是一样的。


第23题是已知一人一日分别矫矢、羽矢和筈矢的数量(亦即做三种工序各自的效率),求一人一日做全套这三道工序时能完成的矢的数量(亦即做整套工序的效率)。


第22~23题是同一类。从数学上说,与第22题中两种瓦数量相等的要求类似,第23题是这三道工序所完成矢的数量相等。所以两题数学结构上是相似的,只是第23题多出一个参数而已。


第24题是已知租种田地时第一、二、三年各自的租率,由总租金数求所租田的面积。这里的关键前提是三年所租田的面积是相等的。术文作“置亩数及钱数。令亩数互乘钱数,并以为法。亩数相乘,又以百钱乘之,为实。实如法而一”([25],239页),除“百钱”外,全是脱离了已知具体数据的文字。


这与上面第22~23题的数学结构也相似,租率对应效率,田面积对应于每种瓦的数量或矢的数量(亦即每道工序所加工的矢的数量)。


第25题是已知一人一日分别发、耕、耰田的数量,求一人一日完成一套三种工序时治田的数量。这个问题在数学结构上与第23题即矫、羽、筈矢问题完全相同,但其术文作“置发、耕、耰亩数。令互乘人数,并以为法,亩数相乘为实。实如法得一亩”([25],239页),是没有用到已知条件中具体数据的抽象性术文。


第26题是已知由五条渠向池里注水时,每渠分别单独注满水池的时间(效率),求五条渠一同注水时注满水池所需要的时间。此题术文有两条:“各置渠一日满池之数,并以为法。以一日为实。实如法得一日。其一术:各置日数及满数,令日互乘满,并以为法。日数相乘为实。实如法得一日”([25],240页),都是脱离具体数据的抽象性术文。


这个问题与上面问题的相似之处在于都是已知单独的效率,不同之处在于此题中的等量关系是一同工作时每项的时间相等,而第23、25题则是效果相等。第22~26题可以视为同一类,都涉及分效率与总效率的关系。


第27题:

今有人持米出三关,外关三而取一,中关五而取一,内关七而取一,余米五斗。问本持米几何?

                荅曰:十斗九升八分升之三。

        术曰:置米五斗,以所税者三之、五之、七之,为实。以余不税者二、四、六相乘,为法。实如法得一斗。([25],241页)

这是讲带米出三关,已知每关的税率和出三关后所剩米的数量,求原有米的数量。

第28题讲带金出五关,已知每关的税率和五关所收税的总数,求原所带金的数量。


第27~28题数学结构相似,但后者比前者的关数多二,前者是已知税后所余(即原有数减以各关所收税之和后的余数),而后者是已知各关收税之和。前面关于持金过关的问题与第28题有很大的共性,也许该题原在第28题之前。


为对上述25个问题进行定位,我们需要对《九章算术》中“粟米”、“衰分”、“均输”三章的情形做一总体的概括。这三章都是关于比例算法的。“粟米”章除其率术问题、反其率术问题形式很特殊外,其他算题基本上是基于“粟米之法”所列比率的正比例算法,它们在三章中最为简单。“衰分”章中有一部分是按比例进行分配(用“衰分术”)或按倒数比例进行分配(用“返衰术”)的问题,它们与章名“衰分”很切合,可以称为衰分本术类问题;还有一些是正比例问题和可以较容易化为正比例问题来解的问题,这些问题往往相对简单些。“均输”章的上述25个问题,虽然一般比该章第一类问题要容易,但其中的比例关系不仅比“粟米”章的比例问题要复杂,而且也大多比“衰分”章的非衰分本术问题要复杂,只有很少的问题与之难度相当。从数学结构上看,“均输”章除第7题与“衰分”章最末关于息钱的算题结构相同外,其他问题都与前几章的情形不同,所以从《九章算术》的分类情况看,上述25个算题放在“均输”章而不是其他章,其实是相当合理的。而如果把“衰分”章的那个息钱问题也移入“均输”章,或者把“均输”章的第7个算题移入“衰分”章,则两章的归类在数学结构上就不存在模棱两可之处了。不过,上述第7题是盐的运送问题,而汉代常常把盐、铁的经营与均输作为一起讨论的话题(详第3节所引《盐铁论》),所以编者把第7题置于“均输”章而不是“衰分”章大概不是出于偶然而是有意为之的。从这一角度看,衰分章的息钱问题置于“均输”章才是最合理的。此题没有出现在“均输”章,虽然也有可能是流传过程中的差错,但更大的可能还是编者考虑不周的结果,毕竟我们不宜假设古人对每个地方都考虑得那么周密。


总之,“粟米”、“衰分”、“均输”三章中算题的安排是有规律可寻的:一方面,编者按算法上从易至难的顺序把它们安排到三章中去;另一方面,在同一章内则是按现实背景或相关性,基于以类相从的思想进行归类和编排的。当然,此章中算题的顺序在现存不同版本中有所不同,其中略有不合理之处,是源于流传之误还是编者的疏忽,还不能完全确定,大概这两种因素都是有可能的。


2.3  “均输”的含义与“均输”章问题的归属


从字面意思看,“均输”不像算法的名称。它含有两个词素:“输”有运输、输送之义,是具体的劳动;“均”有均等、均衡之义。在“均输”中“均”可以理解为对“输”的要求。“均输”在其早期使用的阶段,应该是指针对一种输送活动,要求在某些方面能做到均等或均衡,这自然需要数学方法的参与。当初古人在解决具体算题时,自然会用到范围很窄的特定算法,但这并不意味着当初就限定了“均输”只能对应这样的特定算法。在“均输”一词中,让什么事物均等、输送什么东西,是完全看不出来的。那么,在历史长河中,它可以随着时间的推移包容不同的问题。前辈学者用对赋税的负担公平(均等)来理解“均”字,将其字面含义窄化了。前面已经说到,对于前4个多指标下的公平负担问题,用“均输”远不如用“均赋”概括来得妥当,而且“均赋”一词就出现在第3、4题的首句中。所以从章名与这4个同类问题相契合的角度看,此章应该题名“均赋”。那么此章之所以题名“均输”,很大可能性不是认为它能很好地体现公平负担的含义。


“均输”章前4个问题化为衰分术求解,而衰分术中各衰之间是有比例关系的,也可以说各衰之间存在着对应于某物的相等关系(比如在第1题中,甲、乙、丙、丁四县的衰分别为125、95、95、61,那么它们分别出125份、95份、95份、61份时,四个县中平均每户的负担是相等的)。至于该章后24个算题以及王孝通所引的一个算题,如上一小节所分析的,它们要么以相等关系为前提,要么以存在某种比例关系为前提,而比例关系又以相等关系为前提,所以这些问题能体现“均”字之义。不过,“粟米”和“衰分”两章也处理比例问题,所以“均输”章中无关公平摊派赋税的算题在某种意义上具有“均”的含义,只是它们置于“均输”章的必要条件而非充分条件。那么《九章算术》第六章为什么题名“均输”?该章按什么标准纳入算题?这些问题,目前还难窥全豹,但部分原因还是可以通过分析得出的。


“均输”章第1、2两题首句分别作“今有均输粟”、“今有均输卒”,其中“今有”是设问起首用语,在其他各章都用,没有区分度,两题区别于其他章算题的共同用词就是“均输”,这很可能就是此章取名“均输”的一个重要原因。这种命名法,与《论语》第一篇由首句“子曰:‘学而时习之,不亦说乎?……’”取名“学而”、第二篇由首句“子曰:‘为政以德,……’”取名“为政”的方式相同。


《九章算术》本文没有对“均输”的含义做解释,但刘徽注中有多处涉及。在第1题术文的注中有三处讲到“均”(为便于指称,用印度-阿拉伯数字标记文字单元):

1.(1)此均输,犹均运也。令户率出车,以行道日数为均,发粟为输。(2)据甲行道八日,因使八户共出一车;乙行道十日,因使十户共出一车;……计其在道,则皆户一日出一车,故可为均平之率也。

2.各置所当出车,以其行道日数乘之,如户数而一,得率:户用车二日四十七分日之三十一,故谓之均。

3.车、牛、人之数不可分裂。推少就多,均赋之宜。([25],218页)

第1条的(1)中“均输,犹均运”实际是用“运”解释“输”字后做的代换;而“以行道日数为均,发粟为输”与第2题术文注中说的“此亦以日数为均,发卒为输”、第3题术文的注中说的“此以出钱为均也”([25],217~221页),都把一个具体的东西“(行道)日数”、“出钱(数)”作为均的对象,显然这里要“均”的东西并不能理解为考虑题设中所有因素下的负担,也不能理解为表示所有因素总体负担效果的最终指标;而对“输”字则指明了具体所输送的物品。


不过,第1条的(2)具体说了如何让“行道日数”(从出发地点走到目的地所需天数)折算成户数,并认为最终结果是“均平之率”。第2条也说通过计算得出每户用车之率,所以叫做“均”。第3条则明确说明在这样的问题中,车、牛、人的数量是相互关联的,可以通过“推少就多”来实现让赋税均等(“均赋”)的要义。这里“推少就多”含义模糊,字面上有将少的数量放到多的数量那里去的意思,目的是让赋税均等,但实际上应该是指为了使不同县在某一种指标上均等,要将各县三种多少不一的数量进行特定的处理。第2、3题的刘徽注中也有类似的文字。可以肯定,刘徽确实意识到了这种问题要处理多指标下的公平负担。不过,刘徽对这几个算题中“均”字含义的具体解释,不一定意味着“均输”在其他语境中也一定有针对多指标下的公平负担之义。


刘徽对“均输”章章名的注释只有“以御远近劳费”六字,从字面上看,他说的是“均输用来处理远近、劳费方面的问题”。“远近”是距离;“劳费”既可以按常规理解为劳动力费用,在此章的问题中对应于“佣价”,也可以理解为“劳、费”,此时既包括劳动力(包括其费用)也包含物品的费用(价格)。这里没有涉及“远近”和“劳费”是否要统筹考虑的问题,所以并不能认为刘徽心目中就一定有与前4题吻合得好的“均输本术”。如果按统筹考虑“远近”与“劳费”理解刘徽对章名的解释,那么还有第7题属于标准的均输问题,因为它也把距离和费用统一考虑。所以即使按狭义来理解刘徽的标准,也不止前4题属于均输算题。


如果按广义来理解刘徽对“均输”章题名的解释,即“远近”与“劳费”可以不同时考虑的话,那么符合其标准的均输问题,还有“均输”章第8~9、12~14、16、20~21题以及王孝通引的一个算题等9个算题,因为它们都涉及距离,对应于“远近”。其中第8~9题涉及运输,与“均输”中的“输”对应。所以如果按宽松标准来理解刘徽对“均输”的界定,那么连同前4题、第7题,《九章算术》将有14个符合其均输标准的算题,接近此章题数之半。另外,第5节将证明,第9题的问题情境正好是战国时秦国或秦朝少府下均输部门的工作,此类问题原本就在均输的范围内。因此,用是否“均输本术(法)问题”来对前4题与其他问题进行划分,很可能是不妥当的。所以,无论是否按刘徽的标准,也无论是按刘徽的严格标准还是其宽松标准,在“均输”章前4题以外的算题中肯定有一部分不是张苍、耿寿昌新补而是早已有之的。[⑦]


综合上述讨论,“均输”不是一种特定算法的名称,其字面意思是考虑某种均等数量下的输送。古人将这类算题归类置于一章之中时,由于公平摊派赋税的4个算题相似性大,把它们按从易到难的顺序编排成前4题。可能考虑到这类算题涉及均等、输送,于是以首题首句的关键词“均输”作为章名。同时,还有一些涉及到均等观念而不涉及运输的比例算题,在数学结构上能与粟米、衰分等章的算题区分开来,编纂者也根据其相似性把它们纳入“均输”章中。


03

 “古之均输”与“今之均输”


宋杰、胡平生提到《盐铁论》中谈到古、今两种均输。这种区分很有意义,但他们的论述比较简单。下面做比较详细的讨论。


元始六年(前81)西汉昭帝下诏,令丞相田千秋、御史大夫桑弘羊召集郡国推举的贤良、文学讨论民间疾苦之所在。桑弘羊与贤良、文学意见相左,进行了激烈的争论,是为著名的盐铁会议。桓宽(生卒年不祥,在宣帝时为郎,官至庐江太守丞)根据会议记录,写成了《盐铁论》。此会议所讨论的主题中,有一项重要的议题为是否还要保留盐铁、酒榷和均输官。贤良、文学对此持否定态度,而桑弘羊则相反。《盐铁论》中有很多段落对于我们了解均输有重要的价值,今引述如下(为方便指称,我们用印度-阿拉伯数字进行标序):


“本议”篇说:

1.文学对曰:“……今郡国有盐、铁、酒榷、均输,与民争利。散敦厚之朴,成贪鄙之化。是以百姓就本者寡,趋末者众。夫文繁则质衰,末盛则本亏。末修则民淫,本修则民悫。民悫则财用足,民侈则饥寒生。愿罢盐、铁、酒榷、均输,所以进本退末,广利农业,便也。”

2.大夫曰:“……先帝哀边人之久患,苦为虏所系获也,故修障塞,饬烽燧,屯戍以备之。边用度不足,故兴盐、铁,设酒榷,置均输,蕃货长财,以佐助边费。今议者欲罢之,内空府库之藏,外乏执备之用,使备塞乘城之士饥寒于边,将何以赡之?罢之,不便也。”

3.大夫曰:“……陛下垂大惠,哀元元之未赡,不忍暴士大夫于原野;纵难被坚执锐,有北面复匈奴之志,又欲罢盐、铁、均输,扰边用,损武略,无忧边之心,于其义未便也。”

4.文学曰:“……今废道德而任兵革,兴师而伐之,屯戍而备之,暴兵露师,以支久长,转输粮食无已,使边境之士饥寒于外,百姓劳苦于内。立盐、铁,始张利官以给之,非长策也。故以罢之为便也。”

5.大夫曰:“……故工不出,则农用乏;商不出,则宝货绝。农用乏,则谷不殖;宝货绝,则财用匮。故盐、铁、均输,所以通委财而调缓急。罢之,不便也。”

6.大夫曰:“……陇、蜀之丹漆旄羽,荆、扬之皮革骨象,江南之楠梓竹箭,燕、齐之鱼盐旃裘,兖、豫之漆丝絺纻,养生送终之具也,待商而通,待工而成。故圣人作为舟楫之用,以通川谷,服牛驾马,以达陵陆;致远穷深,所以交庶物而便百姓。是以先帝建铁官以赡农用,开均输以足民财;盐、铁、均输,万民所戴仰而取给者,罢之,不便也。”

7.大夫曰:“往者,郡国诸侯各以其方物贡输,往来烦杂,物多苦恶,或不偿其费。故郡国置输官以相给运,而便远方之贡,故曰均输。开委府于京师,以笼货物。贱即买,贵则卖。是以县官不失实,商贾无所贸利,故曰平准。平准则民不失职,均输则民齐劳逸。故平准、均输,所以平万物而便百姓,非开利孔而为民罪梯者也。”

8.文学曰:“古者之赋税于民也,因其所工,不求所拙。农人纳其获,女工效其功。今释其所有,责其所无。百姓贱卖货物,以便上求。间者,郡国或令民作布絮,吏恣留难,与之为市。吏之所入,非独齐、阿之缣,蜀、汉之布也,亦民间之所为耳。行奸卖平,农民重苦,女工再税,未见输之均也。县官猥发,阖门擅市,则万物并收。万物并收,则物腾跃。腾跃,则商贾侔利。自市,则吏容奸。豪吏富商积货储物以待其急,轻贾奸吏收贱以取贵,未见准之平也。盖古之均输,所以齐劳逸而便贡输,非以为利而贾万物也。” [28]

“力耕”篇说:

9.大夫曰:“……往者财用不足,战士或不得禄,而山东被灾,齐、赵大饥,赖均输之畜,仓廪之积,战士以奉,饥民以赈。故均输之物,府库之财,非所以贾万民而专奉兵师之用,亦所以赈困乏而备水旱之灾也。”

10. 大夫曰:“……故善为国者,天下之下我高,天下之轻我重。以末易其本,以虚荡其实。今山泽之财,均输之藏,所以御轻重而役诸侯也。汝、汉之金,纤微之贡,所以诱外国而钓胡、羌之宝也。夫中国一端之缦,得匈奴累金之物,而损敌国之用。是以骡驴馲驼,衔尾入塞,驒騱騵马,尽为我畜,鼲貂狐貉,采旃文罽,充于内府,而璧玉珊瑚琉璃,咸为国之宝。是则外国之物内流,而利不外泄也。异物内流则国用饶,利不外泄则民用给矣。”([28],27~28页)

“忧边”篇说:

11.大夫曰:“……故君薨,臣不变君之政;父没,则子不改父之道也。春秋讥毁泉台,为其隳先祖之所为,而扬君父之恶也。今盐、铁、均输,所从来久矣,而欲罢之,得无害先帝之功,而妨圣主之德乎?有司倚于忠孝之路,是道殊而不同于文学之谋也。”([28],162页)

“国疾”篇说:

12. 丞相史曰:“……大夫难罢盐、铁者,非有私也,忧国家之用,边境之费也。诸生誾誾争盐、铁,亦非为己也,欲反之于古而辅成仁义也。二者各有所宗,时世异务,又安可坚任古术而非今之理也。且夫小雅非人,必有以易之。诸生若有能安集国中,怀来远方,使边境无寇虏之灾,租税尽为诸生除之,何况盐、铁、均输乎!”([28],332~333页)

上述引文中,“大夫”即桑弘羊,时任御史大夫。“文学”是汉代察举制度选拔人才的一个科目,亦指从这个科目选拔出来担任官员的人才,这里指后者。


上述材料说明,文学们和桑弘羊对于盐、铁、均输等经济政策实施中的实际情况有不同的认识,对其利弊也有迥然不同的估价。前者认为应该废止这些经济措施,后者则主张保留。


在文学们看来,均输是商业行为,“与民争利”。本来如果罢去政府的商业行为,似应能给民间留出更多的商业空间,但他们却觉得能够表现出政府重农抑商的一种态度,因而有利于农业生产而减少商业。


桑弘羊从历史的角度说明由于边塞过去长期受匈奴侵害,所以武帝要大力对匈作战,修筑边塞的防御设施,派兵屯戍。常规的赋税不足以支持其耗费,所以要通过“兴盐、铁,设酒榷,置均输”来增加财政收入,以维持军费的开支。而如果按文学们的主张罢去这些经济措施,就会使财政空虚,缺少武器装备,致使守卫边疆的将士们受到饥寒之苦。


针对桑弘羊为了保卫边疆,必须保留盐铁、均输、酒榷等国有经济措施以提供财政支持的观点,文学们认为,为了征伐和备战而设立盐、铁、均输等职官来提供用兵的财用,会使百姓蒙受苦难,是得不偿失的。他们主张不用兵戈压服而用德化来使外夷归服,这样就可以取消这些与民争利的政策。


不管是文学们还是桑弘羊,都认为他们当时的均输主要是商业活动,只是这种活动对国家和百姓的利弊,他们有相反的认识。在第8条中,文学们提到了历史上“均输”的不同之处,说到“盖古之均输,所以齐劳逸而便贡输,非以为利而贾万物也”,说明“古之均输”与当时买卖各种物品以牟取利润的现实迥然有别,而是用来让不同地方的人负担均等从而有益于贡输的政策。尽管没有“今之均输”的用语,但作者显然把不同时期的均输视为两种截然不同的经济制度。他们认为:古代按照百姓的实际情况征收赋税,他们产什么就缴什么,做法合理,当时采用的均输之法是用来“齐劳逸而便贡输”的,意思是这种均输法让被征收赋税的不同人之间的负担相等,一旦使负担合理了,人们就没有抵触情绪,也会很顺从地遵循这种方法进行进贡和输送赋税。与古代不同,现在征收赋税时,不让他们缴纳自己生产的物品,而是要上缴他们自己不生产的物品,致使百姓贱卖自己的产品来换取官吏要求的东西。有的地方还命令百姓制作布絮,官吏恣意刁难,强行收购。而收购中官吏又用奸诈手段压低价格,使农民承受双重的苦难,女工负担双倍的税收,从这种均输中实在看不到百姓输送物品时的“均”字体现在哪里。文学们认为“今之均输”不能合理分配赋税,而是为了谋取利益而贩卖各种商品,与古之均输的主旨完全相反,所以应该取消。


文学所说大概不能反映当时实行均输时的全面情况,对其中存在的弊端也可能有些夸大。这姑且不论。但他们关于古今均输的区别很有意义,其对古均输的描述“齐劳逸而便贡输”与多指标下的公平负担问题反映的场景一致,在字面上也与“均输”章第4题中“粟有贵贱,佣各别价,以算出钱,令费劳等”相一致,也属于刘徽注均输所说“以御远近劳费”的范围,所以《九章算术》“均输”章前4题的现实背景确如宋杰、胡平生所说的属于文学之士所说的古之均输。


在第7条中,桑弘羊也说“均输则齐劳逸”,这来源于“古之均输”的理念,但似乎在他看来均输的“齐劳逸”的主旨不见得是为了让被征赋税的人负担相等,而是为着“便贡输”。这条的上文提到,以前地方贡输的方式不好,贡输来的东西质量差,甚至还有所贡之物抵偿不了运费的情况,所以要设置输官来转运,从而方便远方的人来进贡。他还提到,均输与市场低价买入、高价时卖出的平准结合起来。其他条中也反映出通过均输经商而牟利[⑧],所以桑弘羊的均输与上述“古之均输”已有很大的出入。这个均输虽然也要考虑到对不同地方的人的进贡要有公平性,但这是一种粗放的安排,其主旨不在于让纳税人负担均平合理,而是要利用上缴来的赋税进行转运经商以获利,为国家积累财富。这种今之均输,可以从两个方面来理解。从初衷来说,让各个地方进贡当地盛产的物品,由均输官收取到别处贩卖,既不增加百姓的负担,又能为国家开拓财政收入。即使均输官以稍低于市场价收购当地的主产物品,也不至于造成太大的问题。但从实际执行来说,掌管均输的有关官吏们会滥用国家权力,产生文学们所指责的逼迫百姓进贡当地不出产的物品,导致百姓贱卖自己的产品来换取官吏要求的东西,以及强行以过分低贱的价格收购物品等粗暴、腐败行为。也就是说,实行这种均输,除了为国家积累财富,还会让官吏大肆中饱私囊,使百姓受苦受难,出现与设置均输官的初衷相反的弊病,为贤良文学所诟病。这种均输便是与贤良文学所赞同的“古之均输”相对的“今之均输”。


总之,“古之均输”在于让百姓公平负担赋税,在理想情况下“今之均输”是以国家赋税为底本进行转运贩卖获利。两种均输都与国家财政有关,前者限于收缴阶段,后者重在收缴后的利用和生财。前者的对象是粮食、物产和徭役;后者的最初阶段与前者相同,后面的阶段则是各种商品。当“今之均输”出现弊病以后,则收购、收缴的对象范围扩大,获利的不只国家,可能更多的是腐败的官吏了。在均输官经商过程中,交通运输当然是一个重要方面,所以均输涉及到交通运输是自然的。


仔细审察《九章算术》“均输”章算题的现实背景,可以发现,只有前4个问题和“古之均输”相对应,而第9个问题涉及国家的运输活动,但与前4个问题明显不同。第9个问题既不涉及收缴物品,也不涉及买卖,所以要说它与“今之均输”有关系,也没有证据。其他问题中虽然有第15、27~28题也涉及抽税和运输,但不是针对国家的商业、运输活动,而且是政府关税部门针对民间商业进行的征税活动,所以它们与上述两种经济上的均输都没有直接的关系。当然,如上所述,这些与均输制度没有本质联系的算题被安排在“均输”章,仍是出于一种有意的设计,其根据既在于数学结构上的某些相似性,也在于章名“均输”有更宽泛的含义。


04

“古之均输”与多指标下的公平负担问题


古之均输的思想由来已久。前人已利用《周礼》、《吕氏春秋》、《荀子》等多种传世文献说明先秦时期已有均输的思想,这里再做强调。《国语•鲁语下》云:

季康子欲以田赋,使冉有访诸仲尼。仲尼不对,私于冉有曰:“求来!女不闻乎?先王制土,籍田以力,而砥其远迩;赋里以入,而量其有无;任力以夫,而议其老幼……若子季孙欲其法也,则有周公之籍;若欲犯法,则苟而赋,又何访焉。”[29]

季康子想要增加田赋,派孔子的学生冉有去向孔子咨询。孔子对其正式访问没有回答,但私下里对他说,先王时按土地的肥瘠、劳动者体力的强弱、土地的远近等方面分为不同的档次进行征税。孔子讲到征税方法,显然含有均输(限于“均赋”)的思想。其中提到4个参数:土地的肥瘠,劳动力的强弱、老幼,距离的远近,以及物产的种类。4个参数中至少前3个与负担公平的思想密切相关。后文中,孔子说如果季孙氏真想执行合理的征税方法,则已有周公征税方法作为样版(“若子季孙欲其法也,则有周公之籍”),由此可知孔子认为这种征税的方法(“先王制土”之法)是本于周公的,这与相传出于周公的《周礼》中关于负担公平的思想有着一致性。可见,均输(“均赋”)思想至少可以追溯至西周初年。上引《盐铁论》桑弘羊也说“今盐、铁、均输,所从来久矣”,也反映了汉代人认为均输有古老的渊源。


上述均输(“均赋”)制度实际是按公平的理念征收赋税的方式,为了贯彻这一理念,需要考虑影响公平的多项指标,设计算法来计算赋税的数量。而这就是多指标下的公平负担问题的数学方法。所以这些数学方法应该有很早的渊源,在西周初期应有这类方法的原始形态。郑众注《周礼》“九数”时,提到其中有“均输”这个科目,或许也反映了在西周时代已有适应于这种制度的均输类算法和相应的算题。


《左传》记载蒍艾猎、士弥牟筑城等几次大的土木工程,都要制订计划,考虑多方面的因素。这就必须用到多种类型的数学方法,其中包括与多指标下公平负担的均输问题在数学结构上相似的数学方法,同时也会用到与“均输”章中相对简单一些的数学方法相同或相似的算法。商鞅变法之后,秦国对工程修筑的计划和实施有着更为严格的规定,其中用到这类方法自然不在话下。([9],146~152页;[11])


应该指出的是,上面的讨论只是证明在先秦应该有多指标下的公平负担问题的数学方法,并未证明“均输”章这种问题产生于当时。不过,前面说到《九章算术》“均输”章的多指标下的公平负担问题与桑弘羊的均输不合而与当时所谓的“古之均输”相合,说明这4个问题来源于比桑弘羊更早的时代。出土简牍证明了这一点。


阜阳发掘的文帝时一座墓葬有数学书,可惜保存很差,但其中有两个残片对于我们研究多指标下的公平负担问题很有价值。这两个残片的文字是:

 □万一千二百户行二旬各到输所 (28号简)

千六百 (20号简)[3]

胡平生认为这是《九章算术•均输》第1题的残文,前一个对应于“丁县一万二千二百户,行道二十日,各到输所”,简文“一千”、“二旬”在《九章算术》中分别作“二千”、“二十日”,“皆无伤大体”;后一个简文是“车一千六百二十二乘”的一部分。[3] 笔者在古文献数据库中,没有查到其他与上述残文相合的文字,说明这不是巧合,而是同一个题目稍为有异的文本(简文“一千”可能是“二千”之误)。因此,《九章算术》的这个问题,至迟在公元前157年就已存在。可以想见,该章大多数其他问题也应有更早的渊源,不必等到武汉帝时代才出现。当然,此题的文字经过了整理者(应为耿寿昌)的修改。


“均输”章第4题用到一个常数“重车日行五十里,空车日行七十里”,这个常数又见于第9题(详第5节),在后者中这个常数是作为邮传的程出现的,属于法律的范围。果然,张家山汉简《二年律令》中的“徭律”记有:

事委输,传送,重车重负日行五十里,空车七十里,徒行八十里。[30]

 “重负”二字大概是要强调重车装有满负荷。这条徭律的规定中,用传车委输时空车和重车的速度标准与上述题目正好相同。该徭律甚至还规定了不用车步行时的标准速度为日行80里。因此,这个算题是在这条法律实行时代形成的。这条法律在汉初施行,它有可能是汉初的新规定,也可能是汉初沿用前代的法律。到底是哪种情况呢?后面我们将说明,新公布的岳麓书院藏秦简和北大秦简给我们提供了肯定答案,只是秦简显示战国时代的秦国或秦代,采用了更为严苛的数量标准。所以,“均输”章的第4个问题,很可能在秦国或秦代有其蓝本,只是采用了不同的数据。到了汉初,张苍可能根据放松了标准的徭律,对问题进行了修改。可以想见,该章前3题,也可能是在更早时代就有其蓝本的。


05

少府下的均输与相应的均输问题


《盐铁论》中的文学们认为汉武帝以来实行的均输不是他们所崇尚的“古之均输”。那么他们所理解的“今之均输”是否就是汉武帝以来才有而以前没有的呢?我们认为今之均输有两方面的要素:一是政府在物资丰富特别是粮食丰产而价贱时买进,物资缺乏特别是粮食减产而价贵时卖出,以起到平抑物价、稳定社会的作用,实际相当于平准的作用;二是政府通过转运物资、异地商贾,以达到增加财政收入的目的。通过对照可知,这两方面在“均输”章的问题中都没有反映。所以“均输”章与汉武帝的均输法是没有关系的。不过,均输与运输有关,这在张家山汉简《均输律》中有反映:

船、车有输,传送出津、关,而有将啬夫、吏,啬夫、吏与敦长、方长各□□见其□□将,有盗,出□□置皆如关□。二二五

■均输律 二二七[⑨]

简文(简文后的汉字数字是竹简的编号)保存不完整,具体的内容也不是很清楚,但可以看出这是讲水路和陆路运输的管理,涉及货物运送出渡口、关卡时有关官员的职责和出现问题时的责任与处罚。除了讲到的运输会涉及到与数学有关的速度、时间、里程、货物和人力的多少等因素外,看不出律文本身和数学上的均输是什么关系。所以,这种经济上的均输远在汉武帝之前,不论数学上的均输与经济上的均输是否完全对应,都不能由这种经济上的均输断定《九章算术》的均输在汉武帝中后期才有。不过,上文提及“均输”之名的材料都不早于汉代。那么之前是不是已经有的呢?我们对此做一考察。


《越绝书》中有“均输”之名:

吴两仓,春申君所造。西仓名曰均输,东仓一里八步。后烧,更始五年,太守李君治东仓为属县屋,不成。[32]

这里提到春申君(?~238)所造的西仓取名均输,可见战国时代的楚国已此名。此均输仓是否与商业活动有关,尚无法判断,但这个仓名“均输”系借用已有名词的可能性,也不能排除。


《岳麓书院藏秦简》为我们了解其他均输算题的时代背景提供了证据。其中说到:

⍁少府均输、四司空,得及自出者,吏治必谨讯,簿其所为作务以[33]

这条简文保存不完整,但所存简文的“均输”,明确证明“均输”之名早在先秦或至迟秦代就已存在。一般认为,先秦时期韩国已有少府。秦汉时期的少府是管理帝王皇室财政的机构,供养国君,为九卿之一。又有将作少府,掌治宫室。皇太后、皇后亦有宫官曰少府。将作少府下有司空,是负责工程营建的官。[34-35]  上引简文前有残断缺失的部分,所存简文内容太少,不能详知,但从简文应可推知在秦代(秦国),此均输是少府(是不是将作少府?)下的一个职官。


前面说到,文学们指责“今之均输”“为利而贾万物”,“与民争利”;桑弘羊也说“均输”“蕃货长财”、“佐边费”。他们对于均输看法的一个共同点是,均输官通过商业行为获取利润。结合少府管理皇(王)室财政的职能看,上引秦简中均输作为少府的一个职官,除了运送和储藏帝王所需要的物资外,还可能通过商业交易获利而积累财富。


无论如何,秦简的均输官,与皇家内府的财物有关,涉及皇室财物的运输乃至经营。所以经济上的均输,在秦国或秦代至少有两个方面,一是国家收税和征役时考虑多个因素的公平负担,二是皇(王)室私家财物的运输、管理与经营。这两种均输,都涉及运输,都属于官府的工作,就需要有相应的规定。上述汉简中的《均输律》虽不完整而没有提供与数学有关的信息,但《徭律》中的数据,应该运用于这种均输,尤其是皇家的均输。这种运用可以在数学问题中找到相应的根据,如上面提及的《九章算术》“均输”章第4题(引文详上文)和第9题。后者是这样的:

今有程传委输,空车日行七十里,重车日行五十里。今载太仓粟输上林,五日三返。问太仓去上林几何?

                荅曰:四十八里一十八分里之十一。

        术曰:并空、重里数,以三返乘之,为法。令空、重相乘,又以五日乘之,为实。实如法得一里。([25],227~228页)

首句的“程”字,有一异文作“乘”,郭书春在对应的第146条校勘记中认为后者更好([25],262页),但没有改动原文。这个取舍是有问题的。按笔者的考证[12],此字作“程”远比作“乘”字更合理。这个问题反映了官府利用传这个交通系统从太仓向上林苑运送粮食的史实。但它不会是现实问题的直接移录,而可能是根据更早时代已有的问题改换数据而成。


“均输”章的这个算题中提到的“上林”即上林苑,是秦汉的皇家园林,属于少府管理。而秦简又记载少府下有均输,因此,“均输”章的第9题,很可能其蓝本原本就应该属于均输。也就是说,均输在秦代或更早时代,就至少有两类问题,一类是多指标下的公平负担问题,另一类是与少府下均输官的职能有关的运输问题。当然,当时的均输问题应该还有其他类型的,但或已不存于今,或因信息太少而难以分辨了。在秦至汉武帝之间,我们能找到类似的算题,说明这类算题是的确可以向前追溯的。


21世纪初,在比汉武帝实行均输法早四五十年的睡虎地汉墓中,出土了一部竹简算书,名曰《算术》。其时间在西汉文帝末年(公元前157年)至景帝(公元前157年~公元前141年在位)初年之间。此书目前只有少量材料公布。这些公布的材料中有一张含有十支简的照片,其中从左往右数的第2和第3支简的释文如下:

重车日行五十里,空车日行七十里。今一日七反,问载、输所相去几(第2支)

何里?曰:四里六分里一·术曰:并空、重,以七反乘之,为法。空、重相乘,为实。(第3支)[12]

“反”通“返”,是指一个往返。“载、输所”是指装载物资出发地和物资运达的目的地。这两支简构成了一个算题,包括题设、答案和解法,文字是完整的。


《算术》这个问题与上述《九章算术》“均输”章第9题互有异同。它们都用到重车每日所行里数、空车每日所行里数、某段时间内往返的次数、路途远近这4个数据,都是已知前3个求第4个。前者是5日往返3次,后者是1日往返7次,时间正好是一日。与此对应的术文在求被除数(“实”)时,前者要比后多一个步骤“以五日乘之”,后者则没有用日数去乘的步骤,这实际也相当于用“一日”去乘。[12] 这两个问题的相似性、其中都用到西汉初期徭律规定的程,说明《九章算术》的这个问题即使其本身是汉武帝时代定型的,也以更早时代的相似算题为原型,与桑弘羊推行的均输法没有关系。


笔者根据多方面的证据推论,“《二年律令·徭律》中对委输的空车、重车和不驾车步行的速度的规定,很可能属于汉承秦制,而非汉初所增益。因此,相应的算题和算法应该在秦代或战国时秦国出现过。”[12] 果然,我们在最新公布的岳麓书院藏秦简中发现了与汉初《徭律》关于委输的程相似的规定:

繇律曰:委输传送,重车负日行六十里,空车八十里,徒行百里。([33],150页)

“繇”通“徭”,“繇律”即“徭律”。律文“重车负”,对比张家汉山张家山汉简《二年律令》的《徭律》,“负”字前少了“重”字,也可能是秦简脱落了“重”字。比较两条徭律,有两点值得注意:(1)汉简的数据与秦简不同,说明汉律不是照抄秦律。《九章算术》“均输”章第4题、第9题以及睡虎地汉简《算术》的委输算题采用的不是秦代而是汉代的数据,说明这三个算题的定型是在汉代而不是在战国时代的秦国或秦代。(2)汉律与秦律的内容在性质和格式以至行文上都是一样的,只是数据上比秦律要放得宽,说明汉律沿袭了秦律而修改了数据。我们知道秦律苛繁而严格,这两条律文提供了新的实例[⑩]。秦简的徭律说明秦国或秦代也应有这类算题,《算术》和《九章算术》的这些算题,应该是以前代的同类算题为蓝本结合汉代的数据进行修改而来的。而秦简所记少府下有均输,说明《算术》的委输算题和《九章算术》“均输”章第9题原本就是均输类算题,后者本来就出现在耿寿昌之前《九章算术》版本的“均输”章内,而且《九章算术》在秦或先秦的祖本中,就有这一问题的蓝本。    

秦律除了对陆路的行程做出规定外,秦简中还发现了对水路的行程做出的规定。据辛德勇介绍[38],在北京大学藏秦简中,有一种水陆里程简册,“比较详细地记录了秦南郡内部及其迤北直至洛阳的道路里程”,“具有浓重的官府文书色彩”。它在记述各条道路行经的具体地点之前,开头就记述了“每日行程的定额”:

用船江、汉、员(涢),夏日重船上日行八十里、下百卌里,空船上日行百里、下百六十里。(04-211)

春秋重船上日行(七十)里、下百廿里,空船上日行八十五里、下百卌里。(01-219)

冬日重船上日行六十里、下百里, 空船上日行(七十)里、下百廿里。(04-052)

它小水,夏日重船上日行六十里、下八十里,空船上日行(七十)里、下百一十里。(04-054)

春秋重船上日行卌五里、下六十里, 空船上日行五十里、下八十里。( 04-053)

冬日重船上日行卌里、下五十三里,空船上日行五十里、下(七十)四里。(04-046)

辛先生指出“这种根据江河水量及其季节变化而制定的每日最低运行里限制,应该是官方颁行的法规”。


引文中,简文后括号内的数字是简号。04-054号简开头有“它小水”,意思应该是其他水量小的情形(或河流),这是相对平常水量的情况而言。“它小水”除针对此简外,亦针对以下的04-053号简和04-046号简。在简文给出的这些规定中,按季节分为夏日、春秋和冬日三种,船的情况分为装载货物的重船和不装载货物的空船两种,航行方向分为逆流的上行和顺流的下行两种。从夏季、春秋到冬季,定的指标大都越来越低(只有一个例外,就是在水量小的河流里,上行的空船在春秋与在冬日的标准相同,都是日行五十里);从重船到空船、从上行到下行,定的指标都是从低到高。这种特点反映出秦人所订标准的合理性。


这几条前面有“用船江、汉、员(涢)”,说明针对的是官船在这几条河的水运。虽然在其他水路的标准可能不完全相同,甚至有的小河也可能没有制定固定的标准,但这几枚简反映出秦律对官船运送货物确实制定过严格的日速标准。可见秦代对官府从陆路和水路运送货物都制定了程。按理说,为了适应经济管理和经济活动的需要,两类算题都应该在当时存在过。可惜的是,关于水路的算题已不存于今,关于陆路的算题也是绝无仅有了。


06

从出土算书看纳入“均输”章的其他算题及算法


上节证明,“均输”章第9题应该在《九章算术》先秦祖本中有其蓝本,说此章后24题均为汉代人新补的非均输本术问题,是不合适的。那么其他23题与王孝通所引的算题是不是汉代(主要是耿寿昌)新补的呢?我们先回顾一下前人是怎么做出判断的。前人判据有二:一为是不是“均输本术问题”,二为是否具有术文统率应用问题的形式。


第2节已经证明,“均输本术”并不是一个意义明确的概念,不宜用是否“均输本术”来对前4题与其他算题进行区分,而且明确与“均输”字面意思相合的也不限于前4题,故第一条判据不足为凭。


第二条判据基于三方面的理由,一是把《九章算术》中体例为“一题一术且术文未脱离题设的具体对象及数值”的部分剔除,则余下的体例为术文统率应用问题的部分与郑众、郑玄所说的“九数”名目一致;二是逻辑水平的差异;三是物价差异。


先看第一方面的理由。剔余部分内容而只保留术文统率应用问题的算题后,固然能与二郑所列的“九数”一致,但保留一些“一题一术且术文未脱离题设的具体对象及数值”的算题也不见得就不一致。《九章算术》的章名与“九数”完全相同的有包括“均输”在内的六项,两者有差异的只有三项:“衰分”对“差分”、“盈不足”对“赢不足”、“勾股”对“旁要”,其中前两项都公认是同义词,存在区别的只有第三项。被认为存在体例差别的有衰分(与差分)、均输、盈不足(与赢不足)、勾股(与旁要)四项,而如果把算题与科目名称做对照,可知算题超出科目名称的还有方田(如关于分数四则运算的问题)、粟米(如其率与反其率算题)两章。可见算题体例上的差别远超出科目名称上的差别,两类差别对应得相当不好。另一个值得注意的是,就“均输”章而言,前4题也是一题一术,第3、4题的术文中也出现了题设中给出的常数[⑪];而关于负笼的第8题、关于凫雁的第20题、关于牝瓦牡瓦的第22题、关于程耕的第25题以及关于五渠注池的第28题等五个问题都采用了“脱离题设具体对象及数值”的“抽象性术文”(2.2节有引文)。也就是说,从术文体例看,此章后24题中至少有5个与前两题是一样的,而第3、4题与它们接近而稍有区别。


第二条理由有关逻辑水平。战国时期的逻辑水平可能总体上是比汉代高,但这不意味着某本具体的著作在总体逻辑水平较高时期的版本要比之后总体逻辑水平较低时期的版本在体例上要严整,后来者继承已有的体例不是什么难事,不必把已有的规整体例改乱。实际上,不管什么时期,把多种多样的数学方法和数学问题划归到若干科目中时,往往会有不少内容难以与科目名称完全一致,这时按照相似性原则把这些内容划归到不同的科目中去,乃是自然之事。这种情况在现代也不少见。另外,按刘徽的说法,《九章算术》有在先秦时期的祖本,它又是从周公制礼时的“九数”发展而来,可见它们属于儒家一脉的数学,与墨家、名家特别强调辩论和逻辑的风格区别很大。所以,从战国与汉代总体逻辑水平的差异来区分其内容的时代,有效性是不高的。


至于用物价讨论《九章算术》内容的时代,由于所用战国和秦代的物价材料太少,而汉代存续时间长,物价在不同时期、不同地域变化很大,故此种方法局限性比较明显。不同学者所搜集的材料不尽相同,就可能得出偏向性不同的结论。就“均输”章而言,主张用物价判断算题时代的前辈学者只对第3、4、15题做了对比,结论是前两题较接近战国与秦代,后一题与汉代接近[7]。可是,也有学者指出,第3题粟价有8种,每石在10~20钱之间,与《秦律•司空律》每石30钱有明显的差别。汉代粟的正常价格为30~80钱,但早期的文帝时代和中后期的昭帝、宣帝时代却有很低的价格,文帝时曾低至每石“十余钱”,正与第3题相合;而昭帝、宣帝时期也曾出现过低于正常值的价格,最低时曾下降到5~8钱,故主张此题“很可能反映了汉朝文帝或昭帝、宣帝时粮价低廉的状况”。([2],194~195页) 如上所述,第4题用到汉代而非秦国或秦代的徭律数据,它并非战国或秦代的原题,而是经汉代修改过数据的算题。无论如何,物价问题涉及的算题太少,对我们讨论的主题意义不大。


总之,并没有较好的理由证明《九章算术》“均输”章后24题都是在汉代补入的,其中确实存在早就存在的算题。下面我们从出土算书看这类算题是不是可以产生于比较早的时代。笔者曾通过对比发现,《算数书》中有一些问题与《九章算术》“均输”章的一些问题在算法上甚至在问题情境上都相似。比如,前者第16条“负米”算题与后者第27题都是带米过三关、由抽税后余下的米求出关之前所带米的问题,只是前者三关的税率都是1/3,后者则外、中、内关的税率分别为1/3、1/5、1/7,要麻烦一点;前者第48条“羽矢”算题与后者第23题都是针对制箭工序的问题,只是后者多一道工序;《算数书》第46条“负炭”算题、第47条“卢唐”算题、第48条“羽矢”算题,都有同样的数学结构,而且这种结构与《九章算术》“均输”章牝瓦牝瓦算题的数学结构非常接近。所以,《算数书》表明《九章算术》“均输”章中第1~4、9题以外的不少问题,很可能在汉初甚至更早就存在,不必等到耿寿昌才增补进来。


无独有偶,岳麓书院藏秦简《数》中被整理者置于“衰分类算题”下的问题中也有几个与《九章算术•均输》中上述5题以外的问题相似的算题。

1.有金以出三关,关五兑(税)[一],除金一两,问始盈金几可(何)?曰:一两有(又)六十四分两之六十一。其述(术)曰:直(置)两而参四之,[以为法;又参五之,以为实]    0832  [39] 

简文有通假字,整理者萧灿在圆括内标出;两“关”字在原简上利用重文号写作“关=”,今直接改为所重之字;“除”字前方括号内的“一”字是萧灿补入的。[⑫]“以为法;又参五之,以为实”是笔者校补的文字,已为整理者所引。从运算上说,按术文进行运算后还应有“实如法而一”的运算步骤,但原文可能有,也可能省略了。这些意见笔者曾提出过,已为整理者所引。《数》0832号简的问题与《九章算术•均输》第27、28题有相似之处。在数学结构上第27题与《数》的问题更接近,都是已知三关的税率和税后的余数,求原来所带物品的数量,只是《数》的问题三关税率相同而第27题三关税率不同,且前者是带金出关,而后者是带米出关。第28题与《数》的问题都是带金出关,已知各关税率。但前者是三关税率相等,已知税后余数;后者是五关且各关税率不同,已知抽税总数。无论如何《数》的这个问题如果按《九章算术》的分类,应该置于“均输”章中。


《数》中编号为0851、0838的两支简构成一个算题:

2.竹[十]节,上节一斗,下节二斗,衰以几可(何)?曰:衰以几可(何)?曰:衰以九分斗一。其述(术)曰:直(置)上下数,以少除多,以余为    0851

衰(实),直(置)节数除一焉以命之。 0838  ([39],95~96页)

这个算题与《九章算术•均输》第17~19题是一类。第19题与此题都是关于竹筒的,但前者已知的是上4节总容量与下3节的总容量,后者是已知上一节与下一节的容量,要简单一些。从数学结构上看,《九章算术•均输》第17题是已知金棍两头各一尺的重量,与《数》此题的数学结构相同。值得注意的是,第19题的设问句作“问中间二节欲均容,各多少?”([25],235页)意思是“想要让中间相邻二节容量均匀地变化,问各节的容量是多少?”原文用到的“均”字,是“均输”一词中的一个词素。这或许是此题纳入“均输”章的一个原因(另一个原因是此题能与“粟米”、“衰分”章的算题在数学结构上区分开来)。

3.米贾(价)石六十四钱,今有粟四斗,问得钱几可(何)?曰:十五钱廿五分钱九。其述(术)以粟米[⑬]求之。0305

萧灿认为,这个问题“与《九章算术》‘均输’章第11题相类,但不是‘均输’算法”。([39],96页) 《九章算术•均输》第10~11题与《数》的这个问题都具有这样的结构:已知A:B和B:C,要由A的取值求C的值。在《数》此题中,A、B、C分别是粟、米、钱;在“均输”章第11题中,A、B、C分别是粺、粝、恶粟,实物种类较近;而“均输”章第10题讲的是3种丝,实物种类隔得较远。

 4.□□且稟米五斗于仓,仓毋米而有糙,糙二粟一,今出糙几可(何)?当五斗有(又)十三分斗十。仓中有米,不智(知)    0819+0828

萧灿指出“仓中有米,不智(知)”“应是算题的另一问,或者是另一算题”的文字。她还认为此题与《九章算术•均输》“第6题相类,但不是‘均输’算法”。([39],96~97页) 两题的数学结构完全相同,都是用两种物品按1:2的比代替所要领取的物品:《九章算术》中所要领的是粟,用来代替的是(粝)米和菽;而在《数》中则是用糙米和粟来代替(粝)米。


汉简《算数书》和秦简《数》中都不分章、分篇来组织其内容,而是由一些相对独立的条目构成,且都没有使用“均输”一词。这并不意味着“均输”在先秦和秦代不曾作为一个数学类别的名称。“均输”在郑众所注“九数”和现传本《九章算术》中都作为一个数学门类出现,刘徽记载《九章算术》有其先秦蓝本,上述两种算书是“以吏为师”背景下的非经典系统的数学文献,与从“九数”到《九章算术》的经典系统不同[40-42],故不能用《数》和《算数书》否定在先秦和秦代有“均输”这一数学门类。张家山汉简《算数书》是来源于更早时代的不同算书的“撮编之书”[10],岳麓秦简《数》也具有类似的性质([39],154~155页),它们证明,《九章算术》“均输”章后24题中有相当一部分的算题,很可能从先秦至汉初一直流传着,不必等到西汉中后期由耿寿昌补入,甚至不必等到汉初张苍才补入。当然,不管是这些算题还是前4题,都可能经过张、耿的修改。


07

结  语


综上所论,刘徽一方面认识到《九章算术》“均输”章前4题具有处理公平摊派赋税的特点,另一方面也认为这个数学分支具有更为宽广的范围,能处理更为宽泛的问题。他的认识与出土文献中显示出“均输”不限于处理公平摊派赋税的事实可以互相印证。《九章算术》“粟米”、“衰分”和“均输”三章都处理比例问题,但三者界限比较明显,能彼此区分开来。“均输”章内容丰富、貌似庞杂,但其编排并非如一些学者所认为的具有很大的随意性,而是具有高度一致性,这与之后的“盈不足”章选材的高度一致性[43]类似。这些反映出《九章算术》作为经典在一致性上有着较高的要求。


不论是经济措施上的均输还是数学上的均输,都有很早的渊源。经济上的均输至少包括两种情况,一种是考虑多种因素下的公平摊派赋税的方式,一种是皇室(王室)少府所属均输官的财物管理与经营。两种都涉及物资的运输,都产生于先秦时代(至迟为秦代,但可能性很小)。前一种可能更早一些,有可能开始用“均赋”来描述它,对应于多指标下的负担如何公平的算题与算法,《九章算术》“均输”章前4题属于这种类型;后一种对应于反映官府按特定的方式进行运输、经营的算题和算法,“均输”章第9题属于这种类型,但今存此类算题太少。


古人面对现实生活中较为复杂的经济活动时,可能会将其中的数量关系加以选择和提炼,在有关数量的参数之间寻找当量关系,利用今有术、衰分术和率概念等知识,构造算题和相应的算法。其中有一些与输送有关,算题中会有“均”、“均输”、“均赋”之类的关键词。由于赋税的征收往往需要输送,所以这样的算题有时会出现“均输”一词,因此公平摊派赋税的算题可以用“均输”来描述。同时,涉及运输的其他类型算题亦可能用到均等的观念,也可以用“均输”来描述。古人还会将这些与“均输”一词相联系的算法灵活运用到与之有类似数学结构的其他算题中,或将这些算法进行变通与改造,运用到更多种类的算题中,形成新的算法。这些算题和算法由于与“均输”有或近或远的关系,当需要整理归类时,古人可能会想到把它们归到“均输”名下。同时,由于早期对作为数学科目的“均输”一词的含义只有大致的理解而没有明确的界定,所以一些从其他途径得到的算题和算法,也可能被归到“均输”名下,从而丰富均输的内容。《九章算术》在先秦的祖本的“均输”章(或篇)可能是这样形成的,其时“均输”与“粟米”、“衰分”(或“差分”)两部分能区分开来或大体上能区分开来。不过,这些算题也可能与其他关键词发生联系,所以它们被归类到“均输”名下,还可能有别的原因,2.3节中提到的采用第1题首句中的关键词命名的方式,就是原因之一。


经过秦始皇焚书事件和秦末战火,《九章算术》在先秦和秦代的祖本受到损坏,“均输”章也会遭受损失。张苍和耿寿昌结合当时的社会实际对它们进行了不同程度的改造(比如用汉代的程中的常数、计量单位对原先的常数和计量单位[18]进行更换与调整),并增补若干算题与相应的算法,形成了流传至今的《九章算术》“均输”章。张、耿在编纂《九章算术》时,应该根据算法的复杂程度和相似性,对置于“均输”章内的算题及其编排进行了考察和确认,使它们能与“粟米”和“衰分”两章的比例算题区分开来。现传本《九章算术》“均输”章的算题中,上述第1~4、9题来源于其先秦蓝本(经过汉代的改造),是可以肯定的;其他算题中有多少是汉代补入的,尚难论定。但是,第6、11、19、23、27~28题在秦简《数》和汉简《算数书》中有与之很接近的算题,第7题与对刘徽“均输”章名注释的狭义理解非常符合,它们很大可能性也有其先秦蓝本;第8、12-14、16、20~21题与对刘徽“均输”章名注释的广义理解也相合,也有一定可能性存在其先秦或秦代的蓝本。


汉武帝时期作为国家经济政策的均输,必然需要数学方法的参与,但以此为问题情境的算题在《九章算术》中并没有明显的体现。由此看来,耿寿昌在对《九章算术》犹其是“均输”章进行整理和删补时,具有恢复原有经典的强烈意识。由此推论,他在补入算题时,可能很少补入全新的类型;同时,流传至今的汉代编成本《九章算术》中“粟米”、“衰分”、“均输”三章呈现出各自的内在一致性,列入各章中的算题是编纂者刻意为之,而非随意安排,这些特点也很可能主要是继承自其在秦或先秦的版本。理解这一点,对于我们理解《九章算术》及其祖本的系统性和经典性,都具有非常重要的意义。


说  明  本文的大部分内容曾于2015年10月在中山大学举行的第九届全国数学史学会年会暨第六届数学史与数学教育会议上以《从考古材料看中国上古时代的均输问题》为题报告过,其绝大部分内容于2016年12月在北京举行的中国科技史家的使命与实践——纪念中国科学院自然科学史研究所成立60周年学术研讨会上以《均输问题新探——基于出土文献的研究》为题报告过。

盲审专家提示补充《算数书》的资料,笔者在修改过程中一并补充了《数》的资料。谨致谢忱。


参考文献

1 钱宝琮.汉均输法考[J].文理,1933,(4):45~46.

2 宋杰.《九章算术》与汉代社会经济[M].北京:首都师范大学出版社,1994.184~185.

3 胡平生.阜阳双古堆数术书简论[C]//出土文献研究.第4辑.北京:中华书局,1998.12~30.

4 杜石然.张家山汉简《算数书》初探[J].自然科学史研究,1988,7(3):201~204.

5 郭书春.古代世界数学泰斗刘徽[M].济南:山东科学技术出版社,1992.87~90,100~101,303.

6    郭书春.关于《九章算术》的编纂[C]// 陈美东,林文照,周嘉华.中国科学技术史国际学术讨论会论文集.北京:中国科学技术出版社,1992.52~56.

7 郭书春.张苍与《九章算术》[C]//科史薪传——庆祝杜石然先生从事科学史研究40周年学术论文集.沈阳:辽宁教育出版社,1997.112~121.

8 李迪.中国数学通史 上古到五代卷[M].南京:江苏教育出版社,1997.96.

9 邹大海.中国数学的兴起与先秦数学[M].石家庄:河北科学技术出版社,2001.146~152,451.

10 邹大海.出土《算数书》初探[J].自然科学史研究,2001,20(3):193~205.

11 邹大海.睡虎地秦简与先秦数学[J].考古,2005,(6):57~65.

12 邹大海.从出土竹简看中国早期委输算题及其社会背景[J].湖南大学学报(社会科学版),2010,24(4):5~10.

13 钱宝琮.中国数学史[M].北京:科学出版社,1982.32,34.

14 李俨.中国数学大纲(修订本)[M].上册.北京:科学出版社,1958.27.

15 陈直.九章算术著作的年代[J].西北大学学报(自然科学版),1957,(1):95~97.

16 司马迁.史记[M].第4册.北京:中华书局,1982.1441.

17 班固.汉书[M].第3册.北京:中华书局,1964.731.

18 邹大海.秦汉量制与《九章算术》成书年代新探——基于文物考古材料的研究[J].自然科学史研究,2017,36(3):293~315.

19 李迪.江陵张家山西汉墓墓主是谁?[C]//数学史研究文集.第4辑.呼和浩特:内蒙古大学出版社,台北:九章出版社,1993.5~9.

20 陈耀钧,阎频.江陵张家山汉墓的年代及相关问题[J].考古,1985,(12):1124~1129.

21 李俨.中国古代数学史料[M].第2版.上海:上海科学技术出版社,1963.104.

22 李继闵.东方数学典籍《九章算术》及其刘徽注研究[M].西安:陕西人民教育出版社,1990.167.

23 李继闵.九章算术校正[M].西安:陕西科学技术出版社,1993.365,367~368.

24 刘钝.大哉言数[M].沈阳:辽宁教育出版社,1996.165,167.

25 郭书春.九章筭术新校[M].合肥:中国科学技术大学出版社,2014.217~218.

26 邹大海.从出土简牍文献看中国早期的正负数概念[J].考古学报,2010,(4):481~504.

27 王孝通.缉古算经[M] .郭书春,校点//算经十书.台北:九章出版社,2001.417.

28 王利器.盐铁论校注(定本)[M].北京:中华书局,1992.1~5.

29 国语[M].上海师范大学古籍研究所,校点.上海:上海古籍出版社,1990.218.

30 张家山二四七号汉墓竹简整理小组.张家山汉墓竹简[二四七号墓](释文修订本)[M].北京:文物出版社,2006.64.

31 李冠廷,游逸飞.张家山汉简《二年律令•均输律》译注[J].史原(复刊),2011,(2):239~256.

32 李步嘉.越绝书校释[M].武汉:武汉大学出版社,1992.35.

33 陈松长.岳麓书院藏秦简(肆)[M].上海:上海辞书出版社,2015.42.

34 徐连达.中国官制大辞典[M].上海:上海大学出版社,2010.102,452,442.

35 孙楷.秦会要[M].杨善群,校补.上海:上海古籍出版社,2004.247~248,252~257.

36 邹大海.从出土文献看上古医事制度与正负数概念[J].中国历史文物,2010,(5):69~76.

37 陈松长.岳麓书院藏秦简中的徭律例说[C]//中国文化遗产研究院.出土文献研究.第11辑.北京:中西书局,2012.162~166.

38 辛德勇.北京大学藏秦水陆里程简册的性质和拟名问题[C]//简帛.第8辑.上海:上海古籍出版社,2013.17~27.

39 萧灿.岳麓书院藏秦简《数》研究[M].北京:中国社会科学出版社,2015.95.

40 邹大海. 从《算数书》与《九章算术》的关系看算法式数学文献在上古时代的流传[J]. 赣南师范学院学报,2004,(6):6~10.

41 邹大海. 简牍文献与中国数学史[M]//中国科学技术通史 I 源远流长. 上海:上海交通大学出版社,2015: 191~230.

42 Chemla K, Zou D. Parts in Chinese Mathematical Texts. Interpreting the Chapter Form of The Nine Mathematical Procedures[M]//Florence Bretelle-Establet, Stéphane Schmitt Eds, Pieces and Parts in Scientific Texts. Cham: Springer International Publishing AG, part of Springer Nature, 2018.91~133.

43    邹大海.从岳麓书院藏秦简《数》看上古时代盈不足问题的发展[J].内蒙古师范大学学报(自然科学汉文版),2019,48(6):504~515.






注释

[①]《汉书·食货志下》也有与《平准书》非常接近的文字。([17],1167~1168页)

[②] 刘徽给《九章算术》作注时写的序中说,先秦时期在西周“九数”的基础上已形成了一部《九章》,此书经历了秦始皇焚书事件(其实还应有秦末战火)而受到损坏,张苍、耿寿昌在收集其遗残的基础上进行删补,形成了汉代编定本的《九章算术》。也就是说,《九章算术》有很早的渊源,张苍是流传后世的汉编《九章算术》的首个编纂者,耿寿昌是最后的编纂者,因而《九章算术》成书于公元前1世纪中叶。关于《九章算术》的成书年代,曾有不同的意见,笔者利用多重证据对这一问题进行了论证,肯定了刘徽的记载,并对耿寿昌在《九章算术》编纂中的作用进行了具体的分析。[18]

[③] 比如黄展岳的《张家山汉墓不会是张苍墓》(《中国文物报》,1994年5月1日,第3版)、高大伦的《江陵张家山西汉墓主之谜仍是谜》(《中国文物报》,1994年5月29日,第3版)。

[④] 如李俨曾说,“均输章二十八题中惟首四题系均输本术问题,余为假借法之应用”[21];李继闵说“前四问为均输之本法”[22],又说“均输章各术皆未有其名,又均输本术四题,术文皆各不相同,后三术未冠其名,此首题亦不应标名”,“类此叙述于均输本术四题中,均见于注文”,“按均输本术四问,刘注皆略述大要而李注则备说其详”[23];郭书春则说“均输是《九章算术》的第六章,实际上该章只有四个均输问题”([5], 20页),这“四个均输问题”是指钱宝琮所说的该章前4个均输本术问题。刘钝《大哉言数》[24]在前面提到“《九章算术》均输章的前四题为均输本法”,用“本法”,但后面又说“《九章算术》均输章中的题目并不局限于均输本术”,又用的是“本术”了。

[⑤] “算”,又写作“筭”,是汉代一种人头税的单位名,起征或免征年龄以及一算的多少在不同的时期可能有变化。常见的征收算赋的年龄是15至56岁,一算为120钱。笔者认为用成年劳动力征收人头税概括这种税比较合适。[26] 一个地区算数的多少反映了这个地区主要劳动力的数量。

[⑥] 如果甲县只需从数据上将所缴之粟划分出来而不必从原仓库里搬运到其他仓库,可以不必考虑这些因素。但原文说甲县的粟“自输其县”,应该还是需要搬运的,所以装、卸的时间、相应的人工费用仍应计入才合理。

[⑦] 早已有之的算题可能被他们做过程度不一的修改,不光后面的算题,前4题也可能被修改过,至少第4题就被修改过。详见第5节。

[⑧] 如第2条中桑弘羊说的“置均输,蕃货长财,以佐助边费”,第6条说“开均输以足民财;盐、铁、均输,万民所戴仰而取给者”,第9条“赖均输之畜,仓廪之积,战士以奉,饥民以赈。故均输之物,府库之财,非所以贾万民而专奉兵师之用,亦所以赈困乏而备水旱之灾也” 。

[⑨] 《均输律》在整理小组公布的材料中含有编号为二二五、二二六和二二七的3支简([30],39页)。李冠廷、游逸飞[31]认为二二六号简应移入《津关律》,他们还对释文做了修订。本文采用他们的这些意见。但他们把“均输律”译为“均平运输之劳费的法律”,这是不妥当的,既对刘徽注理解不全面,也没有考虑到均输的复杂性。

[⑩] 笔者曾对比过睡虎地秦墓出土的秦律与张家山汉墓出土的汉律,以及汉初与秦不同的社会背景,说明汉初在与统治无关的法律方面,不会制订比秦律更为严苛的法律,汉律可能将秦律的规定放松。[36]  针对这两条律文,陈松长说:“一看就知道,秦代的徭役明显苛重一些,特别是徒行,其日程的规定居然多出二十里,可见秦代对行徭之人的规定比汉代确实苛酷得多。”[37]

[⑪] 第3题术文中有“以一车二十五斛除之”,第4题有“加载、输各一日,而以六人乘之,又以佣价乘之,以二十五斛除之”。

[⑫] 下面的引文也采用类似的记法和处理方式。

[⑬] “粟米”原作“粟=”,这里的重文号表示所重之文为“粟”字下的部首“米”而非整个“粟”字。萧灿认为“粟=”是“粟米”的合文。([39],96页)



本文原载《自然科学史研究》2020年第39卷第4期第395-424页。


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

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