0這個後起的整數是否屬於自然數?這在現代數學學界仍有爭議。從西漢中晚期至東漢早期的簡牘中可以看到,至少在那個時代,中國人的算術中還不存在「整數零」這個數學概念。
眾所周知,相較於其他整數,「零」出現得相當晚。現代數學的整數符號「0」是印度人在公元5世紀發明的,傳入中國就更晚了。中國先秦秦漢的古籍中,找不到任何表示這個整數的字眼,「」壓根兒沒有,「零」也只有「零落」一類的意思,尚未表示數字。
學者研究指出,古代中國人是有類似「零」的概念的。比如中國哲學很早就有了「無」的觀念,和「有」相對。再比如古人利用算籌進行計算時,會以空位表示該位「沒有值」。但是,這些大多都是「空集」、「空位」之類的觀念,而非嚴格意義的「整數零」的概念。那麼,早期中國是否確實不存在作為整數概念和符號的「零」呢?如果不存在整數「零」,古代中國人又是怎樣處理相關的數學計算的呢?
學術研究「言有易,說無難」——為不存在的事物找到證明它不存在的證據是很困難的。幸運的是,證明中國古代沒有「零」的材料,居然在出土的漢代簡牘中找到了。
1970年代,甘肅居延肩水金關遺址出土了萬餘枚簡牘,2016年由上海中西書局出版。其中編號為73EJT23:54的一枚木簡,簡首題有「第三」,下面分十二欄記錄了如下一些數字:「負十五、負十三、負十一、負九、負七、負五、負三、負一、得二、得四、得六、得八。」與之類似的西北地區出土漢代簡牘還有幾枚,可惜均殘損,比如敦煌漢簡第1063號:「……第三負十三、第三負十一、第三負九、第三負七、第三負五、第三負三、第三負一、第三得二、第三得四……」
這些木簡應該是用於考核相關人員的工作績效的。漢簡中這類考評功績的材料很多,比如居延漢簡第206.4號:「萬歲候長充:受官錢定課四千,負四算;毋自言堂煌者第一得七算。相除定得三算,第一。」簡文是說有個叫充的人參加考核,參評的兩件事體,一件被折算為「負四算」,另一件被折算為「得七算」,兩件事體相加總成績為「得三算」,評定等第為「第一」。這類考評中的「算」,類似現代的「工分」;而考核等第,應該是「第一」至「第九」共九等。董仲舒在《春秋繁露·考功名》中描述了一種考評天下官員的理想體系,「以一為最,五為中,九為殿」,大概就是源自漢簡反映的這類在社會中實際運用的考績方式。前面所舉肩水金關73EJT23:54這枚木簡,就來自一份折算考評等第的表格。簡首的「第三」指考核等第為第三等,後面十二欄的數字,表示每月考評中第三等對應的「算」數。例如,假若是一月考評,負十五算就是第三等,依次類推。從漢簡材料看,「算」這種「工分」,扣除起來是非常殘酷的。居延新簡EPT50.2記錄了一個叫「範尚」的戍卒,一次考評涉及八件事,全是負分,共扣了三十多算,可考評等第仍為「第四」,屬中上水平。可見這類考核,有過失扣分的多,有功績加分的少。所以第三等的考績以負數開始,就不難理解了。
特別引人注意的是,作為計算考評等第的得負算數值,本應該是等差數列,但無論是肩水金關漢簡還是敦煌漢簡,在從負算過渡到得算時,均出現了異常。「負五、負三、負一」之後,難道不應該是「得一、得三、得五……」嗎?怎麼會是「得二、得四、得六……」?其實,這種看起來非常奇怪的數列,仍然是以等差的關係排列的。這種「等差數列」,證明了當時的中國人不用「零」。這裡所說的不用「零」,不是說當時的人知道有「零」這麼回事兒但還沒有發明專門的符號去表示,而是徹徹底底就不存在「整數零」這個數學概念。上舉簡牘的年代均屬於西漢中晚期至東漢早期——也就是說,直到那個時代,中國人在考核工作量這種常規的民用算術中還沒有「整數零」的概念。
「負二、負一、得一、得二、得三」,用現代數學常識來看,這種數數方法顯得十分彆扭。但對於西漢中晚期的西北邊陲的戍卒而言,這樣計數再平常不過了。他們眼中整數的序列,就像現代人乘坐電梯一樣——從一樓往下一層,不是零樓,而是負一樓。當時人的整數概念,與現代人大不相同。抽象地說,在他們看來,整數不是現代定義中數軸上的點,而是數軸上的線段:正整數線段缺少左端點,負整數線段缺少右端點。通俗地講,他們的整數計算就是「囫圇數字,論個兒數」(其實嚴格地講,當時也還沒有現代數學意義上的「正負」概念)。這種原始樸素的數學觀念,極大地影響了中國人的思維方式和風俗傳統,直至今日仍有痕跡可循。比如中國人舉辦傳統典禮,無論紅白喜事,不管是從第一天的何時開始,只要經過午夜進入第二天的凌晨,就算滿兩天了,不必滿48小時。從數軸的角度理解中國式的計時方法,所謂「兩天」,只需要起點終點分別為第一天、第二天這兩條線段的任意點,而不必積累滿兩個整天的長度。中國傳統的服喪制度正是如此,按規定嫡子為父服喪須滿三年,這裡的三年是指二十五個月,而非三十六個月——因為無論怎麼算,二十五個月都能經過三個「年線段」。既然正整數的概念均為缺少左端點的線段,且沒有零的概念,自然計數的起始點就是一而非零了——計算歲數的方式正是如此,出生就算一歲,中國人的傳統是沒有零歲的,所以除夕出生的嬰兒,大年初一就已經兩歲了。這種計「虛歲」的古老方法,很多現代中國人很難理解,其實正是早期中國整數觀念的孑遺。
這種原始樸素的計數方法,在「0」被發明之前的各大文明中應該普遍存在。又因為這種計數方式本質上是「以段代點」,所以在可以「成段數數」的時間計算的領域常有存古現象。由於羅馬數字中同樣沒有零,因此使用這種數字的東羅馬帝國僧侶在創製「公元紀年」時,規定「公元1年」的前一年是「公元前1年」,沒有設置「公元0年」。
儘管整數的概念是數軸上的線段而非點,古代中國人仍在很早的時候就發明了分數。出土的先秦秦漢數學文獻中頻頻見到發達的分數計算。古代中國發達的分數計算與相對落後的整數觀念並存了至少幾百年,遲遲不產生「零」,儘管很難想像,卻偏偏就是事實。
0這個後起的整數是否屬於自然數?這在現代數學學界仍有爭議。我國的小學數學課本曾經一直將0從自然數中排除的。但近些年的修訂版教材,不得不遵循《中華人民共和國國家標準》,改將0定義為自然數——據說是因為國際上認為0屬自然數的學派佔了上風。數學學界對0是否屬於自然數的爭論,當然都是從數學理論的角度出發的。不過,如果改從歷史的角度看問題,根據漢代出土簡牘所見的情況,「零」的確既不能說是「自然產生的數」,也不能說是「數起來很自然的數」,確實一點也不「自然」。