近似與精確:有限工具如何可靠地談無限小數
以下是一個假想的版面設計問題。
你要在展示板上安排一個面積恰好是 平方公分的正方形圖案,尺寸表要求把邊長四捨五入到小數第一位。有人填了「約 公分」,另一人卻提出疑問:,不是 ,這個答案怎麼會對?
再把問題改一下:展示板上有一個邊長恰好 公分的正方形空格,原來的圖案能不能放進去?我們先約定,圖案不縮放,兩個正方形的邊互相平行。
這兩個問題很接近,卻不能直接使用同一種回答。「邊長大約是多少」和「這麼大的空間一定夠不夠」,要求的保證並不相同。一個近似值可以適合記錄尺寸,卻不適合直接拿來承諾空間足夠。
平方根的近似值,真正要處理的就是這件事:即使不能把一個數的小數全部寫出來,我們仍能知道多少?又憑什麼用這些有限的資訊做決定?
前人已有近似工具,問題在於它能保證什麼
這不是電子計算機出現以後,人類才遇到的問題。
古巴比倫泥板 YBC 7289 上,畫有正方形及其對角線,並記下相關的數字。泥板上的一個六十進位係數,換成今天的小數記法,約為 ,很接近我們今天寫成 的數。這是現代記法的轉譯,不是說古人已使用根號和十進位小數。東伊利諾伊大學
Fowler 與 Robson 在研究中判斷,這塊泥板很可能是書吏學徒的練習,係數很可能取自既有的係數表。這些表把常用的計算數值保存下來;例如知道正方形的邊長,再乘上對角線係數,就能求得對角線長的近似值,不必每次從頭重算。東伊利諾伊大學
因此,前人並不是沒有工具。他們已經能保存、重用相當好的近似,處理幾何問題。但「這個數很好用」與「這個數恰好等於所求的量」,是不同的主張。把一個近似抄得更清楚、使用得更熟練,都不會使它因此變成精確值。
這裡至少有兩種不同的限制。第一種是成本:想讓近似更好,通常需要更多計算。第二種是表示能力:某些量,根本不能用我們原先期待的形式精確寫出來。
《幾何原本》第十卷留下了「可公度」與「不可公度」的區分。用長度來理解,可公度是指能找到某個共同的小長度,讓兩條線段都恰好由整數個這樣的小長度拼成;不可公度,則是找不到這樣的共同尺度。Shippensburg University
正方形的邊與對角線,就是長度不可公度的例子。換成現代數學語言:邊長為 時,對角線長為 ,而 不能寫成兩個整數的比值。這不是尺的刻度還不夠細,而是「用整數比精確表示」在這個對象上確實行不通。Shippensburg University
有限小數也受這項限制。任何有限小數都能改寫成分母為 的某個次方的分數,例如 。因此,既然 不是整數之比,任何有限小數就都不會是它的精確值。
不過,小數寫不完,不一定表示不能用分數精確表示; 就能精確指定一個小數寫不完的數。重要的不是一概排斥某種寫法,而是知道每種表示能做到哪裡。
從今天回看,這些工作幫我們分清了兩件事:一個量能被精確指定,不代表它能被某個有限小數精確寫出;不能用有限小數寫盡,也不代表它不能被比較、計算和研究。幾何關係、精確表示與數值近似,可以各自負責不同的工作。
不必先寫出所有數字,也能知道它在哪裡
回到面積為 平方公分的正方形。
若把邊長的公分數記為 ,要求就是
我們把符合這個條件的非負數寫成 。一般來說,對於 , 表示平方後等於 的那個非負數。
所以,圖案的精確邊長是 公分,而且
是精確等式。
根號並不一定表示「還沒算完」。在這裡,它已經把答案明確指定出來。我們接下來要做的,是取得方便記錄或比較的近似,而不是讓這個答案從不確定變成確定。
可是,要知道 大概多大,難道必須先把小數算出來嗎?
不必。我們可以反過來,利用已經會算的平方:
因為 ,所以
這一步之所以成立,是因為在非負數的範圍內,數愈大,平方就愈大。用正方形來想也一樣:邊長增加,面積就增加。面積 比邊長 的正方形大,卻比邊長 的正方形小,它的邊長便只能夾在 與 之間。
我們沒有先知道答案的小數展開,卻已經排除了所有不可能的位置。
這也告訴我們, 的整數部分是 ,不是 。被開方數 在這裡對應面積的數值;我們要找的,卻是邊長落在哪兩個相鄰整數之間。不能把根號裡面的數直接當成根的整數部分。
一般而言,若非負整數 滿足
便有
因此 的整數部分就是 。
左邊保留等號,是為了包含剛好相等的情況。例如 ,它的整數部分是 ,不是 。若 ,同樣的比較告訴我們, 的整數部分是 ; 也包含在內。
這不是神祕的開根技巧,而是一個推理上的轉向:暫時不直接求出未知數,先用容易計算的數,把它的位置限制住。
十分逼近:讓「大約」帶著可以回查的根據
現在已經知道 在 與 之間。但這個範圍寬達 ,還可以再縮小。
把 到 分成十個等長的小區間,每一段長 ,分界點就是 。我們要找出相鄰的兩個十分位數,讓它們把 夾住。
先試中間的 :
所以 。再往上比較:
因此
我們要找的相鄰十分位數,就是 與 。
這裡增加的資訊,不只是「答案似乎接近 」。我們還知道:它比 大,但沒有大到 。用 代替,會偏小,而且相差不到 ;用 代替,會偏大,相差也不到 。
於是,「大約」不再只是一種語氣,而有了可檢查的內容。
這也提供了回查方法。有人若把結果寫成 ,只要把右邊平方,就會得到 ,不是 ,因此等式不成立。保留上下界最清楚;需要交出單一數值時,則應說明取值方式,並使用近似符號,例如
但是,不能反過來認為「只要答案是有限小數,就一定只能用近似符號」。例如 ,而且
所以
就是精確相等。
此時,若仍用相鄰十分位數表示範圍,可以寫
卻不能把左邊也寫成嚴格的小於。比較時碰到相等,就應保留相等,不能為了套用區間的樣子而改掉事實。
平方回查也有一個不能忘記的條件:我們找的是非負的 。例如 也等於 ,但 並不是 。判斷 ,必須同時確認 及 ,不能只查平方。
上下界的價值,也不只存在於今天的課堂。阿基米德的《圓的測量》使用平方根的有理上下界,參與圓周長與直徑之比的範圍計算。其作用是:即使不能用分數精確寫出那個根,仍可使用已知偏小或偏大的分數,讓後續幾何推理繼續前進。Davies 的研究同時指出,阿基米德如何得到其中的 界值,傳世材料並未交代清楚;可行的重建方法,不能直接當成他實際使用的方法。arXiv
這裡值得學到的,不是古人已經使用今天課本上的十進位十分逼近法,而是更根本的能力:不必先得到有限小數形式的精確答案,也能用上下界支持進一步的結論。
對我們現在採用的逐段比較法而言,範圍愈細,通常需要的比較也愈多。是否值得繼續,應看目前的資訊能否回答問題,而不是一律追求最多的小數位。
按下平方根鍵,還沒有替你決定數字的意思
計算機能減少取得近似值的工作,但使用者仍要分清楚自己需要什麼。
以 CASIO fx-82MS 第二版這類先輸入函數的機型為例,求 可以依序按下「」、「」、「」。其他機型應依各自的說明操作,不能假設輸入順序全都相同。卡西歐支援
本例的小數結果可記為
若要求四捨五入到小數第一位,就由這個結果看小數第二位。第二位是 ,因此
若要求到小數第二位,就從原來的結果看第三位。第三位是 ,因此
兩個答案並不衝突,因為它們回應的是不同的位數要求。一般要求保留小數 位時,要查看第 位,依四捨五入規則處理,並留意進位。這裡的 是題目要求的小數位數,不是螢幕能顯示的最大位數。
也不要先把原結果捨成 ,再用 捨入到一位;那樣會得到 ,與由原結果直接取一位不同。不同位數的答案,應各自由原結果決定。
這時還要分清另一件事:找到十分位區間,並不等於已經決定四捨五入到十分位的答案。
只知道
還不能單靠這句話,就宣告它四捨五入後是 。因為 和 都在這個區間內,前者四捨五入到一位是 ,後者卻是 。區間還沒有告訴我們,根位於中間分界 的哪一側。
計算機的結果提供了更多資訊;我們也能用平方做一次獨立回查:
因為 非負,所以 。配合原有的下界,得到
這就說明了它為什麼應四捨五入為 。若一個數恰好等於 ,依這裡採用的四捨五入規則,取到一位時則是 。
因此,判斷某個數「是不是合適的近似值」,必須先看要求。若要求「與真值相差不到 」,本例的 與 都符合;若要求「四捨五入至小數第一位」,答案則是 。只寫一個「約等於」,還不足以說明採用了什麼標準。
螢幕顯示也有自己的規則。上述機型的 Fix 設定會按照指定的小數位數捨入後再顯示;其數值計算本身也具有有限精度。因此,顯示多少位,不能直接當作數學上是否精確的判準。卡西歐支援
例如
足以排除「」的說法。不必先找到更長的小數,才有資格指出等號不成立。
不過,「不精確相等」不等於「不是可用的近似」。它是否合用,仍須回到要求的位數或容許差距。計算機方便我們取得數字;平方比較則幫助我們檢查數字的位置,以及它究竟支持哪一種主張。
同一個近似值,為何有時能用、有時不能用
現在可以完整回答開頭的版面問題。
在這個假想設計中,圖案的面積被指定為恰好 平方公分,精確邊長便是 公分。尺寸表要求四捨五入至小數第一位,因此填「約 公分」沒有問題。
但這不代表圖案能放進邊長恰好 公分的正方形空格。在圖案不縮放、兩者的邊互相平行的設定下,由
便知道空格太小。這個結論不需要知道第十位、第一百位小數。
如果預留的是 公分見方的空間,由
可知,在不另加邊框、不計印刷偏差的數學設定下,空間足夠。
用來報告尺寸的四捨五入值,和用來保證容納的上界,可以是不同的數。前者要一個接近真值的簡短表示,後者要一個不會小於所需尺寸的保證。不能把「很接近」偷偷換成「一定不會不夠」。
若空間限制落在我們已知的上下界之間,現有資訊就可能還不夠。這時應取得更細的資訊,而不是把「尚未判定」當成「應該沒問題」。
在現代數值計算中,區間算術就是一種相關的方法:它不只保存單一近似數,而以區間運算及適當的端點捨入,保留可證明包含結果的範圍,控制有限位運算的捨入影響。這是上下界思考的現代連結,不表示一般計算機都會自動提供這種保證,也不表示把兩個顯示值任意當成上下界就一定可靠。DLMF
最後還要確認輸入的意思。本例的 是設計指定的精確面積;假如它來自量測,而且已經捨入,原始面積便另有不確定性。就算把「」算得再細,也只是更細地處理輸入的 ,不會自動恢復量測時失去的資訊。
理解近似與精確,讓我們多出的能力,不是只會把根號換成小數,而是能分清:根式精確指定的是哪個數,近似值按照什麼規則代替它,上下界又替結論提供了什麼保證。
人類不必寫完無限的小數,才開始做可靠的計算。重要的轉變,是把「不能寫盡」與「不能知道」分開:我們可以不知道所有數字,卻仍知道答案在哪裡、差距受到什麼限制,以及目前的資訊夠不夠支持下一個決定。
【本文完】