【大宇宙小故事】17 擦肩而過

撰文|葉李華

如果我說:某人有1234本藏書,你一定知道是什麼意思。因為「印度(阿拉伯)數字」早已是我們生活的一部分,你一看到1234,直覺就會將它解讀為「一千二百三十四」。

這套源自印度的數字系統之所以流行全世界,主要有兩個原因:

1.只有十個符號(0, 1, 2...9),易學易記。

2.採用「位數制」,例如1234分別對應「千位」、「百位」、「十位」、「個位」。

只要仔細想想,你一定會同意,這兩個原因的重要性有天壤之別。

0, 1, 2...雖然易學易記,但如果改成其他符號,頂多增加書寫的麻煩,不會造成實質上的困難。但是如果捨棄「位數制」,可就要天下大亂了。

千萬別小看位數制,它實在來之不易;在印度數字發明之前,人類有好幾次跟它擦肩而過的紀錄。

例如早在西周時代,中國人就把1234寫成「一千二百三十四」,只要再少寫幾個字,簡化成「一二三四」,那就是位數制了。只可惜沒有人這麼做,因為當時中國尚未出現「零」的概念,碰到1034這樣的數字,只能寫成「一千(又)三十四」,根本無從簡化。

順帶一提,中文的「零」原來只有「化整為零」之類的用法,換言之1>零>0。直到公元八世紀,由於印度數字傳入中原,才多了一個「零=0」的定義。

其他古文明有沒有擦肩而過的例子呢?當然有!古希臘和羅馬時代的學者,其實都有機會發明位數制。且讓我們先從羅馬講起,因為羅馬數字目前仍舊通用,大家或多或少見過。

羅馬數字只有七個符號,但由於並非位數制,而且裡面隱藏了加減法,常常讓人看得眼花撩亂。比方說:

1, 2, 3的羅馬數字是I, II, III(所以第一個符號是I);

4, 5, 6, 7, 8的羅馬數字是IV, V, VI, VII, VIII(出現一個新符號V);

9, 10則是IX, X(又出現一個新符號X);

20, 30...80是XX, XXX, XL, L, LX, LXX, LXXX(又出現一個新符號L);

90, 100是XC, C(又出現一個新符號C);

200, 300...800是CC, CCC, CD, D, DC, DCC, DCCC(又出現一個新符號D);

900, 1000, 2000, 3000是CM, M, MM, MMM(出現最後一個符號M)。

至於更大的數,羅馬人當然也有辦法,但因為不太常見,在此就不介紹了。

接下來討論一個有趣的問題:羅馬數字到底是幾進位?

正確答案是:羅馬數字採用「雙五進位」,可以算是一種特殊的十進位,但絕對不是五進位。原因很簡單,如果是五進位,五的平方(25)應該擁有特殊的符號,而不是平淡無奇的XXV。

既然提到「雙五進位」,順便探討一下它的來源吧。

大家都知道,人類共有十根手指,所以古今中外的文明大多採用十進位。不過,這些指頭平均分配在兩個手掌上,當我們用手指計數時,實際上已經在實踐雙五進位。

此外就人類的視力而言,七、八個東西擺在一起就容易看走眼,所以用「五」當基本單位是很好的選擇(中文字的「正」便有這個妙用,歐美則習慣用四豎一撇)。

再回到羅馬數字上,它的優點是古樸典雅,缺點則是不利於計算。原因之一剛才已經提到,它的「造字規則」隱含了加法與減法,另一個(次要的)原因則是每個數字長短不一。

例如26+73=99這個加法,用羅馬數字表示是XXVI+LXXIII=XCIX(請想想要用到多少心算)。這還只是加法而已,如果換成乘法,當然會可怕許多倍。

那些雄偉的古羅馬建築又是怎麼建造的呢?可能性只有下列三種:

1.當時的工程師使用羅馬數字辛辛苦苦進行計算。

2.他們發明了避免複雜計算的建築工法。

3.他們擁有計算加減乘除的工具。

在公布答案前,先提供一個線索:英文的「計算」(calculation)與「鈣」(calcium)是不是好像有親戚關係?

沒錯,兩者其實同出一源(字根是拉丁文的「石灰石」)。這意味著羅馬人曾經用石頭當計算工具──不是大石頭,而是磨成珠狀的小石子。將這些石子放在特製的盤子裡,就是一個輕便實用的計算工具,所謂的「羅馬算盤」。

羅馬算盤和華人熟悉的算盤相似度有多少呢?一張圖勝過千言萬語,請大家自己看看下面這個「復刻版」的照片以及一幅古老的圖畫(實物大小不超過手掌)。

圖像來源:維基百科

一眼就能看出來,羅馬算盤的「位數」非常明顯,這是它和羅馬數字最大的不同,也正是它便於計算的主因。至於羅馬算盤和中國算盤的差異,其實只差在珠子有沒有穿洞而已。比方說,中國算盤是標準的雙五進位,羅馬算盤也一樣。

令人難以置信的是,羅馬人一直把這種算盤當成實體的計算工具,從未想到把它轉移到書面上。因此羅馬工程師在做計算時,會先根據羅馬數字撥弄算珠(等於轉換成「位數制」),最後再把計算結果(在心中做一次反轉換)用羅馬數字寫在羊皮紙上。

當年如果有人把羅馬算盤「虛擬化」,整個歐洲的數學史想必會改寫。

講完羅馬,就該回溯古希臘了。古希臘學者利用他們的字母,再加上一些符號,創立了古希臘數字系統──沒有隱性的加減法,而且也是十進位。如果你用古希臘數字寫1333, 會剛好用到四個符號;換句話說,古希臘數字也是將1333分解為1000+300+30+3來呈現。

看起來跟「印度(阿拉伯)數字」很像嗎?別急著下結論。古希臘數字用不同的字母代表300, 30, 3(分別是τ, λ, γ, 上面加一條橫線,表示被借來當數字),所以並沒有你想像中那麼簡單。

因此之故,包括阿基米德在內的古希臘學者,當他們在做複雜計算的時候,同樣需要使用輔助工具。它和羅馬算盤大同小異,但因為上面沒有凹槽,所以稱為算板比較貼切。

下圖是考古學家於1846年在愛琴海(薩拉米斯島)發現的希臘算板,有人認為只要把它轉九十度,就等於是羅馬算盤。不過,大多數學者認為這種算板的「五位數」夾在「個位數」和「十位數」之間(羅馬算盤則是「五位數」和「個位數」在同一排),其他位數以此類推,所以這個問題目前還沒有定論。另一方面,希臘算板採用雙五進位則是學界的共識,所以它很可能是古今中外所有算盤的老祖宗。

圖像來源:維基百科

古希臘的大數學家不在少數,當他們在使用這種算板的時候,怎麼都沒想到將它虛擬化?或許並非他們數學功力不夠,而是受到心理因素的影響。這是個非常耐人尋味的問題,可惜好像沒有人認真研究過。

最後一個擦肩而過的例子,八成也和心理障礙有關。

如果前三個例子令你覺得可惜,最後這個恐怕會讓你扼腕。且說早在戰國時代,中國數學家就發明了所謂的「籌算」。如今我們常用的成語「運籌帷幄」、「略勝一籌」乃至「一籌莫展」,都是從這種計算工具衍生來的。

顧名思義,籌算是使用「籌」當工具的算術。至於「籌」是什麼,請把它想成一堆竹筷子即可。換句話說,你只要抓一把竹筷子,然後席地而坐,立刻就能進行籌算。要是地上剛好有方格(例如磁磚地板),那就更方便了,因為每個方格可以代表一個「位數」。

下圖是用「籌」排出的兩個數:71824與63059。

從這兩個例子,不難看出籌算也是採用雙五進位。如果你不介意,我們就將這些「籌算的代碼」簡稱為「籌碼」吧。

在排列籌碼的時候,為了避免混淆,必須直排和橫排交錯。所以在代表71824的籌碼中,7, 8, 4是直排,1, 2則是橫排。

第二個例子明白顯示0以「空格」代表,所以就籌碼本身而言,不折不扣是「位數制」。戰國時代的學者只要把籌碼抄到竹簡上,就能提早一千年發明出等同於印度數字的系統。

可惜的是(以下只是一家之言)或許由於竹簡來之不易,必須盡量節約使用,所以中國的古文總是擠在一起,沒有空格的習慣。久而久之,這種習慣深化為「文化基因」,就不可能再有人違背了。

所以,又是一次擦肩而過,而且應該是距離最近的一次!

 

註一:有些學者認為籌碼是印度數字的前身,但這並非學界的主流觀點,原因之一是印度數字的寫法毫無雙五進位的影子。此外,也有學者認為中國算盤是籌碼的後裔,不過同樣只是一家之言。

註二:至於羅馬算盤和中國算盤有沒有淵源,目前仍舊沒有定論。但可以肯定的是:(1)羅馬算盤早於中國算盤;(2)中國在東漢時代就和羅馬帝國有商業往來。

 

加入好友

2,620 人瀏覽過