從出土簡牘文獻看中國早期的正負數概念 ,对于想了解历史故事的朋友们来说,從出土簡牘文獻看中國早期的正負數概念是一个非常想了解的问题,下面小编就带领大家看看这个问题。
原文标题:從出土簡牘文獻看中國早期的正負數概念
(中國科學院自然科學史研究所)
摘要 將出土文獻和傳世文獻中某些涉及政府考評工作的材料結合起來進行深入的分析,可以廓清一些關于中國古代正負數概念的認識誤區,幷建立正負數概念的早期歷史。本文提出判斷古人使用正負數概念的標準是對立相反的性質被嵌入到數量中成爲數量本身的一部分;考辨了《算數書》“醫”條中“算”字不可能是一些學者所認爲的賦稅單位或一般意義的錢的單位,“醫”條既非講醫生治病時的收入與交稅,也非講收入與成本。本文論證“醫”條規定了合格醫生治病時成功與失敗的最低比例,而“算”字則是考核醫生治病效果的計分單位。利用語法分析的方法,本文證明“醫”條和董仲舒《考功名》確實應用了正負數概念,而居延和敦煌漢簡的一些疑似例證是否用到正負數概念,則因信息不充分而不能判定。作者認爲得失、成敗等相反的觀念雖是正負數概念産生的基礎,但先秦時期方程算法的特殊結構才是推動正負數概念産生的决定力量,新興的正負數概念影響到政府的考核和評價方法,“醫”條和《考功名》(不排除居延漢簡等中的某些條目)體現了這種影響。本文還分析了這種考評方法中使用正負數概念的特點。文章最後就研究的方法進行了初步的探討,特別强調了語法分析方法和知識結構觀念的重要性。
關鍵詞:正負數概念,《算數書》“醫”條,《九章算術》方程算法,《春秋繁露·考功名》,出土簡牘文獻,上古數學史,上古官方考評法,語法和知識結構分析法
目次一 引言 二 用對立相反的意義刻畫數量的性質是正負數概念的核心 三 《算數書》“醫”條不會是針對稅收的問題 四 收入成本說在證據上太孤立 五 正、負數觀念用于考核 六 正、負數概念是先秦方程算法的特殊結構之必然産物 七 早期正負數概念與考核評價記錄 八 餘論——關于方法論的初步討論 一 引 言負數的引入是數學史上數量觀念的重要變革。學術界曾長期認爲,負數概念的使用以中國古代數學經典《九章算術》的方程章爲最早。該章用“正”、“負”兩個術語來描述數量的性質,不僅有描述正數、負數加减法則的“正負術”,而且在實際運算中用到正、負數的乘除法,從而確立了中國在世界上最早使用負數的優先地位,也確立了負數出現的時間下限爲《九章算術》的編成時代——現在一般定在公元前一世紀中葉。但是,下限幷不意味著最早使用負數的時間。如李儼先生推測負數的産生不晚于秦代,但他沒有提供具體的證據[1]。郭世榮先生認爲負數概念的出現要比《九章算術》的記載早一些。他搜集了西北出土漢簡中的一些用例,認爲其中用到正負數的加减法,反映了從出現負數概念到確立正負數運算法則過程中的中間環節。他還從打分的角度解釋了個別條目[2]。于振波先生也研究了漢簡中一批關于“得若干算”、“負若干算”的用例,肯定了永田英正早年關于它們是考評記分用語的判斷[3],認爲“得算”與“負算”和《九章算術》的正數與負數觀念相近[4]。鄒大海曾參考郭、于二先生的研究,再與睡虎地秦簡、鄭衆對《周禮》“九數”的注釋、劉徽對《九章算術》編纂歷史的記錄等文獻結合,推論負數概念産生的思維背景雖是現實生活中存在的欠、不足、罰等觀念,而其正式産生則是源于戰國時代方程運算中出現被减數不足减的情形[5]。
2000年9月公布的湖北江陵張家山西漢初年墓(墓主約于公元前186年去世)內出土的《算數書》中有一個題名爲“醫”的條目,爲討論早期的正負數概念提供了新的材料。鄒大海認爲“醫”條中“得若干算’和‘負若干算’應是一種考課記分”。它“把先秦數學中已有的負數概念用于對醫生治病效果的考核”[6]。郭書春[7]、王青建、張新立[8]先生也同意“醫”條中有負數概念的使用。
古克禮(Christopher Cullen)先生[9]則認爲“醫”條中的“負”是欠的意思,“算”字被譯爲“string of cash”(錢串)。他沒提及“負若干算”是否含負數概念,但顯然他不認同這一點。林倉億先生[10]稱 “指出”“兩種可能解讀方向”,一種是“算”字表示賦稅單位,“醫”條是講醫生的繳稅問題,這與古克禮先生的意見相似。另一種是“算”爲考核的單位,“醫”條是講對醫生的考核。林先生傾向于後者,這與鄒大海提出的意見相同,但他否認“負若干算”用到負數概念,且沒有說明理由。另外還有一些學者持林先生所說的前一種意見[11]。
日本張家山漢簡“算數書”研究會則認爲“醫”條的“得若干算”、“負若干算”分別是醫生的收入和用于藥物與治療的支出。他們沒有涉及其中是否含有負數概念的使用問題[12]。
上述研究大都較爲零散,論證還不够充分,考慮也不太全面,因此見仁見識。本文利用出土文獻和傳世文獻相結合,從微觀和宏觀兩個方面,對我國正負數概念的早期發展做一較爲系統和深入的研究。
由于數學概念從産生到定義有時是一個歷史的過程,因此首先需要明確古人具有某個數學概念的標識是什麽。所以,本文首先要確立判定正負數概念産生的標準。由于《算數書》比現存漢編《九章》至少早一個多世紀,因此對它是否含有正、負數概念的認定就顯得很重要。所以,本文要重點考察“醫”條的“算”究是何意,幷判斷該條是否含有正負數概念的應用。然後,本文要結合其他文獻對上古時代的正負數概念在政府管理中的考評方法上的應用做一考察,幷推斷正負數概念的産生時代,刻畫其內涵和特點在考評中的體現。最後,本文還要簡要討論一下方法論的問題,特別强調語法分析的方法和知識結構的概念在考察科學概念和科學思想時的重要性。
二 用對立相反的意義刻畫數量的性質是正負數概念的核心李儼先生說:“自然數産生後,必然要運算,運算離不了加减乘除,减不了便産生負數,除不盡便産生分數、正整數。分數、負數構成了有理數系。在中國周、秦間已具備了這個數系的雛型,其發展程序大概是先有正整數的運算,其次産生了分數,在後期産生了負數。”[13]這很好地描述了數概念發展的邏輯。
在古代,數學概念的産生與使用幷不經常以明確的定義爲前提,不僅在開始使用自然數的時代,甚至在已廣泛使用分數的很長時間內,人們都幷沒有對它們進行適當的定義或大致的界定。正負數概念的使用也是如此。正、負是兩個相互對立和彼此依存的概念,沒有負的觀念也就沒有與之相反的正的觀念。負數概念與正數概念的關係也是如此。它們是同時産生的。當對立相反的意義被用于刻畫數量的性質幷成爲數量本身的一部分時,就産生了新的負數概念,原來認識的數就成了正數。
中國最早給出正、負數界定的是三世紀的劉徽,他認爲如果有兩個數量的意義“得失相反”,就需要用正、負來刻畫它們(引文及分析詳後)。但他前後的學者大多不刻意去定義正、負數的內涵,數學家對正、負數內涵的揭示也處于一個發展變化的過程中。負數現在被視爲比零還小,與正數相反的數。但從歷史的發展來看,正、負相反的概念被用于刻畫數的性質是産生正、負數概念的關鍵步驟,這在時間上遠早于劉徽。在《九章算術》方程章中用到正、負數的問題的作者,其心中雖有某種形式的“零”的觀念,但他們幷沒有把“沒有什麽東西”這類觀念視爲一個數“零”的明確意圖,劉徽對正、負數的界定也不涉及零。因此,我們認爲正、負數概念的産生應以正、負相反的意義被用于數量性質的刻畫幷成爲數量本身的不可分割部分爲標識,而比零還小的數這種觀念應視爲人類在認識負數的歷史中的重大進展。下面的討論以此爲基本標準來展開。我們先來看《算數書》“醫”條的情况。
三 《算數書》“醫”條不會是針對稅收的問題“醫”條在《張家山漢墓竹簡[二四七號墓]》中的釋文如下:
醫 程曰:醫治病者得六十筭□□廿筭□□程□弗
從出土簡牘文獻看中國早期的正負數概念
得六十而負幾何?曰:負十七筭二百六十九分筭十一。其術曰:以今得筭爲法,令六十乘負筭爲實。[14]
這一條含有第72、73號兩支簡,從“得六十”起屬于第73號。何有祖把“□□廿筭□□程□”釋讀爲“而負廿筭有□程及弗”[15],爲林倉億[16]采用(林所引爲何有祖2004年12月26日刊于簡帛研究網的文章“張家山漢簡釋文與注釋商補”,見http://www.jianbo.org/admin3/html/heyouzhu07. htm)。而整理小組後來的版本則只補釋了“廿”前的“負”字[17]。把前兩個“□”釋讀爲“而負”,這與照片上殘存筆劃和上下文都吻合,應該沒有問題;而且“得六十筭而負廿筭”與第73號簡中開頭的“得六十而負幾何”句式結構相同。第72號簡文字漫滅甚多,釋文中“
從出土簡牘文獻看中國早期的正負數概念
”所表示的缺字占了竹簡的一半,估計字數在20—30之間。由于有那麽多文字不能釋讀,因而把兩支簡連在一起讀時,其具體細節仍有很多不清楚的地方。古克禮先生甚至懷疑整理者的編連是否合適,但他仍按整理者的意見把它們聯在一起[18]。
從兩支簡的出土位置來看,雖然不是緊挨著,但也隔得很近,而且“得若干算”、“負若干算”這種用法只見于這兩支簡,而“得六十(算)”都見于兩支簡,所以它們確應如整理小組的意見,是連在一起表示同一個問題的。
(一)“醫”條的“算”不會是稅錢的單位
“算”和“筭”本是兩字。《說文解字》“竹”部云“算,數也。從竹、具”,“筭,長六寸,計歷數者。從竹、弄,言常弄乃不誤也”[19]。段玉裁注“算”字條說:“筭……謂筭籌,與算數字各用,計之所謂算也,古書多不別”,注“算”字條說“筭爲算之器,算爲筭之用,二字音同而義別”[20]。這是區別“算”、“筭”二字的初始義,又指出了後來實際混用的情况。從出土的戰國、秦、漢簡牘文字看,當時二字確實已經混用了。《現代漢語詞典》把兩字都作爲字頭,但只對“算”字分義項進行解釋,而把“筭”作爲書面用字,說它“同‘算’”[21]。在一般的研究文獻中,在不必區別二字的情况下,多按習慣作通行字處理,把“筭”字寫成“算”。除引用原文外,本文一般也把“筭”寫成通行字“算”。
“算(筭)”字的義項很多,不同字典、詞典有不同的歸類。以下據一些常見字典、詞典,列出可能與“醫”條有關的幾個義項:(1)古代計算或記數用的工具算籌,(2)數目、數字,(3)計算,(4)計算在某個類別或數量之內,(5)政府向成年人征人頭稅的錢數單位,1個成年人所應交納的人頭稅爲1算[22]。一算的具體錢數秦漢時代有所變化,但好多時候以120錢爲一算[23]。(6)徵稅。
第(3)、(4)和(6)項爲動詞,而“算”在“醫”條中是名詞或量詞,所以它們顯然不符合“醫”條的語境。下面先只考慮第(1)、(2)和(5)
項。
首先看“醫”條的“算”是否爲第5項意思。不管“醫”條具體是什麽意思,也不管“算”字何指,在“程曰:醫治病者得六十筭而負廿筭”一句中,通過“而”字連接的“得六十算”和“負廿算”都以“醫治病者”爲主語。因此這句的意義在很多方面都是較爲明確的:首先,“程”是計量標準,此條是政府針對治病醫生在某方面的標準,以及與該標準相關的某些數量。其次是在該標準中,醫生一方面是“得若干算”,另一方面是“負若干算”,“得”和“負”是相反的兩種情况(但主語都是同一個“醫治病者”)。在這個標準中,“得”的數量(60算)爲“負”的數量(20算)的3倍。如果算在“醫”條中是政府向成年勞動力(不幼不老)徵收人頭稅的單位,那麽醫者只能是納稅者而不可能是收稅者,所以他不可能反過來還“得六十算”。退一步說,即使“得六十算”是指政府向他收取60算[24],那麽“負廿算”就是政府給他20算的稅,這樣既麻煩又矛盾,何不一開始就讓他只交40算的稅呢?况且,一個普通勞動力一年要交的成年勞動力人頭稅(他還要交另一份不論年齡大小都要交的人頭稅“口錢”)爲一算,很難想像一個醫生却要交60倍(抑或至少是20倍)的成年勞動力人頭稅[25]。
(二)“算”的涵義不能說明“醫”系針對收繳稅的說法
古克禮博士把醫條的“算”字翻譯成string of cash (錢串)。林倉億先生則據“算”有人口稅之義將“程曰:醫治病者得六十筭而負廿筭”“解讀爲醫治病者的規定負稅比率爲60比20”。 因爲醫生不是徵稅官員,所以“得60算”不可能是收取60算的稅。因此,林的這種解釋,實際幷不是把“算”作爲賦稅的單位,而是作爲錢的單位。這樣一來,林對“醫”條、“算”字的理解與古克禮是很接近的。不難看出,“算”有賦稅的單位這個義項幷不能爲人們把“醫”條解釋爲講收稅的比例這種意見提供支持:既然“醫”條的“算”是錢的單位,而不是賦稅的單位,那麽要把“醫”條解釋爲講收繳稅就不能由“算”字有賦稅的單位之義來說明,而必須另有證據。可是,除此之外就沒有其他證據說明“醫”條是講醫生納稅的比例了。可見,認爲“醫”條是針對醫生收稅的說法,幷沒有根據。
不過,雖然把“算”字本身解釋爲普通意義下的錢的單位而不是稅的單位,幷不能說明“醫”條乃針對醫生收稅的問題,但這也不能說明“醫”條就一定不能解釋爲針對醫生收稅的問題。所以,如果“算”字可以解釋爲普通意義下的錢的單位的話,那麽林倉億的上述說法也還是一種選擇,因爲得到了60算的錢,又“負”20算的錢,很容易讓人想到是收入60算的錢,又向政府部門交納其中的20算。但是,把“算”理解爲普通意義下的錢的單位,却是有困難的。雖然“算”在漢代關于財産稅的“訾算”中被用于指一萬錢,但這種用法應該是由它表示“稅”的情形轉化而來的,而且只限于特定的情况。下面對此做一些分析。
文獻中“算(筭)”指一萬錢的,以《漢書·景帝紀》載景帝后元二年(公元前142年)五月詔及其顔師古注釋所引服虔和應劭的意見爲代表。該詔書曰:
“人不患其不知,患其爲詐也;不患其不勇,患其爲暴也;不患其不富,患其亡厭也。其唯廉士,寡欲易足。今訾算十以上乃得宦,廉士算不必衆。有市籍不得宦,無訾又不得宦,朕甚湣之。訾算四得宦,亡令廉士久失職,貪夫長利。”
顔師古引服虔曰:“訾萬錢,算百二十七也。”引應劭曰:“古者疾吏之貪,衣食足知榮辱,限訾十算乃得爲吏。十算,十萬也。賈人有財不得爲吏,廉士無訾又不得宦,故减訾四算得宦矣。”顔師古曰:“‘訾’讀與‘資’同。他皆類此。”[26]
據顔師古注,“訾”是財産。服虔的注中“算”指稅或徵稅,他的意思是財産1萬錢,需要交納的財産稅爲127錢。而在應劭的注中,“算”雖然可以理解爲表示萬錢的錢數單位,但這種理解實際來源于需要交稅1算所對應的訾:“訾十算”實際是“財産達到要交十算財産稅的量”或者說“需要交十算財産稅的財産”,“訾四算”即“財産達到要交四算財産稅的量”或者說“需要交四算財産稅的財産”。財産稅與財産成正比例關係,因而財産稅的單位也就對應于一定數量的財産,故進而可以作爲表示財産多少的單位。《漢書》正文所載景帝的詔書和應劭的注,都說明以前對步入士途的常規限制——財産量要達到(需交)十算(財産稅)的額度的人家才可以做官員,這個標準門檻太高,限制了廉士的入宦,所以要降低到財産量(需交財産稅)四算的標準。這個例證實在不可以作爲“算”爲普通意義下的錢數單位的證據。既然“算”用于表示錢數的單位時總是指稅錢的單位或代指財産稅單位所對應的財産的單位,那麽把“算”作如是解時,“醫治病者得六十筭而負廿筭”就是一句不通的話(參考上小節)。這正好說明“算”在“醫”條中不應指稅或錢數的單位。
另外,林把“負某算”理解爲交多少算的稅也沒有例證。在《後漢書》卷六十一“左雄傳”記錄左雄上疏:“鄉部親民之吏,皆用儒生清白任從政者,寬其負筭,增其秩祿,吏職滿歲,宰府州郡乃得辟舉”[27],這裏的“負”是虧欠的意思(李賢注:“負,欠也。算,口錢也。”“負”作欠解,亦見于居延新簡:“時市谷决石四千,以欽作賈,谷十三石八斗五升直觻,得錢五萬五千四。凡爲錢八萬,用償所
負錢”[28]),“負算”是負欠的成年勞動力人頭稅,沒有例證表明“負”有繳納之義(林先生把“負”解釋爲背負,亦即負擔,雖不合古訓,也是通的。但這與交納的區別是明顯的)[29]。退言之,如果“醫”條的“算”如“訾算”史事中指一萬錢(這是目前所能找到的“算”不直接指稅的單位而可以用于指錢數的唯一證據),那麽,即使“得六十筭而負廿筭”可以從按比例交稅的角度解釋爲收入60萬錢而交稅20萬錢,這對于一個醫生來說,其數額之大也是令人難以置信的。下面我們通過具體的計算來證明這一點。
與《算數書》同出于張家山247號漢墓的《二年律令》中有一處提到醫生:“太醫、祝長及它都官長,黃(廣)鄉長,萬年邑長,長安厨長,秩各三百石,有丞、尉者二百石,鄉部百六十石”[30]。漢初秩三百石官員的常俸,沒有特別準確的記錄,但可以據相關材料進行多種推算:
(1)同出一墓的《算數書》中“米出錢”條涉及糲、稗、黍的價格[31]。據推算,一處糲、稗的價格分別是每斗
從出土簡牘文獻看中國早期的正負數概念
錢、
從出土簡牘文獻看中國早期的正負數概念
錢;一處米(即糲米)、黍的價格分別爲每斗1
從出土簡牘文獻看中國早期的正負數概念
錢、
從出土簡牘文獻看中國早期的正負數概念
錢。從後一處糲米的價格遠高于前一處,可知後一處黍的價格也會比前一處的黍價要高出不少。即使按高的黍價每斗
從出土簡牘文獻看中國早期的正負數概念
錢即每石爲25錢[32]計算,如以三百石官員一年的常俸爲300石粟(黍爲粟的一種,價格應差不多),那麽折合成錢爲7500錢。
(2)據《漢書·百官公卿表》顔師古注,秩三百石官員的常俸爲每月40斛[33],一年480斛。按《算數書》的最高標準每斗
從出土簡牘文獻看中國早期的正負數概念
錢,即每斛(容積10斗)15錢計算,那麽太醫一年的常俸爲7200錢。這與第一種算法的結果非常接近。
(3)一些學者認爲,西漢常規時期的粟價在每斛30至80錢之間[34],按最貴的粟價計算,一年常俸按300石計算,最多(按大石,即
從出土簡牘文獻看中國早期的正負數概念
斛計)折爲40000錢(如按小石即1斛計,只折爲24000錢)。
(4)如果價格仍按第3種以高限每斛80錢,一年常俸按第2種480斛計算,折合成錢最多爲38400錢。這與第3種相近而稍少。
(5)有學者懷疑顔師古注可能是把東漢祿秩等級與實際俸祿的對應關係誤認爲了西漢的情况,主張從《史記》、《漢書》等書的古注和漢簡中找到的一些零星資料來推算。其中沒有三百石的記錄,但有比六百石的月俸記錄爲3000錢[35],三百石官員的俸祿無論如何也會明顯低于這個標準,因此每年常俸肯定少于36000錢。
這5種推算法中,可能性最大的第1種的數值爲7500錢。秩三百石的下級官員的其他收入很少[36],我們多算一些,假設其他收入爲常俸的1/3,那麽總收入最多不超過10000錢,此數只有60萬收入的1/60、40萬稅後收入的1/40,甚至只有20萬稅的1/20。即使按收入最高的第3種算法,太醫的合法年收入也會低于(40000×1
從出土簡牘文獻看中國早期的正負數概念
=)53333
從出土簡牘文獻看中國早期的正負數概念
錢,此數也不到總收入的1/11、稅後收入的1/7,甚至只有稅額的1/4稍多一點。漢代有的小縣縣長的祿秩也就三百石。一個普通醫生[37]的收入要比三百石太醫正常收入的最大極限還高出那麽倍,是不能想像的。
需要說明的是,算作爲計算稅錢的單位,當然指一定數量的錢數,但這幷不意味著算是一般意義的錢的單位。高敏先生研究漢代的口錢、算賦時說“算”“是一個固定的計量單位”,幷認爲“按成年人丁徵收”的稅,“其稅率恰爲每人每年一算,因此就獲得了算賦之名”,而一算的錢數也有變化,漢文、景帝時期爲227錢,後來减少,在某一時間變爲120錢[38]。顯然,高先生“固定的計量單位”的說法,是一句解釋性的話,幷非說算是一般意義上的計量單位或錢數單位,而從他文中所引述的例證看,“算”都指稅收而言。另外,筆者要强調的是:沒有任何證據表明算先是一個數量固定的錢數單位,然後才因爲一算的錢正好與一個成年勞動力應交的人頭稅相同,就把成年勞動力人頭稅稱爲“算”。相反,算一直被用作成年勞動力人頭稅的單位,而其數值在不同時期有所變化,這正好說明算首先是成年勞動力人頭稅的單位,幷一直沿用;而隨著時代和情况的變化,其具體的錢數則有所調整。筆者認爲:古代用算(即算籌,不一定是大量用于布算來進行複雜計算的那種纖細的算籌)來表示數字,有時每計一物或一事,即用算一支(參考後文)。由于年齡不太老的成年人是國家的主要勞動力,自然在經濟工作中是一個很重要的統計對象,用一支算籌表示一個成年勞動力,就是很自然的事,因而在計算其人頭稅時,也用算爲單位。時代不同,情况有异,成人勞動力人頭稅雖然一直沿用算作爲一個基本的單位,但其錢數則有所調整,所以每算的錢數發生變化,自是情理之中的事。
(三)《漢書·食貨志》中向醫生等收稅的記錄不能支持認爲“醫”條系針對醫生收稅的觀點
林先生文中引《漢書·食貨志》說:“工匠、醫、巫、卜、祝及它方技、商販、賈人,坐肆列里區謁舍,皆各自占所爲于其在所之縣官,除其本,計其利,十一分之,而以其一爲貢。”[39]作爲“醫”條系針對醫生收稅的證據。這是沒有說服力的。
在《食貨志》中,這段文字的語境是王莽時仿《周官》(即《周禮》)制度制定收稅政策,上引文字只是其中一部分。這一具體的收稅方法幷不見于《周禮》,王莽篡位比《算數書》的成書下限晚了近200年,王莽的整個作法又不屬于常規的情况,所以用這段文字來說明“醫”條的情况,本來就沒有多大的說服力。而且就算它能反映“醫”條時代針對醫生收稅的情况,則我們也不難發現這正好說明“醫”條反而不會是針對醫生收稅的問題。因爲這段文字說工匠、醫生、巫師、商人等在經營時,都要自己估算其收支、利潤,報給所在縣的官府,從收入中除去本錢,將餘下利潤的11分之1交稅(“貢”)。如果“醫”條講的也是收稅,那麽即使“醫”條的“得若干算”的也是利潤(其實如果這條一定要解釋爲按比例交稅,那麽“得若干算”應該解釋爲收入“若干算”,林文也解釋爲收入而不是利潤),則“醫”條的稅率(3分之1)是《食貨志》所說的“貢”率的3
從出土簡牘文獻看中國早期的正負數概念
倍,接近4倍。而把“得若干算”按正常情况解釋爲收入時,利潤就會比60算低不少,這時“醫”條的稅率就比3分之1要高出不少,因而比“食貨志”的“貢”率還要高得更多。可見,即使“算”不一定指萬錢,而可以是別的小數目,“醫”條和“食貨志”中的兩個稅率所存在的巨大差距,也說明把“醫”條按稅率解釋是完全不妥當的。
順便說一下,與《算數書》同出于張家山247號漢墓的《二年律令》也出現“算”、“得”和“負”。其中“算”指收稅,“負”指賠償(也有一處表示裝載貨物),但沒有“負算”或“負若干算”、“得算”或“得若干算”的例證,“得”和“負”二字沒有同時用來與同一事物發生聯繫。律令中只有一處有“醫”字,提到太醫的俸祿爲三百石(詳上節注釋),但與“得”、“負”、“算”都不發生關係,也未提到向醫生收稅的事情。所以這對于用收稅來解釋“醫”條的觀點不能提供絲毫的支持。
總之,“醫”條的“算”不能理解爲“賦稅”或錢的單位。把“醫”條解釋爲針對醫生收稅的問題不僅沒有證據,而且會出現矛盾。
四 收入成本說在證據上太孤立日本張家山漢簡“算數書”研究會認爲“得若干算”和“負若干算”分別是醫生治病時得到的報酬和醫生用于治療的花費。這實際也是把“算”字作爲錢的計量單位來看待。這種解釋比上述用收稅來作的解釋要合理一些,因爲它不會導致“醫”條文本內部的矛盾。不過,這種意見缺乏證據。不僅“醫”條本身對此沒有任何的明示或暗示,而且也沒有其他的材料表明當時的政府部門對醫生的收入與成本的比例制定了標準。事實上,由于難以預料社會上疾病在不同時期的發生情况和醫藥材料市場的變化,要規定這種收支的比例是不現實的,而且也沒有必要。該研究會也提到永田英正關于居延漢簡中“得算”、“負算”用于考核記分的意見,不知爲何不把二者統一起來,反而要提出一個證據上更孤立的解釋。
下面從多個方面對有關問題進行細緻的梳理和論證。其中,用語法分析的方法對古代文獻的作者是否具有正負數的觀念這一問題進行解析,是很關鍵的。
五 正、負數觀念用于考核(一)“算”表示數量,用于記數
下面我們看第(1)、(2)兩個義項,它們有密切關係的。作爲計算和記數用的工具算籌,算表示的就是數量。遠古的時候,人們用結繩、刻木、小石頭等實物,通過一一對應來記錄物品數量,長條形的小竹(或木)棍也是其中之一。後來有些從事與計算相關的專門工作的人出于方便,把這種用于記數的長條形物品逐漸賦予一定的形制和規格,再逐漸加上一套規則,便成爲“算(筭)”即算籌(又有籌、策等名稱)。記數和計算的算籌,還可能在不同的使用場合有不同的形制與功用[40]。因此,“算”一方面表示算籌,另一方面也表示數量。“算”用來表示數量,在古代用得很多:如《儀禮·鄉射禮》、《禮記·投壺》、《大戴禮記·投壺》中,用一尺二寸長的木片(亦稱爲“算”,但與專門用于較複雜計算的細長算籌在形制上有所不同)來記數。其中《禮記·投壺》說:
“投壺之禮:主人奉矢,司射奉中,使人執壺。主人請曰:‘某有枉矢、哨壺,請以樂賓。’……司射進度壺,間以二矢半,反位,
中国历史敦煌的故事
設中,東面,執八算興。……有入者,則司射坐而釋一算焉。賓党于右,主党于左。卒投,司射執算曰:‘左右卒投,請數。’二算爲純,一純以取,一算爲奇。遂以奇算告,曰:‘某賢于某若干純。’奇則曰‘奇’,鈞則曰‘左右鈞’。命酌,曰:‘請行觴。’酌者曰:‘諾。’當飲者皆跪,奉觴曰:‘賜灌。’勝者跪曰:‘敬養。’正爵既行,請立馬,馬各直其算。一馬從二馬,以慶。慶禮曰:‘三馬既備,請慶多馬。’賓主皆曰:‘諾。’正爵既行,請徹馬。算多少視其坐。籌,室中五扶,堂上七扶,庭中九扶。算長尺二寸。”[41]
主人請客人玩一種叫投壺的游戲,它有一定的禮儀:先是主人、司射和另一個人分別拿著要投的矢(箭)、中、壺等器具,然後主人和客人進行一些禮節性的請讓,客人接受投矢之請。通過一定的儀式後客人和主人在相應的位置投矢,每投中一矢,就放一支算籌(“算”),最後數算籌的多少,就知道大家各投中了多少支矢,然後進行下一步的儀式。在《儀禮》和《大戴禮記》中也用“算”來記錄射中或投中的矢的數量。
《孫子兵法》中說“夫未戰而廟筭勝者,得筭多也;未戰而廟筭不勝者,得筭少也。多筭勝少筭,而况于無筭乎!吾以此觀之,勝負見矣。”[42],其實也是在戰前考慮影響戰爭的各種有利和不利的因素,用算來分別表示對己方和敵方有利的方面,以評估發生戰爭時可能出現的勝負,從而决定是否出兵或如何出兵。出兵比不出兵“得算多”或我方比敵方“得算多”則能勝,可以出兵,否則不能。這裏的“算”既可以是實際的算籌,也可以指對有利因素的評估值。
《爾雅·釋詁》云:“曆、秭、算,數也”[43]。劉徽注《九章算術》“正負術”云:“今兩算得失相反,要令正負以名之。正算赤,負算黑。否則以邪正爲异”[44]。意思是:兩種數量在性質上得失相反,所以要用正負來命名它們。表示正數的算籌用紅色的,表示負數的算籌用黑色的。要不就用擺放位置的正與斜來區別數量的正負。這裏“算”既指算籌,又指用算籌表示的數。
總之,“算”既可以用來表示實際物品的多少,又可以用來量化抽象的事物。
(二)“算”用作考核與評價的計量單位
在居延漢簡中,“算”被用作考核與評價的單位。其中有不少竹簡中用到“得算”、“負算”。下面是兩個典型的例子:
1“甲渠侯鄣:大黃力十石弩一,右淵强一分,負一筭;八石具弩一,右弭生,負一筭;六石具弩一,空上蜚,負一筭;六石具弩一,衣不足,負一筭;塢上望火頭三,不見所望,負三筭;
從出土簡牘文獻看中國早期的正負數概念
上望火頭二,不見所望,負二筭,□扌□弦一,脫,負二筭;凡負十一筭。”[45]
這裏講到十石弩、八石弩、六石弩或其他軍事設施出現某種問題,要各“負”一算或“負”幾算,這些負的算數相加,得到“負十一算”。永田英正先生曾認爲這裏的“算”是一種評價的單位,負一算即减一分[46]。郭世榮先生也認爲這是“在軍事檢查中因不符合要求被扣分的計算:(-1)+(-1)+(-1)+(-1)+(-3)+(-2)+(-2)=-11”[47]。于振波先生指出:針對不同的東西出現問題都“負一算”,說明不會是减少某件物品,否則减少的東西相加成“凡負十一算”,就會賬目混亂。他聯繫董仲舒《春秋繁露·考功名》和《九章算術》中的正負數概念,指出漢簡中的“得算”、“負算”是考核用語,相當于“加若干分”、“减若干分”[48]。
2“萬歲候長充,受官錢,定課四千,
負四筭;毋自言堂煌者第一,得七筭。相除,定得三筭。”[49]
郭世榮先生認爲這說明“正負相加:-4+7=3”[50]。
上述兩例中“算”是考核與評價的計量單位,相當于“分”。仔細分析起來,可以按兩種方式理解。
第一種方式是:如果把“負若干算”解釋爲“减若干分”,則與負數概念還是有區別的,因爲“負”字作爲動詞,不具有標識數量性質的意義。在第一例中,完全可以理解爲把各種情况下要减的分加起來:1+1+1+1+3+2+2=11,這個結果11就是要减的總分數。而在第二例中,一種情况下减4分,另一種情况下加7分,7和4相减,得到3,由于得的分數7比减的分數4多,所以最後的結果爲得3分。所以,雖然“得若干算”中的“得”(加)和“負若干算”中的“負”(减)是意義相反的兩個詞,但它們都是動詞,既未作爲定語修飾“若干算”而與之結合成名詞性詞組,也未用來標識後面的數量本身具有正負相反的性質。所以按這種思路,“得若干算”和“負若干算”還不宜直接理解正數和負數概念。不過,有一點值得注意,當把“負”理解爲减時,“凡負十一算”本身雖不具有負數的含義,但如果在某個考核期限內,甲渠侯鄣另外所得總和不到11算,那麽最後的總成績就只能是負若干算,這意味著這種考核計分以正負數觀念爲前提。這種情况是可能的。
第二種方式是:把“得若干算”解釋爲得若干(正)分,“負若干算”解釋爲記若干負分,這時“得”和“負”就標識了兩種數量正負相反的性質,這便意味著古人使用了正負數的概念。
上面第二例中,“相除”二字系指“七算”和“四算”相减而言,正負相反的性質幷沒有參與這種運算,因此,按第一種方式理解是說得通的,這時不涉及正負數。如果按第二種方式理解,“得七算”和“負四算”分別相當于(+7)分和(-4)分,那麽“相除”指的幷不是(+7)分和(-4分)相减,而是指計算(+7)分+(-4)分時,先要計算(7分-4分);“定得三算”就是確定求得的結果3分之性質爲“得三算”。這時正負數的加法通過轉化爲兩個(正)數的减法,再確定數量的正負來實現。
在居延漢簡(包括居延新簡)中,“得若干算”和“負若干算”的竹簡還有不少,有的情况如上面兩條,有的殘缺,意義不够明確。另外,敦煌漢簡中也有“得若干”、“負若干”的用例,但不與“算”字相連,如1063號簡“
從出土簡牘文獻看中國早期的正負數概念
三負十三 第三負十一 第三負九 第三負七 第三負三 第三負一 第三得二 第三得四
從出土簡牘文獻看中國早期的正負數概念
”[51]。雖然這些簡文用到正負數或以默認正負數爲前提的可能性不能排除,但從文本本身幷不能完全肯定其中存在正、負數的明確概念。而正、負數的明確概念,在董仲舒《考功名》和《算數書》“醫”條中正好可以看到(詳下)。
(三) 董仲舒《考功名》中的考評方法用到正負數概念
上述漢簡的例子中,我們還不能肯定意義相反的“得”、“負”具有標識數量正、負性質的功能。而這兩個詞在董仲舒《春秋繁露·考功名》中則具有標識正、負數性質的功能,分別標識正分和負分。該篇曰:
“考試之法,合其爵祿,幷其秩,積其日,陳其實,計功量罪,以多除少,以名定實,先內第之。其先比二三分,以爲上中下,以考進退,然後外集,通名曰進退,增减多少,有率爲第九。分三三列之,亦有上中下。以一爲最,五爲中,九爲殿,有餘歸之于中,中而上者有得,中而下者有負。得少者以一益之,至于四;負多者以四减之,至于一;皆逆行。三四十二而成于計,得滿計者絀陟之。次次每計,各逐其第,以通來數。初次再計,次次四計,各不失故第,而亦滿計絀陟之”[52]。
鐘肇鵬先生等引證各家,對文本進行了很好的校釋,幷指出陶鴻慶以“其先比二三”中的“二”字爲衍文是正確的[53]。蘇輿注云:“計取算法乘除爲名,此爲得負乘除法,未詳其式”[54]。“乘除”二字的說法有誤,但把“得”“負”和算法聯繫起來還是有意義的。于振波先生[55]認爲這段文字把評分和定等聯繫起來,提出了一套官吏考評方法。于先生對這段文字進行了總體上相當近真的解釋,但還不足以判斷其中是否用到正負數概念。現參考于、鐘等先生的意見做進一步的解釋,幷從語法的角度著重分析和揭示其中“得”、“負”與正、負數概念之間的關係。
董仲舒這段話的意思是,考試的辦法,要綜合考慮官員的爵位品級、俸祿多少、職位高低、資歷深淺、工作實際,計量他的功勞和過錯,從功、過兩者中的多者內减去少者(即功過相抵),用名號來認證實際,先就單個人定等級。初次考核時分爲上、中、下三等,來考核官員是該升還是該降(“進退”),然後綜合全國的官吏來考核,都叫做“進退”,根據情况增减他們的成績,區分差等,分爲九個檔次。這九個檔次三行三列排比,原來的每個等次(上、中、下)又各分爲上、中、下三個檔次。他認爲各個檔次又可以通過相應的數字來體現。最高檔爲第一檔(“最”),最低檔爲第九檔(“殿”)。每檔都和“中”(第五檔)相比較(“有餘歸之于中”)。也就是說,他把“中”當作一個基點,“中”即第五檔對應的分數也正好是“五”。比中好的“有得”,而“得”數有多有少,從一到四,都加到“中”數“五”裏去,便是六、七、八、九;比“中”差的“有負”,“負”也有多有少,“負”數從“負”四開始一直到“負”一,也要和“中”數“五”合幷,合幷的方法是將“負”數變爲减數,也就是分別從“五”中减去四、三、二、一,得到結果一、二、三、四。這些分數一、二、……、八、九,對應于考核的檔次第九、八、……、二、一,兩者正好相反(“皆逆行”)。
可以看出,“得”和“負”雖然可以從“得到”和“失去”這對相反的意義上來理解,但在“有得”和“有負”中,它們是動詞“有”的賓語,已經名詞化,應分別理解爲“得的分數”和“負的分數”。因此,這裏的“得”和“負”從形式上講就可以分別視爲正數和負數。而且,“有得”和“有負”中具有兩種相反意義的“得”和“負”,都統一在動詞“有”這個概念的基礎之上,“有”的作用就是要把“得”和“負”兩種數合幷到“中”裏去。“得”數幷入“中”數用“益”(加)的方法:“中”數與“得”數合幷=“中”數+“得”數所得的多少,“得”本身幷不是加法的運算,而轉化爲加法運算(“益”),這相當于“(+B)幷入A=A+B”;“負”數幷入“中”數用“减”的方法:“中”數與“負”數合幷=“中”數-“負”數所“負”的多少(相當現代所說的負數之絕對值)。很明顯,在這種表述中,“負”本身幷不能直接理解爲减去或减少,“負”某數和“得”某數一樣,都是要與“中”合幷,只是“負”某數在與“中”合幷時,要轉化爲减以某數,這相當于“(-B)幷入A=A-B”。因此,《考功名》這段文字裏的“得”數相當于正分,而“負”數相當于負分,是正負數概念的應用。這裏涉及正負數觀念的如下一些性質:正數和負數相對于同一參照物正好相反,正數與某數(正數)相加就等于兩數相加,負數與某數相加等于從某數中减去與該負數相對應的正數(即相反數)。當然,這裏的情形幷不能反映正負數概念的全部內涵,如負數與正數的抽象意義,正數和負數以零爲分隔點,而負數比零小等涵義都沒有涉及(正數和負數都是相對于同一個事物而言這一點當然是涉及了的)。
(四)“醫”條用到正、負數概念
1“醫”條系針對醫生治病效果的考核
《周禮》注重統計和會計在國家管理中的作用,其中講到通過統計醫治效果來考評醫生成績的量化標準[56]。其“天官冢宰”云:
“醫師掌醫之政令,聚毒藥以共醫事。凡邦之有疾病者、疕瘍者造焉,則使醫分而治之。歲終,則稽其醫事以制其食。十全爲上,十失一次之,十失二次之,十失三次之,十失四爲下。
食醫掌和王之六食、六飲、六膳、百羞、百醬、八珍之齊。……
疾醫掌養萬民之疾病。四時皆有癘疾,春時有痟首疾,夏時有癢疥疾,秋時有瘧寒疾,冬時有嗽上氣疾。……凡民之有疾病者,分而治之;死終,則各書其所以,而入于醫師。
瘍醫掌腫瘍、潰瘍、金瘍、折瘍之祝藥、劀殺之齊。……
獸醫掌療獸病,療獸瘍。……凡獸之有病者、有瘍者,使療之;死則計其數以進退之。”[57]
五種醫職人員中“食醫”、“疾醫”、“瘍醫”、“獸醫”是四種專科醫生,“醫師”則是領導、管理成員,平時負責分派醫生,而年終考核專科醫生的治病效果,幷據以分配他們的待遇[58]。考核的成績分5等,最好的上等是“十全”,治10個10個有效;次一點的第二等治10個9個有效;第三等治10個8個有效;第四等治10個7個有效;第五等即下等是治10個6個有效。一般說來,醫療業績特別好的、好的和較差的醫生都應占較少的比例,中等業績水平的醫生比較多,所以第3、4等的醫生應該比較多。而政府制定的醫生合格標準也應以大多數醫生所處的水平爲基準,因此也應接近第3和第4等的水平。
按這種對醫生的治病效果進行考核的作法來理解,可以使《算數書》“醫”條的問題屬性迎刃而解。如上所述,“算”可以指考評打分的單位,“得”、“負”可以指考評打分的正、負(或正分、負分)。那麽《算數書》“醫”條中,“程曰:醫治病者得六十筭而負廿筭”說的就是,一個醫生合格的(最低)標準是:治病後有效的病例占60,而無效和病情加重的病例占20。也就是說,治病的醫生要算合格,那麽他的治療有效和無效(及誤治)的比例不低于60比20。“醫”條後面的文本,由于竹簡保存不好而脫字甚多,詳細的涵義雖不太清楚,但殘缺尚存的文字“得六十而負幾何?曰:負十七筭二百六十九分筭十一。其術曰:以今得筭爲法,令六十乘負筭爲實”說明其中至少講到一種有效率更高的情形:有效與無效(和誤治)的比爲:60比17
從出土簡牘文獻看中國早期的正負數概念
。
如果我們把“醫”條的有效率與《周禮》考核醫生業績的標準做一比較,不難發現兩者吻合得相當好。《算數書》“醫”條的標準得60算而負20算,相當于治療10個患者時有7.5個有效,這個標準在《周禮》的第3、第4這兩等的正中間,而該條的另一種情况“得60算”而“負17
從出土簡牘文獻看中國早期的正負數概念
算”,則相當于治10個患者有7.79個有效,這一有效率稍高,但也在第3和第4等之間而更接近第3等。“醫”條的這兩種有效率高低適中,比較符合古代人所理解和認同的醫術水平。兩種文獻的驚人“巧合”,說明“醫”條確實極有可能是講考核醫生的治病效果的,其中的程就是衡量醫生是否合格的量化標準,是戰國時秦國(或至遲爲秦代)的法律(筆者將另文詳證其時代)。商鞅變法以後,秦國實行了較完善的法律管理體制,睡虎地秦簡能在相當大的程度上反映其廣度。“醫”條中考評醫生的量化標準,豐富了這一認識。
2“醫”條用到正、負數
考核醫生不能光看治好了多少病例或多少病例有效,也不能只看有效病例數减去無效和誤治病例數後所得的差,而要看有效率的多少。所以在“得六十筭而負廿筭”一句中,“負廿算”不能理解爲欠、失去、减去20算,而只能把“負”字理解爲標識“廿算”的數量性質的詞彙。相應地,“得六十算”中的“得”也只能是一個標識“六十算”的數量性質的詞彙。換句話說,“醫”條中的“得算”和“負算”就不能分別理解爲加分和减分,而只能分別從正分和負分的角度去理解。“得”、“負”在這一句中可以有兩種選擇。一種是作定語,分別修飾“六十算”、“廿算”,這時“程曰:醫治病者得六十筭而負廿筭”可以理解爲“標準:對治病的醫生而言爲:正六十分(有效病例)比負二十分(無效或誤治病例)”,顯然其中“得”、“負”不僅是表示數量類別的詞,而且已經分別和“六十算”、“廿算”結合爲一體,表示兩種性質相反的數量。另一種選擇是把“得”、“負”理解爲動詞,“得六十算”意思是得到六十分(正分),而“負廿算”意思是有負分二十分(而不是失去二十分)。其中“負”字把“廿算”歸入與前面(屬于“得”類別)的“六十算”性質相反的“負”類別中,這以存在“得的算”(正數)和“負的算”(負數)爲前提。而從語法上分析,可以得知這個“負”字是形容詞用如動詞,負這種性質實際是和“廿算”結合到一起形成了一個數量的。總之,不論何種理解,這裏都存在具有相反性質的兩種數量,因此也就蘊含著正數和負數概念。這樣看來,“醫”條中的“得若干算”與“負若干算”與它們在居延漢簡中的用法在表面上雖然頗爲相似,但在文字本身所表現的數字觀念上却可能有著性質上的不同(至少與其中能確認“得”、“負”只分別表示加、减的那些例子相比是如此。)
“醫”條後面的文字“得六十而負幾何?曰:負十七筭二百六十九分筭十一。其術曰:以今得筭爲法,令六十乘負筭爲實”中,如果說第一個“得”,第一和第二個“負”還可以有如上兩種解釋的話,那麽第二個“得”和第三個“負”則只能是“算”字的修飾語,表示相應的“算”的性質,也就是說它們標明“得算”和“負算”有正、負相反的兩種性質,而這兩種性質已經嵌入到數量中去了。因此,“得算”、“負算”應該屬于正、負數的範疇。術文包含著乘法和除法:(60×某已知的“負算”)÷已知的“今得算”,其計算結果爲負17
從出土簡牘文獻看中國早期的正負數概念
算。這裏,治病的意義已經在文字中隱去,“得”和“負”作爲標識數量相反性質的兩個符號已經和數字結合在一起而形成了性質上正、負相反的兩個數量,幷進入到運算中。所以,“醫”條不僅確實含有正、負數的概念,而且成功地進行了正、負數的乘除法。
總之,“算”本是用于記數的籌碼,一定數量的“算”對應一定的數值,所以也在一定的語境下用于指數量。得到和失去,盈餘和不足,債權和債務,有利和有害,勝和負等都各自屬于性質相反的一對概念,但古人一般不把這兩種相反的性質統一到同一個數量系統中來討論,因此它們可以是通向正負數概念路徑中的一環,而一般不屬于正、負數概念。《孫子兵法》“計”篇中戰爭的勝、負由“算”的多少而不是由“算”的正負相反的性質來判定,充分說明了這一點。在居延漢簡表示加分的“得某算”和表示减分的“負某算”中,“得”和“負”對應于兩種互逆的運算,但幷不用于描述數量的性質,因此這種用法雖可以視爲通往正負數概念的一環,但本身幷不具有正、負數的基本涵義。董仲舒《考功名》在講到官吏考評方法時,把相對于同一參照物(“中”)而言性質相反的兩種數量“得(的數量)”和“負(的數量)”用于記分,幷且把它們視爲可以合幷的數量,而在合幷時又分別轉化爲加法和减法兩種運算。因此這裏已經涉及了如何進行正負數加法運算的方法。《算數書》“醫”條在考評醫生治病有效和無效(或誤治)時,使用了“得若干算”和“負若干算”來進行量化。這種量化的方法已經把意義相反的正、負性質嵌入到數概念中幷成爲數量本身的一個部分,因而屬于正、負數概念的範圍。而“醫”條中的計算問題又用到的“負若干算”和“得若干算”的乘除法,則是正負數的乘除運算。
六 正、負數概念是先秦方程算法的特殊結構之必然産物
上面說到,現實生活中的得、失相反的兩種性質,一般不從統一的同一個數量系統上理解。所以,負數觀念的引入,還是需要有一定契機的。在一般情况下,具有得、失相反意義的兩種事物,可以分別記錄各自的數量。而用數量來判斷具有相反意義的兩種事物時,還可以用數量的大小作爲依據。如《孫子兵法》就用“得算多”來判斷戰爭的勝,“得算少”或“無算”來判斷戰爭的負。而《考功名》把5作爲中檔所對應的分數,通過加分和减分來反映功過,得到不同檔次所對應的分數,這時如果不引入正、負數的概念,也完全沒有困難。所以一般情况下,要表示得、失相反的兩種數量,幷無必要讓正、負性質嵌入到數量中形成新型的正、負數概念。例如,無論《算數書》的“醫”條、董仲舒還是居延與敦煌漢簡,其中涉及的考核都可以把意義相反的兩種性質分別開來,用兩個不同的類別來表示,數量只描述兩類事物的多少,而數量本身幷不涉及這兩種性質。因此,正、負數觀念的引入在這些考核與評價中幷不是絕對必要的,其中用到正負數的例證幷不屬于導致正負數的引入的情形,而屬于應用業已産生的正負數概念的情形。另外,《九章算術》的盈不足章有大量盈和不足兩種意義相反的數量,如果引入正負數則可使算法簡化而更具一般性,但該章幷沒有使用正負數概念。出現這種情况的原因,除了該算法的創造時間可能要早以外,它不必要也不足以推動正負數的引進,也是重要的原因。可見,一般意義下的對立相反的兩種數量這類觀念,幷不能通過自然延伸而過渡到引入正負數的概念,所以作爲數量觀念上的重大變革,正負數概念的引入應該是某種必然性因素推動的結果。這種必然性就存在于《九章算術》的方程章中。錢寶琮先生[59]曾指出“‘方程’的每一行是由多項式未知量和一個已知量所組成的等式,其中可能有相反意義的數量,由此産生正數與負數的對立概念。又用‘直除’法消元,减數大于被减數時,也需要負數的概念或擴充减法的功用。因此,中國數學家在方程章裏提出了正、負數的不同表示法和正、負數的加减法則。”可見他也把負數概念的産生歸結爲方程算法的需要。不過,以下兩方面的理由說明錢先生實際上沒有把古代方程算法産生正負數的必然性揭示出來:(1)上面我們已經說明對立相反的意義幷不必然導致負數。(2)錢先生說“所謂‘方程’是聯立一次方程組”,幷用代數方程式來解釋列出的方程和解法。由于《九章》方程章的問題都是以實際爲背景的,所有問題的答案也都不是負數,所以,問題的答案不會導致負數的産生。而在代數方程式的求解過程中,由于兩個式子表示的數量總有一大一小(或相等),所以完全可以在消元時做到從大的數量中减去小的數量(或相等的數量相减),避免不够减而産生正負數的情况[60]。因此,我們有必要分析《九章》方程算法的特殊性來揭示它産生正負數的必然性。
爲了便于理解,我們以方程章第三題爲例來說明方程算法的特點:
“今有上禾二秉,中禾三秉,下禾四秉,實皆不滿斗。上取中,中取下,下取上各一秉而實滿斗。問上、中、下禾實一秉各幾何?荅曰:上禾一秉實二十五分斗之九,中禾一秉實二十五分斗之七,下禾一秉實二十五分斗之四。術曰:如方程,各置所取,以正負術入之。正負術曰:同名相除,异名相益,正無人負之,負無人正之。其异名相除,同名相益,正無人正之,負無人負之。”[61]
古人用算籌來表示數量,我們改用印度—阿拉伯數字代替以適應現代人的習慣。這不會影響我們的分析。如果按符號代數的方法,設上、中、下等禾每秉分別能打出禾實
x、
y、
z斗,那麽列方程組爲:
從出土簡牘文獻看中國早期的正負數概念
。古人對應地列出方程如圖1-1,其中幷不出現未知量(相當于現代的分離係數),其右、中、左列(古人稱爲“行”)分別對應于代數方程組中的上、中、下三個方程式。古代方程的表示法總是把每一個等量關係用一列數表示,不同等量關係中對應于同一個未知量的係數具有相同的前後次序,而對應于常數項的數都放在最後。解方程時,遵循兩個原則,一是每一列數各自爲一個整體(劉徽稱爲“率”),當其中某個數放大或縮小時,其他的數也要放大或縮小同樣的倍數(即一列內的每一個數可以同時乘以或除以同一個數),二是兩列數可以相加减,其規則是相應位置上的數分別相加减,而同一列內的數之間不進行加减運算。解方程的目標是使每一列除最後的數(常數項)外,分別只留下一個數(未知項,各列的未知項互不相同)。例如對上面的問題,必須讓第1、2、3行都只剩一個數,這就必須通過兩
五个中国历史名人故事
列相减(或一列乘一個數與另一列相减,或兩列分別乘以兩個數後相减)來實現。比如第一行有2個數,我們要消去其中的1個,如果消去右列中的第1個數,那麽從右列中連續2次减去左列,得到的結果如圖1-2。這時,右列的第2個數是正數而同時第3和第4兩個數就都會是負數。而如果消去左列的第1個數,那麽將左列乘以2再從中减去右列,這時得到的結果如圖1-3。這時,左列的第2個必然是負數而第3、4兩個數則是正數。不難驗證,不論先消哪個元,都會産生正數和負數同時出現的情况。所以,在方程章問題的求解過程中,負數的引入是必然的。
左列
中列
右列
左列
中列
右列
左列
中列
右列
左列
右列
1
2
1
2
7
5
3
1
3
1
-1
3
1
-5
-7
4
1
4
1
-8
8
1
1
1
1
1
1
-1
1
1
1
25
11
圖1-1
圖1-2
圖1-3
圖2
但如果我們用字母代數來表示,那麽可用2乘第3式,得到
從出土簡牘文獻看中國早期的正負數概念
,以第1式减第3式,得到
從出土簡牘文獻看中國早期的正負數概念
,這時第三式的“-”完全可以而且應該理解爲减號,而不必用于表示數量的性質。這時第三式實際上對應于圖1-3的左列,但幷不需要新型的數(正負數)的參與。雖然也可以由第1式减以第3式從而導致正負數的産生(對應于圖1-2的右列),但由于第3式表示的數2比第1式的數1要大,所以這不是人們的自然想法。
上面是解方程過程中的變換必然産生正負數的例子,而方程章第4題則是正負數出現于開始列方程時候的例子:
“今有上禾五秉,損實一斗一升,當下禾七秉。上禾七秉,損實二斗五升,當下禾五秉。問上、下禾實一秉各幾何?荅曰:上禾一秉五升,下禾一秉二升。術曰:如方程,置上禾五秉正,下禾七秉負,損實一斗一升正。[言上禾五秉之實多,减其一斗一升,餘,是與下禾七秉相當數也。故互其算,令相折除,以一斗一升爲差。爲差者,上禾之餘實也。]次置上禾七秉正,下禾五秉負,損實二斗五升正。以正負術入之。”[62]
設上、下禾一秉的實分別爲
x、
y升,那麽根據題設可以列如下的聯立方程組:
從出土簡牘文獻看中國早期的正負數概念
。“損實某斗某升”即“减去某斗某升的穀子”,它與“當下禾某秉”可以不分別對應于負數和正數。但古代列方程時,古人對方程同一列內的各數字幷不進行加减運算,所以“損實某斗某升”的“損”字,在列方程時幷不能被作爲减法運算來處理,古人就必須通過觀念的轉換,對所“損”的相應數量進行性質上的認定,具體地的說就是作爲負數來處理,于是這一數量就用“負”字來標記。但是,古人列出的方程必須每一列的最後一個數不涉及未知量,所以在本問題中,古人列方程時要調整有些項的位置,這就需要重新確定那些項的正、負。劉徽注文提出要“互其算,令相折除”,即把下禾(的實)與損的實兩個數量交換地位進行相减(“上禾5秉,减去實1斗1升,得到下禾7秉”轉化爲“上禾5秉,减去下禾7秉,餘下實1斗1升”。同樣“上禾7秉,减去實2斗5升,得到下禾5秉”轉化爲“上禾7秉,减去下禾5秉,餘下實2斗5升”),從而相應改變它們的正、負,這樣就對各項重新確定了正負(“上禾五秉正,下禾七秉負,損實一斗一升正”,“上禾七秉正,下禾五秉負,損實二斗五升正”)。于是得到如圖2的方程式。
古代不論是在開始列出方程時,還是在對方程進行變換求解的過程中,每一列之內的各數之間幷不相减或相加,因此對每一列之內的各數需要標記的是其正、負的性質,而這種正負的性質幷不能理解爲實際進行的加减運算。而真正在一起參與運算的只是兩列的對應位置上的數,這時就涉及了正、負數的算術運算。
在《九章算術》中,不論消元(現代的說法)以後還是開始列出方程的時候,沒有數量的項幷不用數值零來刻畫,而是空著相應的位置。“正負術”中“正
無人負之,負
無人正之”(相减的兩列中被减列的某個位置空著沒有數時,相應的减數就沒有對應的數讓它去减,當减數是正數時,得數爲負;而當减數是負數時,得數爲正)、“正無人正之,負無人負之”(相加的兩列中被加列的某個位置空著沒有數時,相應的加數就沒有對應的數讓它與之相加,當加數爲正數時,得數仍爲正;而當加數爲負數時,得數仍爲負),雖可以用現代的零與正負數相加减來理解,但在原文中不僅沒有作爲數值的零概念,甚至對應的項也沒有出現。劉
导游中国历史故事简短
徽注云:“無人,爲無對也”,即沒有與(一個正數或負數)相配合進行運算的數,這在方程式中就表現爲一個沒有擺放數字(算籌)的空位。所以,《九章算術》中正負數概念的引入雖然基于作减法運算時被减數小于减數或沒有被减數而出現不够减的情况,而且古人的潜意識裏也有與數值零相對應的觀念,但正負數概念的引入却幷不是基于比數值零小的概念。所以劉徽對正負數的界定也不涉及比數值零大還是小這一觀念,而是以“得失相反”的性質作爲正負數的核心。
中國古代方程的結構與今天的增廣矩陣非常接近,只有竪排與橫排之別:古人把每一列各自看作一個整體(按劉徽的說法叫做率),與矩陣的列向量相當;方程的每一列內的數可以放大或縮小同樣的倍數,每兩列可以相加减(兩列對應位置上的數進行加减,結果仍置于相應的位置上),這也與矩陣的列向量的變換相對應。但古代方程每列內的數量不可以拆分開來與其他列內的數量進行重組。這種特殊的結構及相應的運算法則,决定了正負數的必然産生:方程中對應于現代方程組之消元的變換,是以兩個整列的對應位置上的數相加减,這就决定了在很多問題的求解過程中必然會出現加减出來的結果有性質相反的兩個數的情形。因而正負數概念的引入是不可避免的。由于方程同一列內的各數之間是比率關係,而不是加减關係,這就决定了題設中含有未知量項的相减關係的問題要得到處理,就必然要通過把相减運算轉化爲兩種數量的意義相反的性質來體現,這種性質必須嵌入到數量中,因而正負數的使用就成爲必然,這樣古人在開始列方程時就用正、負數來分別代替被减數和减數。不過,更有可能是從不够减的情形中引入正負數概念以後,使這種處理就變得容易和順理成章。因此,中國古代的方程不僅在數學史上是具有非凡威力的偉大創造,而且它特殊的結構形式和運算法則也促成了數學史上數量觀念的變革。
正負數的概念伴隨方程算法而産生,時間應該較早。《周禮·地官司徒》:“保氏掌諫王惡而養國子以道,乃教之六藝。一曰五禮,二曰六樂,三曰五射,四曰五馭,五曰六書,六曰九數”。鄭玄(公元127-200年)引鄭衆(?-公元83年)注:“九數:方田、粟米、差分、少廣、商功、均輸、方程、贏不足、旁要。今有重差、夕桀、勾股也”[63]。《周禮》的年代存在很多不同的意見,時間跨度從西周一直至漢初。不過,鄭衆所傳父親鄭興之學,源自古文經學派的劉歆,鄭衆應是把《周禮》當作爲周代經典看待的。因此,在鄭衆的心目中,包括“方程”在內的“九數”,不同于“重差”等漢代才興盛的數學門類,是周代已有的數學門類。因此,按鄭衆的意見,“方程”怎麽說也是先秦的數學門類。堀毅先生曾對比《九章算術》與戰國及秦、漢代的物價,認爲《九章算術》與秦及戰國接近而與漢代差別較大[64];郭書春先生在此基礎上認爲方程章中屬于這種情况的有第7、8、11、17、18五個問題[65]。其中第8、17、18三個問題在術文中都用到了正負數;第11個問題雖沒有出現正負數,但術文說要用“損益術”,所以古人在解答過程中肯定也用到了正負數。特別是其中的第17題,羊、犬、鶏、兔的價格分別爲177、121、23、29錢。堀氏找到前二者在漢代的價格分別爲600-1500、500-600錢,這與第17題差距甚大。而二者在秦及戰國的價格分別爲220-330、100錢,與第17題很接近。不過,他沒有用到居延新簡。居延破城子第51號探方223號簡記有“出二百五十買羊一,出百八十買鶏五隻”[66],這裏的250錢比他確定的漢代羊價的下限要低很多,但還是高于秦及戰國的下限。另外,羊盛産于西北,當時內地的價格應該要比250錢高出不少,比方程章第17題的價格高得更多。此簡中的鶏價爲36錢,爲第17題的1倍半還多。而敦煌懸泉《元康四年鶏出入簿》有兩支簡分別記有“十月盡十二月丁卯,所置自買鶏三隻,直錢二百卌,率只八十,唯廷給”(第125號簡),“正月盡十二月丁卯置自買鶏十五隻一枚,直錢千二百一十五,唯廷給”(第129號簡)[67]。此處鶏價都在80錢左右,比第17題的鶏價高了2倍半多[68]。這說明第17題極可能不屬于漢代而是更早時代的。可見鄭衆的注解、方程章中一些反映先秦物價的問題(包括含有正負數和沒含正負數的問題),都說明正負數和方程都應在先秦時代就已經出現。公元前186年以前的《算數書》中的“醫”條用到正負數概念,特別是其中引用戰國時秦國或秦代的
中国历史故事读书画报
法律含有正負數概念,則正好與此相一致。
七 早期正負數概念與考核評價記錄綜合上面的討論,可以推知:先秦時期的實際生活中存在得與失、贏餘與虧欠、多餘與不足等相反的情况,爲産生和接受正負數的觀念提供了現實的思想基礎,先秦時期方程術的産生導致了正、負數的必然引入。而這種觀念一旦引入,就可以爲人們所接受和使用。《算數書》“醫”條的作者、董仲舒,在幷非必要使用正負數概念的情况下,把已有的正、負數概念用于官吏業績、醫生治病效果等的考核與評價中。居延漢簡中含有“得算”、“負算”的大量記錄,雖然不能確定其文字本身蘊含著正負數概念,但這幷不意味著其表達方式與正負數概念一定毫無關係,因爲它們同屬考核記錄,用詞與《算數書》“醫”條相似,時代也較晚(如有的竹簡中記載的王充,是漢元帝建昭時期即公元前38-32年間的人[69]),間接或直接受到過正負數概念的影響是可能的。從上述幾種情形推測,在正負數概念産生後的一段歷史時期,曾被用于政府部門進行的考核與評價工作當中。之所以如此,推想有兩方面因素,一是在戰國時代百家爭鳴的大環境下,先進的正負數概念容易傳播,用于不同的領域;二是考核和評價工作中,往往會涉及正面評價和負面評價兩個相反的方面,其思想與正負數概念易于契合。
在《算數書》“醫”條中,治病的成敗比例已經用更抽象的正負數來描述,純粹從計算來說當然也很方便。但對實際來說,用正負數却幷不省事,這大概也是我們在後世的材料中沒有見到將正、負數用于醫生考評工作的原因。由于現存其他文獻中見不到漢代官吏考評方法的完整記錄,所以我們難以確定《考功名》的方法到底在多大程度上反映了當時的實際。不過,既然“醫”條的考評標準中用到正負數概念,董氏的考評方法如果不用正負數概念而只用加减概念,也不會存在什麽困難,所以《考功名》也不太會是突如其來地使用正負數概念的,而可能與當時或此前的考評工作中已有正負數概念的應用有關,它亦可能影響到當時或之後實際考評工作中正負數概念的使用。另外一個值得注意的現象是,《考功名》雖然也用到“得”和“負”這樣意義相反的詞,但以5(而不是0或其對應物)爲基準,且不出現“算”字,呈現出與“醫”條(或許還有居延、敦煌漢簡中某些用例)中正負數觀念的應用不同的特點。這說明董仲舒關于正負數的思想幷不是照搬了以“醫”條爲代表的一類正負數觀念,很可能作爲一代大儒的董仲舒自身具有相當豐富的數學知識,在當時考評工作已用到正負數的背景下,將正負數概念通過自己的方式引入到考評方法中;或者當時已在一定的範圍內,形成了使用正負數進行考評工作或設計考評方法的另一種方式。有意思的是:如果都不用正負數概念,《算數書》“醫”條把醫療分爲有效與無效(或誤治)兩類,數量只記錄其絕對數的多少而不反映數量的正負性質;《考功名》則只用加减運算而不涉及數量的正負,那麽古人同樣可以解决相應的問題。可見,正負數的介入在這類考評工作中幷沒有特別明顯的優勢。所以,正負數概念的核心內涵在居延漢簡涉及考評的“得若干算”、“負若干算”用例中沒有明顯的體現,現存後代文獻中也沒有見到考評分等中用到正負數概念,這是不奇怪的。另外,意義相反本是現實存在、思維中容易理解的性質,而在《算數書》“醫”條中,正、負數概念直接與醫療成敗兩種相反的情况對應;在《考功名》中正、負數概念參與運算時直接和加、减發生相應的轉換。這類把正負數與數字運算及其他事物相對應的觀念一直有形或無形地存在于中國傳統數學著作中,這大概是中國古代長期使用負數,却沒有如歐洲那樣,總是責問負數合法性的原因之一。
總之,得和失(負)、有和無等現實生活中存在著的意義相反的觀念,爲正、負數的産生提供了思維背景。而正、負數的正式引入乃是由于方程算法中不可避免地要出現正負相反的兩種數字。這種正、負數和方程算法應出現于先秦。正負數觀念産生以後,爲一些管理者和學者所接受,用于考核與評價等問題中,原來在現實生活中存在著的得失、利害、盈虧等對立相反的觀念,成爲接受正、負數概念的背景思想。不過,對于這些實際工作來說,古人對正負數的理解僅限于性質相反的兩種數量這一認識深度就足够了,而不太必要與0觀念一起清晰地統一到一個數系中去。所以,從由淺入深的認識論來說,居延漢簡中表示加分的“得算”、表示“减分”的“負算”,《考功名》和“醫”條中正、負數的觀念雖然可以視爲向方程算法中的正、負數概念發展的一個環節,但從歷史實際的角度看,情况却很可能是反過來的:正、負數概念在方程算法的直接推動下産生以後,曾影響到政府的考核和評價方法,《考功名》和“醫”條對正、負數概念的應用正是這種影響的表現(居延漢簡的“得若干算”、“負若干算”也有可能受此影響,但仍有很大的可能性是原有的兩種事物性質相反這一觀念的繼承或發展),是原有的兩種事物性質相反這一觀念(盈與不足,得與失,成功與失敗,債權與債務等)與新生的正、負數概念(對立相反的性質嵌入到數量中成爲數量本身的一部分,幷可以進行運算的數量)結合到一起的結果。
八 餘論——關于方法論的初步討論 對于研究科學史的學者來說,我們總是希望能够有充分的證據建立對某一科學上的事物、事件和思想的歷史性認識。但建立這種認識時,我們往往幷沒有足够的幸運見到足够豐富的資料。不過,有時候仔細關注和分析科學問題的特殊性在材料中的表現,也能從很有限的材料中獲得相當多的信息。這種分析不僅需要眼光,也需要方法。眼光來自素質、知識和訓練的綜合作用,它雖然重要,却難以捕捉和言傳;方法則有規矩可循。所以,這裏筆者就有關的方法論問題做一簡單的討論。
由于古人對概念和用語的涵義通常不做定義或明確的界定,我們一般只能從上下文來判斷。從便于現代知識背景的人理解古代的事物和思想的角度來說,用傳統的釋詞方法根據上下文來解釋在大多數情况下是足够的,甚至對于語言學上的一般性研究來說可能也够了,有時也許還是一種好的選擇。因爲通常的字典、詞典解釋字詞,不可能義項太多,每個義項需要一定的包容度;而在一般的古籍注釋中,大致的描述或告訴讀者古代某個東西在現代的對應物,也能滿足需要。但這種釋詞方法不太注意限定內涵和外延的範圍,容易失之寬泛和模糊。這對于我們認識某個概念的本質屬性來說,有時是不够的。因爲概念的本質特徵,有時是從細微處體現出來的。因此,我們還需從更近的距離著眼,查看相關的詞彙有哪些,考察古人通過何種方式建立需要解釋的詞彙與這些詞彙之間、這些詞彙彼此之間的聯繫,形成什麽樣的結構,各詞、詞組起什麽樣的語法功能,等等。這樣,不僅能較好地確定各詞彙和術語的涵義,而且能較好地瞭解整個詞組和句子的涵義,進而把握古人的思想。
科學概念和思想的演變與發展,有其內在的邏輯,但對這種邏輯不能簡單地按從低到高、從簡到繁來理解,更不能通過把現存史料中所反映出來的相關信息簡單地按這種次序來描述。我們既需要分析科學概念和思想産生和發展的背景和因素是什麽,其中何種因素是關鍵性和决定性的;也需要根據史料本身所映的情况及史料的時間順序來考慮問題。既尊重史料和歷史的複雜性,也充分兼顧科學概念和思想演化的內在邏輯。這樣才能有利于我們對所研究的對象獲得一個接近歷史真實的認識。
本文所討論的問題,主要涉及以下幾個關鍵點。
1.“算”字的各項意義在特定的語境中究竟哪一項合適。
2.人類對正、負數概念的認識是一個歷史的過程,何種情况可以視爲形成了正、負數概念。換句話說,正、負數概念最核心的涵義是什麽。
3.怎樣判斷某項文獻用到正、負數概念的最核心的涵義。
4.産生正、負數概念需要何種動因。
5.各條文獻中使用了正、負數概念的情况,分別處于歷史進程中的何種位置。
在第2和第4兩個關鍵問題上,筆者主要從歷史的角度和數學知識本身的特點進行分析來闡釋和判斷。在這裏,知識結構的觀念十分重要。對知識結構觀念的準確把握,不僅有助于理解一種知識的本身,而且有助于認識這種知識的功能(結構的性質也部分地體現在功能上),瞭解它的發展趨向。例如對第4個問題來說,正負數概念雖然以現實中的盈虧等意義相反的性質爲背景,但這類背景材料很多,其中絕大部分所包含的知識的結構都不足以推動數量觀念的變革,只有其中的方程算法這種特殊的知識結構才必然帶來數量觀念的變革,導致正負數觀念的産生。而劉徽關于《九章》成書過程的記載、鄭衆對《周禮》“九數”的注解加上物價方面的證據,正好可以解釋正負數産生于《算數書》“醫”條之前這一時間上的問題。對于第1、3、5三個問題,則除了從這兩方面考慮外,還特別倚仗語言分析的方法。在第1個問題上,不僅各個詞彙的涵義、整個文本的意義需要考慮,而且需要與其他相關文獻的記錄進行對比分析,從邏輯上統一和實際上符合兩個方面的要求來决定“算”字的何種意義是最爲合理的,幷進而闡釋整個文本的意思。其中,語法分析起了重要的作用。例如作爲動詞的第(3)、(4)、(6)三個義項,因爲詞性不合可以馬上排除。在“醫治病者得六十筭而負廿筭”中,“醫治病者”爲主語,統領“而”字聯接的兩個詞組“得六十算”和“負廿算”,其中兩個“算”字的意義應該相同。而作爲稅錢單位的第(5)個義項,則會導致醫生既收稅又繳稅,這既有邏輯上的矛盾,也與實際不符。而林倉億由義項(5)發展而來的義項“錢的單位”,則既于史無征,也同樣導致與實際不符的情况。而第(1)個義項算籌,由于實物不同于事情,自然也要排除。只有第(2)個義項“數量”、“數目”,從語法、語義和邏輯上都能說通,但也不能籠統地理解,而應參照居延漢簡、《考功名》中有關考核記分的情况,以及與《周禮》關于對醫生進行考核的記錄等,把“算”字在具體的語境中釋爲考核評價時的計分單位。
在討論第3個問題時,重要的是弄清文本是否具有正、負數的核心涵義“性質相反的兩種數量”。爲了達到這一目的,通過語法分析可以厘清“得”、“負”與“若干算”之間的關係,“得”、“負”的語法功能,以確定詞組“得若干算”和“負若干算”在不同文獻中的真實涵義,從而可以判定很多用例(不是全部,畢竟材料本身的局限性不是總能克服的)中古人是否用到了正、負數的概念。這樣就克服了平常解釋文本時容易模糊不同概念的界限的毛病。用這種方法筆者不僅區分了“得(若干)算”、“負(若干)算”在《算數書》“醫”條中與在居延漢簡中有不同之處,而且通過對“有得”、“有負”進行語法分析也能判定《考功名》用到了正、負數概念。這樣結合《九章算術》方程章中正負數、物價方面的證據,以及鄭衆對《周禮》“九數”的解釋等文獻,我們就能較好地回答第5個問題,幷由此獲得關于中國上古時代正負數觀念發展的一個歷史性的認識,它既符合數學觀念産生和傳播的內在邏輯,又能兼顧文獻的特點和時代順序。
附記:本研究得到國家自然科學基金項目“《算數書》與先秦數學”(項目類別:A,批准號:10171107。)的資助,本文修改稿得到中國科學院自然科學史研究所中國古代科技史前沿課題“簡牘與上古數學史研究”的資助。日本张家山汉简“算数书”研究会田村誠博士专门给笔者把该会編著的《汉简“算数书”——中国最古の数学书》中解释“医”条的篇章译成英文,使笔者对他们的工作有相当的了解。在此謹向田村誠博士致以深切的謝意。
The Concepts of Positive and Negative Numbers of in Early China: A Research Based on the Unearthed Bamboo and Wooden Slips
by ZOU Dahai
(Institute for the History of Natural Sciences, CAS)
Abstract Through the analysis of the contents related to the official evaluations in the unearthed documents with the references of the historical literature, some misunderstandings to the concepts of positive and negative numbers in ancient China could be corrected and the early history of the concepts of the positive and negative numbers could be constructed. This paper pointed out that the standard to judge if the ancient people used the concepts of positive and negative numbers is that the opposite natures were grafted into amounts and became parts of the amounts; argued that the character
Suan 算 in
Yi醫 (the Doctor)entry of
Suanshu Shu算數書 (Writings of Reckoning)could not be a tax unit or a currency unit in general meaning and this entry was neither for the income and tax of a doctor practicing medicine nor for the earning and cost. This paper proved that the
Yi entry was the rules defining the lowest ratio of successes to failures of a qualified doctor’s treating cases, and the
Suan was the scoring unit for assessing the effects of the treatments of the doctor. By grammatical analyses, this paper proved that the concepts of positive and negative numbers do have been applied in the
Yi entry of
Suanshu Shu and the Chapter “Kao Gong Ming考功名 (Appraise Achievement and Official Position)” in
Chunqiu Fanlu (Luxuriant Dew of the Spring and Autumn Annals) by Dong Zhongshu; however, those suspected cases seen in the bamboo and wooden slip documents unearthed from the sites of Han Dynasty in Juyan and Dunhuang are still waiting for confirmation because of insufficient information. This paper argues that the opposite meanings such as gains and losses, successes and failures, etc. were indeed the foundations for the concepts of positive and negative numbers, but the special structure of the
Fangcheng (juxtaposed examinations of standards) algorithm in Pre-Qin Period was the decisive factor to prompt the emergence of these concepts. The new concepts of positive and negative numbers influenced the evaluation and examination methods to the officials, the traces of which could be seen in the
Yi entry of
Suanshu Shu and the Chapter “Kao Gong Ming” in
Chunqiu Fanlu (possibly including some contents of the bamboo and wooden slip documents of Juyan and Dunhuang). This paper also analyzed the features of using concepts of positive and negative numbers in these assessing methods. At the end, this paper gave a preliminary discussion to the research methods and emphasized the importance of grammatical analyses and the idea of knowledge structure.
Key words: concepts of positive and negative numbers,
Yi entry of
Suanshu Shu,
Fangcheng method in the
Nine Chapters on Mathematical Procedures,
Kao Gong Ming of
Chunqiu Fanlu, documents on bamboo and wooden slips, Early history of mathematics in China, method of official evaluations and examinations in Early China, research methods of grammatical analyses and structure analyses.
網上發表附記:
本文已刊印于《考古學報》2010年第4期第481-504頁。但該版本有一些編印問題。本網絡版做了恢復幷偶有修改,較爲完整。又,刊印版本的英文摘要是《考古學報》編輯部組織專家根據我提供的中文摘要翻譯的,但雜志只有英文摘要。現稍作校訂,將中、英文摘要一幷納入,幷補上關鍵詞。(鄒大海 2010年11月30日)
(編者按:[1]李儼:《中國古代數學史料》,4頁,科學技術出版社,1956年。
[2]郭世榮:《漢簡屯戍記錄中的實用數學》,《內蒙古師大學報(自然科學)》1989年1期增刊,50—57頁;郭世榮:“負數的例子”,見李迪主編《中國數學史大系 第一卷 上古到西漢》,352—354頁,北京師範大學出版社,1998年。
[3]永田英正對這一問題,有兩種不同的意見。他早年認爲這些用例中的“算”是一種評價單位,“負一算”即减一分。見永田英正著,姜鎮慶譯:《論禮忠簡與徐宗簡》,《簡牘研究譯叢》第二輯,35—57頁,中國社會科學出版社,1987年。永田英正後來認爲“負若干算”是器物减少若干件的意思。見永田英正著,謝桂華譯:《居延漢簡集成之二——破城子出土的定期文書(二)》,《簡牘研究譯叢》第二輯,58—163頁,中國社會科學出版社,1987年。
[4]于振波:《漢簡“得算”、“負算”考》,《簡帛研究》第二輯,324—331頁,法律出版社,1996年。
[5]鄒大海:《中國數學的興起與先秦數學》,155—156頁,河北科學技術出版社,2001年;鄒大海:《出土〈算數書〉初探》,《自然科學史研究》2001年3期,193—205頁;鄒大海:《睡虎地秦簡與先秦數學》,《考古》2005年6期,57—65頁。
[6]鄒大海:《出土〈算數書〉初探》,《自然科學史研究》20卷3期,193—205頁。
[7]郭書春:《〈筭數書〉初探》,《國學研究》十一卷,324—325頁,北京大學出版社,2003年。
[8]王建青、張新立:《〈算數書〉中的記數方法》,《自然科學史研究》2005年3期,224—225頁。
[9]Cullen, Christopher,
The Suàn shù shū 筭數書 ‘Writings on reckoning’: A translation of a Chinese mathematical collection of the second century BC, with explanatory commentary, Needham Research Institute Working Papers: 1, Cambridge: Needham Research Institute, 2004. p61.
[10]林倉億:《漫談〈算數書〉(一):從“醫”開始》,《HPM通訊》2005年6期,2—5頁。
[11]馬彪:《張家山漢簡〈算數書〉的國際性探討——〈算數書〉及相關簡牘國際討論會:臺北(2006)綜述》,《HPM通訊》2006年12期,1—5版。
[12]张家山汉简『算数书』硏究会編:《漢簡『算数書』——中国最古の数学書》,85—87页,朋友書店,2006年。
[13]李儼:《中國古代數學史料》,4頁,科學技術出版社,1956年。第一個“正整數”可能是排印錯誤或作者的筆誤。
[14]張家山二四七號漢墓竹簡整理小組編著:《張家山漢墓竹簡[二四七號墓]》,釋文注釋258頁,文物出版社,2001年。
[15]何有祖:《張家山漢簡〈脉書〉、〈算數書〉札記》,《江漢考古》2007年1期,91—93頁。
[16]林倉億:《漫談《算數書》(一):從“醫”開始》,《HPM通訊》2005年6期,2—5頁。
[17]張家山二四七號漢墓竹簡整理小組編著:《張家山漢墓竹簡[二四七號墓](釋文修訂本)》,141—142頁,文物出版社,2006年。
[18]Cullen, Christopher,
The Suàn shù shū 筭數書 ‘Writings on reckoning’: A translation of a Chinese mathematical collection of the second century BC, with explanatory commentary, p61-62.
[19]許慎:《說文解字》,99頁,中華書局,1987年。
[20]段玉裁:《說文解字注》,198頁,上海古籍出版社,1992年。
[21]中國社會科學院語言研究所詞典編輯室編:《現代漢語詞典》,1305頁,商務印書館,2005年。
[22]“算”爲成年人頭稅的說法幷不準確。因爲上了一定歲數的老年人幷不需要交算賦,開始交算賦的年齡也在不同時期有所變化。如顔師古注《漢書·高帝紀》載漢高帝四年“八月,初爲算賦”時引如淳曰:“《漢儀注》民年十五以上至五十六出賦錢,人百二十爲一算,爲治庫兵車馬。”(班固撰,顔師古注:《漢書》,46頁,中華書局,1990年)。《漢書·貢禹傳》載漢元帝時貢禹曾請求改爲“宜令兒七歲去齒乃出口錢,年二十乃算”(班固撰,顔師古注:《漢書》,3075頁,中華書局,1990年)。我以爲“成年勞動力人頭稅”是“算”的一個比較準確的現代解釋。
[23]寧可:“算賦”,見中國大百科全書總編輯委員會《中國歷史》編輯委員會、中國大百科全書出版社編輯部編:《中國大百科全書·中國歷史(縮印本)》,654頁,中國大百科全書出版社,1994年。
[24]這樣解釋顯然不符合語法。古克禮先生曾提出兩種他不太確定的可能性:政府向醫者徵稅或政府付給他錢。見Cullen, Christopher,
The Suàn shù shū 筭數書 ‘Writings on reckoning’: A translation of a Chinese mathematical collection of the second century BC, with explanatory commentary, p61.
[25]《漢書·惠帝紀》載惠帝六年:“女子年十五以上至三十不嫁,五算”。應劭注曰:“漢律人出一算,算百二十錢。唯賈人與奴婢倍算。今使五算,罪謫之也”(班固撰,顔師古注:《漢書》,91頁,中華書局,1990年)。可見,賈人只交2算的成人勞動力人
頭稅,就算是偏重的;至于爲了增殖人口,女子到了年齡不嫁要繳5算,就是很大的懲罰。很難想像在常規狀態下,要對醫生徵收幾十算的算賦。
[26]班固撰,顔師古注:《漢書》,152頁,中華書局,1990年。
[27]范曄撰,李賢等注:《後漢書》,2018—2019頁,中華書局,1973年。
[28]甘肅省文物考古研究所、甘肅省博物館、文化部古文獻研究室、中國社會科學院歷史研究所編:《居延新簡》,476頁,文物出版社,1990年。
[29]例如徐中舒主編:《漢語大字典》第6册(3623—3624頁,四川辭書出版社、湖北辭書出版社,1989年),羅竹風主編:《漢語大詞典》10卷(62—63頁,漢語大詞典出版社,1992年),廣東、廣西、湖南、河南辭源修訂組、商務印書館編輯部編纂:《辭源》(修訂本1-4册合訂本)(1602-1604頁,商務印書館,1995年),王力主編:《王力古漢語字典》(1321頁,中華書局,2002年),辭海編輯委員會編纂:《辭海》(1999年版縮印本)(1326頁,上海辭書出版社,2000年)中“負”字都有虧欠義,而無繳納義。
[30]張家山二四七號漢墓竹簡整理小組編著:《張家山漢墓竹簡[二四七號墓](釋文修訂本)》,202頁,文物出版社,2006年。
[31]張家山二四七號漢墓竹簡整理小組編著:《張家山漢墓竹簡[二四七號墓](釋文修訂本)》,150頁,文物出版社,2006年5月。
[32]據《算數書》“程禾”條,黍一石爲16
從出土簡牘文獻看中國早期的正負數概念
斗。如按小石即10斗計,一石只15錢,三百石官員的常俸還會低得多。
[33]班固撰,顔師古注:《漢書》,721頁,中華書局,1990年。
[34]黃今言:《秦漢商品經濟研究》,227-228頁,人民出版社,2005年。
[35]黃惠賢、陳鋒主編:《中國俸祿制度史》(修訂本),36—45頁,武漢大學出版社,2005年。
[36]黃惠賢、陳鋒主編:《中國俸祿制度史》(修訂本),59—61頁。
[37]“医”条的“医治病者”,是很宽泛的的表述。从以《算數書》隨葬的墓主的情况、《算数书》其他条目涉及的社会经济等多方面看,“医”条中的医生服务于高级部门的可能性极小。
[38]高敏著:《秦漢史探討》,310—315頁,中州古籍出版社,1998年。
[39]班固撰,顔師古注:《漢書》,1181頁,中華書局,1990年。
[40]鄒大海:《中國數學的興起與先秦數學》,32—37、70—72,95—102頁,河北科學技術出版社,2001年。
[41]孫希旦撰,沈嘯寰、王星賢點校:《禮記集解》,1383—1394頁,中華書局,1989年。
[42]李零:《吳孫子發微》,30頁,中華書局,1997年。
[43]周祖謨:《爾雅校箋》,20頁,雲南人民出版社,2004年。
[44]郭書春:《〈九章算術〉匯校本》,388頁,遼寧教育出版社,1990年。
[45]謝桂華、李均明、朱國照:《居延漢簡釋文合校》,90頁,文物出版社,1987年。
[46]永田英正著,姜鎮慶譯:《論禮忠簡與徐宗簡》,《簡牘研究譯叢》第二輯,35—57頁,中國社會科學出版社,1987年。
[47]郭世榮:《漢簡屯戍記錄中的實用數學》,《內蒙古師大學報(自然科學)》1989年第1期增刊,50—57頁。
[48]于振波:《漢簡“得算”、“負算”考》,刊《簡帛研究》第二輯,324—331頁,法律出版社,1996年。
[49]謝桂華、李均明、朱國照:《居延漢簡釋文合校》,319頁,206.4號簡,文物出版社,1987年。
[50]郭世榮:《漢簡屯戍記錄中的實用數學》,《內蒙古師大學報(自然科學)》1989年第1期增刊,50—57頁。
[51]甘肅省文物考古研究所編:《敦煌漢簡(全二册)》,260頁,中華書局,1991年。
[52]鐘肇鵬:《春秋繁露校釋(校補本)》,411頁,河北人民出版社,2005年。
[53]鐘肇鵬:《春秋繁露校釋(校補本)》,411—415頁,河北人民出版社,2005年。
[54]蘇輿撰,鐘哲點校:《春秋繁露義證》,181頁,中華書局,1992年。
[55]于振波:《漢簡“得算”、“負算”考》,刊《簡帛研究》第二輯,324—331頁,法律出版社,1996年。
[56]參考鄒大海:《中國數學的興起與先秦數學》,79頁,河北科學技術出版社,2001年。林文也引及《周禮》中考核醫生的史料,以佐證“醫”條系講考核醫生的可能性,但未加深察,以致在“醫”條是講收稅還是講考核的問題上搖擺不定。
[57]孫詒讓撰,王文錦、陳玉霞點校:《周禮正義》(全十四册),315—340頁,中華書局,1987年。
[58]四種專科醫生中,上述文獻中只提到疾醫要把死者死亡前的病症上報醫師,獸醫要統計死亡的數目幷據以决定其升降。顯然這裏提到的遠比專科醫生應該報告給醫師的信息要少。
[59]錢寶琮主編:《中國數學史》,55頁,科學出版社,1981年。
[60]李繼閔先生認爲“(方程解法中普通使用的)直除是以少行减多行,而這個限制常常使方程術無法暢行”,“導致了正負數的産生”。他還指出近代的方程理論以等量關係爲基礎,中國古代的方程以比率關係爲基礎。如果把中國古代的方程理解爲近代的方程,那麽針對古代只有正數解的實際問題,古人完全可以避免引入正負數。他
以《九章》方程章第三問爲例,具體說明如按近代方程來理解古人的方程可以避免正負數的引入。這比錢先生又進了一步。但他對古人解題時必然引入正負數,幷沒有具體的分析和論證。文見:李繼閔:《〈九章算術〉與劉徽注中的“方程”理論》,載吳文俊主編《〈九章算術〉與劉徽》,274—294頁,北京師範大學出版社,1982年。
[61]郭書春匯校:《〈九章算術〉匯校本》,388—389頁,遼寧教育出版社,1990年。“無人”的“人”字爲底本文字,《匯校本》改爲“入”字。今仍從底本。理由見郭書春譯注:《九章筭術譯注》,73—74頁,上海古籍出版社,2009年。
[62]郭書春匯校:《〈九章算術〉匯校本》,389—390頁,遼寧教育出版社,1990年。括號內的字是劉徽注。
[63]孫詒讓撰,王文錦、陳玉霞點校:《周禮正義》(全十四册),1010頁,中華書局,1987年。
[64]堀毅:《秦漢物價考》,見《秦漢法制史考論》,268—306頁,法律出版社,1988年。
[65]郭書春:《張蒼與〈九章算術〉》,《科史薪傳——慶祝杜石然先生從事科學史研究40周年學術論文集》,112—121頁,遼寧教育出版社,1997年。
[66]中國簡牘集成編輯委員會:《中國簡牘集成》第十册,98頁,敦煌文藝出版社,2001年。
[67]胡平生、張德芳撰:《敦煌懸泉漢簡釋粹》,78頁,上海古籍出版社,2001年。
[68]胡平生先生等認爲“雙”(雙)習慣省寫爲“只”(隻),鳳凰山167號漢墓遣册凡言“只”者,出土實物多爲“雙”。見胡平生、張德芳撰:《敦煌懸泉漢簡釋粹》,79頁,上海古籍出版社,2001年。第17題雖未提及鶏的單位,但如果雙是常用的單位,則該題的鶏價似亦應指雙而言。這時,各種文獻中鶏價相差的倍數亦應不變。
[69]李振宏、孫英民著:《居延漢簡人名編年》,156—157頁,中國社會科學出版社,1997年。 (责任编辑:admin)
原文出处:http://his.newdu.com/a/201711/05/514016.html
以上是关于從出土簡牘文獻看中國早期的正負數概念的介绍,希望对想了解历史故事的朋友们有所帮助。
本文标题:從出土簡牘文獻看中國早期的正負數概念;本文链接:http://gazx.sd.cn/zggs/26990.html。