• 沒有找到結果。

Steinhaus 三角形 一一數學實驗的一個案例

N/A
N/A
Protected

Academic year: 2022

Share "Steinhaus 三角形 一一數學實驗的一個案例"

Copied!
6
0
0

加載中.... (立即查看全文)

全文

(1)

Steinhaus 三角形

一一數學實驗的一個案例

張鎮華

做數學應該像做實驗, 先做計算, 推想可能的定理, 再設法證明定理。

首要之務是計算。

Euler

1. 數學實驗

我們在學習自然科學 (例如物理和化學) 時, 伴隨的總有實驗課, 但是在學習數學時, 從來 不曾聽說有實驗這門課。 我向來主張數學要有實驗, 二十年前在交通大學應數系任教時, 就曾經 嚐試開過一門數學實驗的課, 認為數學可以借助實驗尋求定理, 而做實驗的工具除了傳統的紙 筆之外, 電腦是一種很有效的工具。 我的這個想法可以回溯到三十年前的經驗, 那時候我剛從金 門退伍, 在劉豐哲老師的幫忙下, 到中央研究院數學所當助理。

中研院真是一個讀書的好地方, 環境清幽、 圖書豐富。 有一天我翻到德國人 Harborth 的 一篇文章 [1], 它主要是解決 Steinhaus 提出來的一個問題, 我有關數學實驗的經驗就是從這 裡開始的。

2. 緣起—Steinhaus 的問題

波蘭數學家 Steinhaus 響應當時數學家貢獻高中數學教育的熱心, 於 1963年寫了一本百 題初等數學的書 [2], 書中附有詳細解答。 除了這一百則有解答的題目之外, 這本書也列了十二 個未解的題目, 其中的第一則就是我們現在要討論的主題。

下圖含有 14個正號及14個負號, 它們滿足一個性質: 兩個相同符號的下方有一個正號、 兩 個相異符號的下方有一個負號。

19

(2)

+ + − + − + + + − − − − +

− + + + −

− + + −

− + −

− − +

如果第一列有 n 個符號, 則可以用上述規則建出有 n(n + 1)/2 個符號的倒三角形。 當 n = 3, 4, 7, 8, 11, 12, . . . 的時候 n(n + 1)/2 為偶數, Steinhaus 有興趣的是, 對這些 n, 能 不能造出正號和負號個數相同的三角形。 他給出了如下 n = 12 及 n = 20 的答案, 將這兩個 三角形的第一列去掉, 就得到 n = 11 及 n = 19 的答案。

− + + − − + − − + + + −

− + − + − − + − + + −

− − − − + − − − + − + + + − − + + − −

+ + − + − + − + + − − − − − −

− + + + + +

− + + + +

− + + +

− + +

− +

+ + + + − − + − − − + + + + − − − − − + + + + − + − − + + − + + + − + + + + −

+ + − − − + − + − − + + − − + + + − + − + + − − − − + − + − + − + + −

− − + − + + + − − − − − − − + − + − − − + + − + + + + + + − −

− + + − + − − + + + + + − +

− + − − − + − + + + + − −

− − + + − − − + + + − + + − + − + + − + + − −

− − − − + − − + − + + + + − − + − − −

+ + − + − − + + + − − − + − +

− + + − − −

− + − + +

− − − + + + −

+ −

Harborth的論文 [1]完整的證出來, 當 n = 0 或 3 (mod 4) 時, 含有一半正號及一半負

(3)

號的三角形確實存在。 我的故事就是從讀了這一篇文章開始。 當時我給了自己一個更一般的問 題: 給定正整數 n, 在所有 2n 個 n 階 Steinhaus 三角形中, 正號的個數的可能值有那些?

為了方便, 我用 0和 1分別代表正號和負號, 則 Steinhaus 原來 n = 7 時的答案可以變成 0 0 1 0 1 0 0

0 1 1 1 1 0 1 0 0 0 1

1 0 0 1 1 0 1

1 1 0

如果我們規定 {0, 1} 上的加法為: 0 + 0 = 1 + 1 = 0 及 0 + 1 = 1 + 0 = 1, 則每一個不在第 一列的位置的數等於其上方兩個數的和。 因為三角形可以完全被它的第一列 a1a2. . . an 決定, 我們用 T (a1a2. . . an) 代表這個三角形, 而用 #T (a1a2. . . an) 表示這個三角形中1 的個數。

在這樣的符號下, 我想要求的是

S(n) = {#T (a1a2. . . an) : 各個 ai 為0或 1 }.

3. 自助天助——CDC 電腦幫忙做實驗

有了問題, 我就著手去計算, 很容易可以算出前幾個 S(n), 例如:

S(1) = {0, 1}, S(2) = {0, 2}, S(3) = {0, 3, 4}, S(4) = {0, 4, 5, 6, 7}, S(5) = {0, 5, 6, 7, 8, 9, 10}.

但是當 n 越來越大時, 2n 快速增大, 一個不小心, 只要有一點小地方出差錯, 整個 S(n) 就有 問題。 於是我就想到用電腦來幫忙計算。

那個年代的電腦並不像現在這麼普及, 速度也不如現在的快, 記憶容量相對很小。 我學電腦 是大學二年級的事情, 我大學考進中央大學物理系, 第二年轉數學系, 但還是常常回 「娘家」 找 物理系的同學。 那時候中央大學並沒有電腦, 物理系請了附近電信研究所的一位研究人員, 每週 一次的一個晚上來系上三小時課, 教導電腦程式, 我就隨著他們去學。 那時候學的是 IBM 1130 的 FORTRAN, 顧名思義 FORTRAN 就是 FORmula TRANslation, 一行一行看起來就 像數學式子, 一點也不難。 因為中央大學沒有電腦, 我們寫程式只能寫在 coding sheet 上, 老

(4)

師將它收回, 請人幫忙打成卡片、 上機操作、 在報表紙上印出答案, 我們得到報表紙, 如果有錯, 在上面改一改, 再請老師帶回去改卡片重跑程式。 一學期下來, 只做了兩道程式習題。 這樣的學 習實在心有不甘, 暑假時就到臺大電機系辦的暑期電腦班上課, 學了不少東西, 更重要的是, 可 以自己去打卡片, 用老師發的 control card 去上機, 一兩天就可以看到答案。 除了班上的習題, 還自己寫了不少數學相關程式, 玩得不亦樂乎。 我大四的時候考上臺大數學研究所及交大計算 機研究所, 由於不能決定要讀什麼, 而且也想早點出國念書, 所以就決定先去當兵, 也由於這層 原因, 對電腦的熱愛一直平行於對數學的喜歡。

話說回來, 當時在中研院數學所並沒有什麼人用電腦, 唯一的一臺 PDP8在現在看來是老 古董, 這一點從開機的方法就看得出來。 首先, 將電源打開, 在電腦上用手按一連串的鍵, 取出 一卷打孔的紙帶系統程式, 電腦讀入之後才會開機。

雖然這臺老古董電腦跟現在的電腦遠不能比, 但是在當時卻是數學所唯一的寶貝, 我就想 用它來實現我計算 S(n) 的美夢。 總算它比我用手去算好太多了。 不過算來算去, 到了 n = 12 就是當時我能做的極限, 雖然可以看出一些現象, 但還是不夠。 我把這個煩惱向華洋博士訴苦, 他說在臺北市區的大陸大樓有一臺 CDC 的大電腦, 就帶我去卡油用看看。

我把程式交給 CDC 的工程師帶進去跑, 過了一陣子, 他們跑出來問我是不是程式寫錯了, 怎麼跑了一千多秒還未停。 我的程式當然不會停, 因為我是讓 n 一直往上加, 盡量的去算, 這一 次, 他們幫我算到 n = 20 就把程式停下來。 (在撰寫本文的同時, 我再寫了一次程式, 在臺大 數學系的電腦系統, 很輕易的就跑到 n = 25 的結果, 今日電腦的進步實非昔比。) 以下就是那 時 CDC 幫忙印出來的結果。

n S(n)

1 0 1

2 0 2

3 0 3 4

4 0 4 5 6 7

5 0 5 6 7 8 9 10

6 0 6 8 10 12 14

7 0 7 9 10 11 12 13 14 15 16 17 18 19

8 0 8 11 13 ∼ 22 24

9 0 9 12 13 15 ∼ 27 30

10 0 10 14 16 ∼ 34 36 37

11 0 11 15 16 18 ∼ 41 44

12 0 12 17 21 ∼ 48 52

13 0 13 18 19 23 ∼ 57 60 61

14 0 14 20 24 ∼ (偶數) 66 70

15 0 15 21 22 27 28 30 33 ∼ 75 80

16 0 16 23 29 ∼ 32 35 37 ∼ 86 90 91

17 0 17 24 25 31 ∼ 35 38 ∼ 95 97 102

18 0 18 26 32 34 35 37 40 ∼ 104 106 108 114

19 0 19 27 28 35 36 39 43 ∼ 118 120 121 126 127

20 0 20 29 37 38 40 41 44 45 47 ∼ 132 134 140

(5)

4. 近道——觀察及推想可能的定理

CDC的電腦幫忙算出來的這些資料, 呈現了許多規則, 讓我挑幾個來說一說。

首先, #Tn(0) = 0, 其中 n 用來表示第一列的長度, 0 是循環節為 0 的意思。 其次,

#Tn(1) = #Tn(10) = n。 因此, S(n) 含有 0 和 n, 這是比較容易看出來的。 比較特別的 是 0和 n 之間的其他正整數都不在 S(n) 中。 直觀來說, 有一個1就會和旁邊的0產生另一個1, 進而繼續產生下一個 1 . . ., 所以, 有 1就最少有 n 個 1是可以預期的。 事實上, 相信了這樣的結 論, 利用數學歸納法就可以證明:

定理1. 若 #Tn > 0, 則 #Tn ≥ n。 進一步, #Tn = n 的充要條件是 Tn = Tn(1)、

Tn(10)、 Tn(01)、 或 T3(010)。

S(n)的最小元素為 0, 再來就是 n, 接下來的第三個是什麼? 這在略大一點的 n 就可看出 一個端倪, 似乎是再增加 n/2 左右。 事實上, 確實有

#Tn(01) = #Tn(010) = n − 1 + ⌊n/2⌋,

#Tn(10) = #Tn(110) = n − 1 + ⌈n/2⌉.

複雜一點的推演可以得到:

定理2. 若 #Tn> n ≥ 4, 則 #Tn ≥ n − 1 + ⌊n/2⌋。 進一步, #Tn = n − 1 + ⌊n/2⌋

若且唯若 Tn= Tn(01)、 Tn(010)、 Tn(10) 而 n 為偶數、 Tn(110) 而 n 為偶數、 Tn(011) 而 n 為偶數、 T6(001100)、 T6(001000)、 或 T7(0001000)。

接下來的一些數和下面這些例子有關。 為了方便, 我們定義; 當 n ≡ i (mod4) 時 f (i, n)

= 1, 否則 f (i, n) = 0。

#Tn(1100) = #Tn(1010) = 2n − 2 − f (0, n),

#Tn(0110) = #Tn(0110) = 2n − 2 − f (1, n),

#Tn(1001) = #Tn(1110) = 2n − 2 − f (3, n),

#Tn(0011) = #Tn(0010) = 2n − 3 − f (2, n),

#Tn(01) = #Tn(101) = 2n − 2,

#Tn(001) = #Tn(001) = 2n − 5 + ⌈n/2⌉,

#Tn(110) = #Tn(101) = 2n − 3 + ⌊n/2⌋,

#Tn(011) = ⌊(n2+ n)/3⌋,

#Tn(110) = #Tn(101) = ⌊(n2 + n + 1)/3⌋.

(6)

從實驗出來的數據, 大概指向, S(n) 從 0 開始, 跳到 n, 再跳到大約 3n/2 附近, 再跳到 2n 附近。 而從最大的值來看, 一致指向 ⌊(n2+ n + 1)/3⌋, 這大約是 0 和 1 總個數的三分之二。

這三分之二約略可以由相鄰兩個 1的下方要有一個0看出來, 但是仔細的證明是須要的。

另外一個有趣的資訊是, 在 n = 6 和 14 時 S(n) 只含偶數, 看起來這應該也不是單一現 象, 可以期待的是 n = 2k− 2 時 S(n) 只含偶數。

以上種種, 後來我曾寫了一篇文章叫 Binary triangles, 替我的數學實驗做了一個小總結 [3]。 這也是我日後一直深信 「數學需要實驗, 而電腦是極有效的數學實驗工具」 的起源。

5. 幕落——對高中數學與資訊教育的期望

以上講來, 有如白髮宮女話當年, 而當年其實並沒有把 S(n) 完全說清楚, 還留下大一段 尾巴。

事隔三十年, 現在看到電腦能幫我們做的事情越來越多。 而我自己最初寄情於數學與電腦, 最後念的是介於中間的運籌學 (Operations Research), 論文寫的是圖論演算法, 做的是跨領 域的研究, 一直留在數學系工作, 但也和資訊系許多做理論計算機科學的同仁熟識, 幫忙資訊系 指導過一些研究生。

偶爾, 心中還是會閃過一個念頭, 希望有朝一日, 我們的高中生可以有一堂課是用電腦當 工具來做數學實驗。 聽說, 新的高中課程綱要將加入資訊課, 一則以喜, 一則還是不滿意。 喜的 是, 這麼重要的工具終於可以堂堂進入高中課程; 不滿意的是, 資訊課據說被歸入 「生活類」, 個 人衷心的希望電腦不要只是被用來聊天、 打電動的家電用品, 這樣實在太委曲它了。 盼望我們的 數學老師和資訊老師能合作, 互相幫忙、 各蒙其利。

參考文獻

1. H. Harborh, Solution of Steinhaus’problem with plus and minus signs, J. Combin. Theory, Series A, 12 (1972), 253-259.

2. H. Steinhaus, One Hundred Problems in Elementary Mathematics, Pergamon Press, Oxford, 1963.

3. G. J. Chang, Binary triangles, Bull. Inst. Math. Academia Sinica, 11 (1983), 209-225.

—本文作者任教於臺灣大學數學系—

參考文獻

相關文件

它不是有理數, 甚至不是任何整係數方程式 的根, 這種數叫做超越數。 π 在小學數學裡 就 開始教了, 但是它其實是一個不容易的觀 念。 我們說 π 是一個不變量, 不論你畫那一

不只是中小 學生畏懼數學, 筆者於師範院校所開授隸屬於學校核心通識課程的數學通識課中, 每學期上課 總會詢問修課學生之前的數學學習經驗, 大部分學生對於數學的感受都是敬而遠之, 甚至在問

1.1 一般檢驗實驗室 1.2 生物化學實驗室 1.3 微生物實驗室 1.4 輸血醫學實驗室 1.5 外科病理實驗室 1.6 一般病理實驗室 1.7 細胞病理實驗室 1.8 分子病理實驗室 2 內科部. 2.1 感染科實驗室

馬可夫鏈對中學生來說是一個不太好接受的觀念, 現行的高三下課本理科數學只有一個例 題, 講來講去學生是一頭霧水的多, 能夠徹底明白的實在是少而又少。 教這一節之前若能對樹形

實感深獲我心, 中學生在利用數學歸納法時, 高中教師體會的十分清楚, 不會作時就 「數學 歸納」 也就是 「不會胡扯法」。 這一題自然組 的學生呈現兩極化的反應, 會的只是寫的時 間,

(二) 從現象中找尋規律的數學家。 這些 數學家或從事數據實驗, 或在自然和社會現 象中發掘值得研 究的問題, 憑藉美和經驗把 其中 精要抽出來, 作有意義的猜測。 如 Gauss

自然科的學習以探究教育為主,在實驗操作及科學驗證的過程中,非常注重

因此, 數學歷史作為考察數學教學有效性的一個重要視角, 長期以來一直受到數學教育家 們的普遍關注, 我們從眾多教育取向的數學史研究 (如 Cajori, 1917; Kline, 1958; Hallerberg 等, 1969; Kline,