二階遞迴數列探討
吳羽倫
宜蘭高中
Abstract
This subject is mainly to study a special type of doubly recursive sequences simi- lar to the following one:
An=AAn−1+An−An−1, A1=A2=1, n∈N≥3,
which is known as the Hofstadter-Conway $10000 sequence. It is doubly recursive since the indices on the right hand side depend not just on n but also on An−1. An internet search shows that most of the earlier studies on this subject rely heavily on the explicit form of the particular chosen sequence, therefore I want to search for a method which may possibly be applied to more general doubly recursive sequences.
摘
摘摘要要要: 這篇作品主要是研究二階遞迴數列, 二階遞迴數列的型式如下:
An=AAn−1+An−An−1, A1=A2=1, n∈N≥3.
這是其中一個二階遞迴數列 (Hofstadter-Conway $10000 sequence), 從這個式子可以 看到足碼的部分除了參照 n 值還必須參照 An的值, 因此大大加深了求出數列一般項 的困難度. 透過網路搜尋而得到的資料中, 我發現他們都是各自討論一個特定的數列, 根據數列獨特的性質研究的. 因此這篇作品的目的是希望能找出一個可以泛用在多個 二階遞迴數列上的研究方法.
1 研 研 研究 究 究簡 簡 簡介 介 介
為了研究二階遞迴的性質, 我總共討論了三個二階遞迴數列:
二階費氏數列 (自創數列)
An
=
An−An−1+
An−1−An−2, A1=
A2=
1, n∈ N ≥
3.Hofstadter-Conway $10000 sequence
An
=
AAn−1+
An−An−1, A1=
A2=
1, n∈ N ≥
3.Hofstadter G-Sequence
Gn
=
n−
GGn−1, G0=
0, n∈ N.
二階遞迴數列與一般遞迴數列最大的不同之處在於足碼的部分, 一般的遞迴數列例如 An
=
An−1+
An−2的足碼部分單純是 n 的函數, 因此可以直接參照 An−1和 An−2(第 n−
1和第 n−
2項) 的值;而二階遞迴數列例如 An=
AAn−1+
An−An−1 的足碼部分是 n與 An−1的函數, 要先找出 An−1和 n−
An−1的值, 才能再參照 AAn−1 和 An−An−1 (第 An−1和第 n−
An−1項). 這樣的規則使得一般項的解法無法像一般的遞迴數列一樣, 直接 從前後兩項的關係求得:An
=
2An−1+
1⇒ (
An+
1) =
2(
An−1+
1) ⇒
可利用乘法找出一般項,An
=
AAn−1+
An−An−1⇒
無法直接從確定足碼的值, 因此找不出相鄰兩項的關係.但是第三項跟第二項的足碼的差距可以從第二項以及第一項的差距取得, 這個概念告 訴我, 數列的值是從足碼部分影響的, 而且還是某個範圍影響某個範圍再影響另一個範圍
· · ·
依此類推.於是我從足碼部分開始研究, 發現了項數之間影響的方式是以出現次數來影響的, 出現 次數是指某項的值總共會在數列中出現幾次, 而影響的範圍則隨著數列的不同而改變.
接下來只要把出現次數根據影響的範圍分組, 每一組之間會有一定的關係, 所以可以把 這個關係看成是出現次數之間的「遞迴關係」, 進而討論出出現次數每一組之間的表示 法, 再根據出現次數一個很重要的意義: 在出現次數排列中, 各個數字的總和為 n 值;數 字個數即為 An 的值. 我只要把 n 改寫成出現次數的表示方法, 再改寫成 An的值, 就可以 得到從 n 到 An項的一般項了.
而因為這三個數列所使用的研究方法都是差不多的, 因此以研究得最完整的 Hofs- tadter G-Sequence為例子, 再指出其他三個數列與此數列的比較.
2 研 研 研究 究 究 內 內 內容 容 容
2.1 G-Sequence
2.1.1
數數數列列列簡簡簡介介介Gn
=
n−
GGn−1, n∈ N, G
0=
0,以上是 Hofstadter G-Sequence 的式子, 而表格則是用 Excel 列出 n 與 Gn的值, 方便之後 參照.
n Gn n Gn n Gn
1 1 21 13 41 25
2 1 22 14 42 26
3 2 23 14 43 27
4 3 24 15 44 27
5 3 25 16 45 28
6 4 26 16 46 29
7 4 27 17 47 29
8 5 28 17 48 30
9 6 29 18 49 30
10 6 30 19 50 31
11 7 31 19 51 32
12 8 32 20 52 32
13 8 33 21 53 33
14 9 34 21 54 33
15 9 35 22 55 34
16 10 36 22 56 35
17 11 37 23 57 35
18 11 38 24 58 36
19 12 39 24 59 37
20 12 40 25 60 37
在開始探討之前, 先提出兩個重要的名詞:
1. 遞增數列: An
−
An−1=
0∨
1恆成立的數列就稱為遞增數列.2. 出現次數: 在遞增數列中, 若有 k 個 n 值使 An
=
n0,則 n0 的出現次數=
k, 簡記為 Bn0=
k.>
出現次數在遞增數列才有其意義, 若不是遞增數列, 則一個數字的出現次數無法被 確定, 例如 A4=
A5=
2且 A66=
2也不能確定 B2=
2, 因為不是遞增函數的情況下, 後面 還有可能再出現 An=
2 的情況.因為研究方法會利用到出現次數, 所以必須先證明 G-Sequence 是遞增函數:
1. 已知 G0
=
0:G1
=
1−
GG0=
1⇒
n≤
1 時, Gn−
Gn−1=
0∨
1 成立.2. 假設 n
≤
k∈ N 時 G
n−
Gn−1=
0∨
1恆成立.3. Gk+1
−
Gk=
1− (
GGk−
GGk−1).根據歸納法的假設, Gk
−
Gk−1=
0∨
1. 若 Gk=
Gk−1 則 Gk+1−
Gk=
1. 若 Gk=
Gk−1+
1,則因 Gk=
k−
GGk−1≤
k, 所以GGk
−
GGk−1=
0∨
1⇒
Gk+1−
Gk=
0∨
1.總結: Gk+1
−
Gk=
0∨
1⇒
n≤
k+
1 時, Gn−
Gn−1=
0∨
1恆成立. 根據數學歸納法, Gn−
Gn−1=
0∨
1恆成立.確定 G-Sequence 是遞增函數之後, 就可以利用出現次數來研究了. 首先在表格中可以 看到 Bn
≤
2,沒有看到任何一個數的出現次數是 3 以上的, 這個規律可以簡單的被證明:設 Gn−2
=
k−
1, Gn−1=
Gn=
k,則Gn+1
−
Gn=
1− (
GGn−
GGn−1) =
1− (
Gk−
Gk) =
1⇒
Bk=
2.從上面的證明可以知道一個數的出現次數不可能超過 2, 而因為出現次數
=
1∨
2, 因此數 列的規則可以分為兩個規則討論:1. Bk
=
1設 Gn−1
=
k−
1, Gn=
k, Gn+1=
k+
1,以及 Gm−1=
n, Gm=
n+
1:Gm+1
−
Gm=
1− (
Gn+1−
Gn) =
1− [(
k+
1) − (
k)] =
0⇒
Bn+1=
2.2. Bk
=
2設 Gn−1
=
k−
1, Gn=
Gn+1=
k, Gn+2=
k+
1,以及 Gm−1=
n, Gm=
n+
1:Gm+1
−
Gm=
1− (
Gn+1−
Gn) =
1− [(
k) − (
k)] =
1⇒
Gm+1=
n+
2, Gm+2−
Gm+1=
1− (
Gn+2−
Gn+1) =
1− [(
k+
1) − (
k)] =
0⇒
Bn+1=
1, Bn+2=
2.這兩個規則可以解釋成:
1. 一個出現次數為 1 的數會讓往後一個未被決定出現次數的數的出現次數為 2.
2. 一個出現次數為 2 的數會讓往後兩個未被決定出現次數的數的出現次數分別為 1 和 2.
根據這兩個規則, 從 0 的出現次數開始排:
1. 已知 B0
=
1⇒
B1=
2.2. 已知 B1
=
2⇒
B2=
1且 B3=
2.3. 已知 B2
=
1且 B3=
2⇒
B3=
2, B4=
1以及 B5=
2.然後再分排表示:
1
(
1, 0, 1, 1)
2(
0, 1, 1, 2)
12(
1, 1, 2, 3)
212(
1, 2, 3, 5)
12212(
2, 3, 5, 8)
21212212
· · · (
出現次數分層排列)
而右邊的數對則是 (1 的個數, 2 的個數, 數字個數, 數字總合), 可以發現, 數對具有費氏 數列的性質, 令 αn 對費氏數列的第 n 項, Dn 為出現次數排列的第 n 排, 則 Dn的數對為
(
an−2, an−1, an, an+1)
. 原因跟出現次數的產生規則有關:1. 一個出現次數為 1 的數會讓往後一個未被決定出現次數的數的出現次數為 2.
2. 一個出現次數為 2 的數會讓往後兩個未被決定出現次數的數的出現次數分別為 1 和 2.
因此,若 Dn−1的數對為
(
a, b, c, d)
,則 Dn的數對為(
b, a+
b, a+
2b, 2a+
3b)
, 正好與 費氏數列的性質一樣.出現次數排列還有一個性質: Dn
=
Dn−2+
Dn−1, 例如 D5= (
12212) =
D3+
D4= (
12) + (
212)
, 這個很容易就能看出來, 因此不詳述.而根據出現次數的定義, 可以得知 Gn
=
h,則 ∑hk=0
Bk
≥
n≥
h−1∑k=0
Bk, 而在出現次數排列 中, n 跟 Gn 所對應的是 (數字個數, 數字總合), 因此只要利用出現次數排列就可以找出 n 跟 Gn的轉換方式了.
例如 n
=
12, 根據出現次數排列, 可以知道 n 的位置:1 2 12 212 1 2 212
>
n=
12 時要找第 13 的位置, 因為數列是從 G0開始的. n=
12 的位置在第 9 個數字 上, 因此得知 G12=
8, 用費氏數列表示則是:12
+
1= (
a1+1+
a2+1+
a3+1+
a4+1) + (
a1+1) +
1.第一個括號表示 n 在第 5 排, 第二個括號則是利用了 Dn
=
Dn−2+
Dn−1的性質, 最後的 1則是因為 n 在這個位置上的第一個位置G12
+
1= (
a1+
a2+
a3+
a4) + (
a1) +
1,這裡則是利用了 (數字個數, 數字總合) 的性質進行轉換, 就能得到 Gn的值了.
原本的括號是具有其意義的, 可是這樣子並不方便, 因為我們不可能一直照著出現次數 排列做, 因此利用 an
=
an−1+
an−2以及任何正整數都可以用 n=
ak1+
ak2+
ak3+ · · · +
aki(
k1>
k2>
k3> · · · >
ki)
表示, 因此上述的兩個式子可以變成:n
=
ak1+
ak2+
ak3+ · · · +
aki(
k1>
k2>
k3> · · · >
ki>
1)
, Gn=
ak1−1+
ak2−1+
ak3−1+ · · · +
aki−1.因為 ki
−
1∈ N, 因此 k
i>
1 . 再用剛剛的 n=
12 當例子:12
=
a6+
a4+
a2⇒
G12=
a5+
a3+
a1=
5+
2+
1=
8.再舉一個例子:
27
=
a8+
a5+
a2⇒
G27=
a7+
a4+
a1=
13+
3+
1=
17, 對照表格都是正確的.公式修正:
費氏數列具有這樣的性質: an+1
= φa
n+ (
1− √
52
)
n, 其中 φ=
1+ √
5 2 . 因此可以把公式改寫成:n
=
ak1+
ak2+
ak3+ · · · +
aki= φ (
ak1−1+
ak2−1+
ak3−1+ · · · +
aki−1) +
h(
1− √
5
2
)
k1−1+ (
1− √
52
)
k2−1+ (
1− √
52
)
k3−1+ · · · + (
1− √
5 2)
ki−1i= φG
n+
t.其中 t
= (
1−√5
2
)
k1−1+ (
1−√5
2
)
k2−1+ (
1−√5
2
)
k3−1+ · · · + (
1−√5 2
)
ki−1. 而 t 的最大值= (
1− √
52
)
2+ (
1− √
52
)
4+ (
1− √
52
)
6+ · · · < (
1− √
52
)
2×
1 1− (
1−√5 2
)
2=
√
5−
1 2 , t 的最小值= (
1− √
52
)
1+ (
1− √
52
)
3+ (
1− √
52
)
5+ · · · < (
1− √
52
) ×
1 1− (
1−√ 5 2
)
2= −
1.因此
√ 5−1
2
>
t> −
1⇒ φ >
t+
1>
0⇒
ht+1φ i=
0 (高斯記號), 代回剛剛的公式 n+
1= φG
n+ (
t+
1) ⇒
n+
1φ
=
Gn, 最後, 得到了一個很精簡的公式:Gn
=
n+
1φ
.
2.2 二 二 二階 階 階費 費 費氏 氏 氏數 數 數 列 列 列
An
=
An−An−1+
An−1−An−2, A1=
A2=
1這是二階費氏數列的公式. 為什麼我要叫它二階費氏數列? 設 αn
=
n−
An−1,則二階費 氏數列可以改寫成: An=
Aαn+
Aαn−1, 形式與費氏數列頗為類似.先放 n 與 An的表格, 方便之後對照:
n An n An n An n An
1 1 21 12 41 22 61 32
2 1 22 12 42 22 62 32
3 2 23 12 43 23 63 32
4 2 24 13 44 24 64 32
5 3 25 14 45 24 65 33
6 4 26 14 46 24 66 34
7 4 27 15 47 24 67 34
8 4 28 16 48 25 68 35
9 5 29 16 49 26 69 36
10 6 30 16 50 26 70 36
11 6 31 16 51 27 71 36
12 7 32 16 52 28 72 37
13 8 33 17 53 28 73 38
14 8 34 18 54 28 74 38
15 8 35 18 55 29 75 39
16 8 36 19 56 30 76 40
17 9 37 20 57 30 77 40
18 10 38 20 58 31 78 40
19 10 39 20 59 32 79 40
20 11 40 21 60 32 80 41
這也是一個遞增函數 (跟G-Sequence一樣利用歸納法即可證明), 因此
α
n− α
n−1= (
n−
An−1) − (
n−
1−
An−2) =
1− (
An−1−
An−2) =
0∨
1⇒
Aαn−
Aαn−1=
0∨
1, 又因為 An=
Aαn+
Aαn−1, 得知 Aαn=
An+
12
=
An+1 2.
出現次數:
因為二階費氏數列的出現次數可以
≥
3, 處理的方式與 G-Sequence 不同, 可是一樣能 用假設的方式導出:1. 令 An
=
2k, An+1=
2k+
1,則α
n+2− α
n+1=
1−
1=
0⇒
An+2=
2Aαn+1=
2 2k+
2 2
=
2k+
2.結論:上述的情況解釋了 B2k+1
=
1.2.
α
n+3− α
n+2=
1− (
An+2−
An+1) =
0⇒
Aαn+3=
Aαn+2=
2k+
3 2
=
k+
1⇒
An+3=
2k+
2.結論: B2k
≥
2. (項數為偶數的出現次數至少為 2) 3. 令 An=
2k−
1, An=
2k且 B2k=
n0:n n
−
1 n n+
1 n+
2 n+
3· · ·
n+
n0 n+
n0+
1 An 2k−
2 2k−
1 2k 2k 2k 2k 2k+
1Aαn k
−
1 k k k k k k+
1α
n l l+
1 l+
1 l+
1 l+
2 l+
n0−
1 l+
n0從表格中可以看到 B2k
=
n0時,Al+1
=
Al+2=
Al+3= · · · =
Al+n0−1=
k⇒
B−
k= (
l+
n0−
1) − (
l+
1) +
1=
n0−
1=
B2k−
1.也就是
BAn
=
BAαn+
1; B2k=
Bk+
1這個式子也就說明了 B2k(2l−1)
=
B2k−1(2l−1)+
1=
B2k−2(2l−1)+
2= · · · =
B2l−1+
k=
k+
1, 對照表格, 證實這個結果是正確的.而 B2k(2l−1)這個規律可以幫我們找出 n 到 An的轉換方式, 因為出現次數與 2 的冪次
有關係, 使得出現次數呈現一種對稱關係:
圖 1
根據這種對稱關係, 可以知道下列的性質:
前 2h項中, A2h−1+n
−
An+1=
2h−2, 式子中的 An+1是因為 B1=
2 而不是用 B2k(2l−1)=
k+
1 所導出的 1.再加上 A2k
=
2k−1(可以利用 An=
h 時, ∑hk=1
Bk
≥
n≥
h−1∑k=1
Bk
+
1 的性質導出) 即可直 接從 n 導出 An了:例如 n
=
27:A27
=
A27−16+1+
8=
A12+
8=
A12−8+1+
12=
A5−4+1+
14=
A2+
14=
15, 雖然這樣可以直接從 n 找出 An, 只是如果 n 的值比較大的時候計算較為繁複.公式修正:
令 a1
=
n, ah=
ah−1−
2[log2ah−1]+
1 (ah−1的質因數不能只有 2), 則 Aah−1=
Aah+
2[log2ah−1]−1.其實這是一樣的意思, 只是用高斯記號來表達限制而已, 而 ah−1的質因數不能只有 2 的原 因則是當 ah−1
=
2k時就沒有必要再算下去了.例如 n
=
27,則 a2=
27−
2[log227]+
1=
27−
24+
1=
12, 所以 A27=
A12+
8.1. a1
=
n, ah=
ah−1−
2[log2ah−1]+
1, 設 ah=
2k:a1
=
n, a2=
a1−
2[log2a1]+
1, a3=
a2−
2[log2a2]=
1,· · ·
這是一般的遞迴數列, 所以過程不再詳述:ah
=
n− (
2[log2a1]+
2[log2a2]+ · · · +
2[log2ah−1]) + (
h−
1)
.2. Aa2
=
Aa1+
2[log2a1]−1, Aa3=
Aa2+
2[log2a2]−1, Aa4=
Aa3+
2[log2a3]−1,· · ·
, Aah=
Aah−1+
2[log2ah−1]−1.這也是一般的遞迴數列:
Aa1
=
Aah+
12
(
2[log2a1]+
2[log2a2]+ · · · +
2[log2ah−1]) − (
h−
1)
. 3. 由於 Aa1=
An, Aah=
A2k=
2k−1=
a2h, 聯立就能得到 An=
n+h−12 .再用剛剛的 n
=
27 當例子:a1
=
27, a2=
12, a3=
5, a4=
2=
21⇒
A27=
27+
4−
1 2=
15.雖然多了一個變數 h, 但是從 n 找出 An的算法顯然簡單很多.
2.3 Conway 數 數 數 列 列 列
An
=
AAn−1+
An−An−1, A1=
A2=
1Conway 數列跟二階費氏數列的形式差不多, 只是 Conway 數列中的一個子項在二階遞 迴數列中並沒有出現.
設 βn
=
An−1:An
=
Aαn+
Aαn−1 (二階費氏數列) An=
Aαn+
Aβn (Conway 數列)至於探討的方法也是一樣, 假設 An
=
k,以及子項的出現次數為何時對 An附近的值有 何影響等, 都與 G-Sequence 以及二階費氏數列如出一轍.在這裡先列出 n 與 An的表格:
n An n An n An n An
1 1 21 12 41 24 61 32
2 1 22 13 42 24 62 32
3 2 23 14 43 25 63 32
4 2 24 14 44 26 64 32
5 3 25 15 45 26 65 33
6 4 26 15 46 27 66 34
7 4 27 15 47 27 67 35
8 4 28 16 48 27 68 36
9 5 29 16 49 28 69 37
10 6 30 16 50 29 70 38
11 7 31 16 51 29 71 38
12 7 32 16 52 30 72 39
13 8 33 17 53 30 73 40
14 8 34 18 54 30 74 41
15 8 35 19 55 31 75 42
16 8 36 20 56 31 76 42
17 9 37 21 57 31 77 43
18 10 38 21 58 31 78 44
19 11 39 22 59 32 79 45
20 12 40 23 60 32 80 45
經由對 αn 與 βn的性質探討 (過程與二階費氏數列的一樣, 因此不加詳述)可以得知以 下三個規則:
1. BAn
=
BAαn+
1.2. 當連續 n0個項數的出現次數是 1 的時候, β 子項也會有連續 n0
−
1個子項數的出現 次數是 1.3. 如果 β子項數的出現次數為 n0,則會有連續 n0
−
1個項數的出現次數≥
2.利用這三個性質排列出現次數:
D1
=
2D2的部分則是看 D1:首先 D1的第一個數字不是 1, 所以根據第二點 D2的第 1 個數字是 1;再來, D1接下來的數字是 2, 代表 D2接下來會有 1 個
≥
2 的數字, 而這個數字是多少?因為它是第一個
≥
2 的數字所以配 D1的第一個數字+
1=
3, 所以 D2=
13.再利用圖示: D1
=
2◦•數字下方的小白點是指 1, 而小黑點則是指不是 1 的數字.
為了方便了解, 我再列出幾個數列:
D2
=
2◦•
= ◦• =
13 D3=
1◦ 3
◦••
= ◦ ◦ •• =
1124 D4=
1◦1
◦ 2
◦• 4
◦•••
= ◦ ◦ ◦ • ◦ • •• =
11121235 D5→
1◦1
◦1
◦ 2
◦•1
◦ 2
◦• 3
◦•• 5
◦••••
→ ◦ ◦ ◦ ◦ • ◦ ◦ • ◦ • • ◦ • • •• →
1111211212312346· · ·
觀察出現次數分層排列時, 利用小白點與小黑點, 可以知道哪些出現次數影響哪些出 現次數, 數字底下小白點與小黑點的數目代表這一個數字會產生幾個出現次數, 例如◦••3
→ ◦ • • →
123, 而每一層最右邊的數字會產生兩個群組, 例如第二層的 3 : 3◦••→
1◦ 2◦•
+
4◦••• , 因為根據出現次數的推論, 每一層最右邊的出現次數必須
+
1.◦•2
!!
1◦
◦••3
%%
1◦
1◦ 2
◦•
◦•••4
&&
1◦
1◦1
◦ 2
◦•
1◦ 2
◦• 3
◦••
◦••••5
$$
1◦ 1◦1◦1◦◦•2 1◦1◦◦•2 1◦◦•2 3
◦•• 1◦◦•2 3
◦••◦•••4 6
◦•••••
圖 2 而每一個群組都可以用一個組合 (C) 表示, 例如
1◦ 2
◦• 3
◦• : 1
+
2+
3=
∑
3 k=1k
=
3×
4 2=
C42 1◦1◦ 2
◦•1
◦ 2
◦• 3
◦•• : 1
+ (
1+
2) = (
1+
2+
3) =
C22+
C32+
C24=
C53而 1◦ 2
◦• 3
◦•• 影響下一層的 1
◦1
◦ 2
◦•1
◦ 2
◦• 3
◦••, 所以代表 C42造成下一層的 C53, 每一個數字 n 都 會造成下一層的 ∑n
k=1
k
=
∑nk=1
C1k
=
Cn+12 ,再造成下一層的 ∑nk=1
∑k h=1
h
=
∑nk=1
C2k+1
=
C3n+2· · ·
依此類推, 因此出現次數分層排列又可以寫成這個樣子C21
⇒
C22+
C31,這裡比較特別, 因為 C21是該層最右邊的數字, 所以下一層是 2
→
1+
3=
C22+
C13而非 2→
1+
2→
C32.第三層: C22
+ (
C13) ⇒
C33+ (
C32+
C41)
,同理, 最右邊的 C13是造成下一層的 C23+
C14. 第四層: C33+
C23+ (
C41) ⇒
C44+
C34+ (
C42+
C15)
依此類推, 得到:
Dn
= (
Cnn+
Cn−1n+
Cnn−2+
Cnn−3+ · · · +
Cn2) +
C1n+1. 根據這個式子, 就可以把 n 轉換成 An了:◦•2
!!
1◦
◦••3
%%
1◦
1◦ 2
◦•
◦•••4
&&
1◦
1◦1
◦ 2
◦•
1◦ 2
◦• 3
◦••
◦••••5
$$
1◦ 1
◦1
◦1
◦ 2
◦• 1
◦1
◦ 2
◦•1
◦ 2
◦• 3
◦•• 1
◦ 2
◦• 3
◦•• 4
◦••• 6
◦•••••
圖 3
1
1
1
1
2
1
1
3
3
1
1 4 6 4 1
圖 4
圖 4 是計算出現次數分層的群組內的數字個數, 這些數字代表項數, 也就是 An 的值, 因為上圖代表的是每一個項數的出現次數, 根據
A
(n∑−1
k=1
Bk)+1
=
A(n∑−1
k=1
Bk)+2
= · · · =
A(∑n
k=1
Bk)
=
n 從 An到 n 的公式, 逆推:∑
l k=1Bk
≥
n>
l−1
∑
k=1
Bk, 則 An
=
l.而數字個數圖也可以用組合 (C) 表示:
C10
⇒
C11+
C02⇒
C22+
C12+
C30⇒
C33+
C32+
C31+
C04⇒ · · ·
把出現次數以及數字個數圖都用組合表示:C21 C10
C22
+
C13 C11+
C02 C33+
C23+
C14 C22+
C12+
C03 C44+
C34+
C24+
C15 C33+
C23+
C13+
C04 可以很清楚的了解:若出現次數
=
Ckn,則數字個數為 Cn−1k−1.接下來就要把 n 用組合表示了, 在證明的過程 中我用 n=
47 當例子, 如果直接用出現次數分層來找的話, 47 在紅字的位置上:2 13 1124 11121235
1111211212 3 12346
因為前四層的數字總和為 30 (注意, 出現次數分層是從 B2開始排, 所以前四層其實總共有 30
+
B1=
32項), 且前五層的數字總和為 62, 所以可以知道 47 在第五層的第 47−
25=
15 的位置:32
+
1111211212 3 12346 又Dn
= (
Cnn) +
Cn−1n+
Cn−1n+
Cnn−2+ · · · +
Cn2) +
C1n+1. 把剛剛的出現次數分層用群組表示:32
+ (
1) + (
1112) + (
11212 3) + (
1234) + (
6)
, 得出 47 在第三個群組, 也就是 C35的位 置上:32
+
C55+
C54+ (
11212 3)
, 又Cnk
=
Ck−1k−1+
Ck−1k+
Ck+1k−1+ · · · +
Ck−1n−1⇒
C35=
C22+
C32+
C24, 所以32
+
C55+
C54+ (
11212 3) =
32+
C55+
C54+ (
1) + (
12) + (
12 3)
=
32+
C55+
C54+
C22+
C23+ (
12 3)
. 再把 12 3 拆成 C11+
C21+
C31, 最後得到47
=
25+ (
C55+
C45) + (
C22+
C23) + (
C11+
C21) +
2,因為 47
>
25+ (
C55+
C54) + (
C22+
C23) + (
C11+
C12)
而 C13又不能再分解. (C13不能分解成 C00+
C10+
C02是因為之後要轉換成 An時這些組合會變成 C−1−1, C−10 以及 C−11 , 這是不可 能的情況) 所以把剩下的值擺到最右邊再利用數字總和轉換成數字個數的轉換法把 n 轉 換成 An:47
=
25+ (
C55+
C45) + (
C22+
C32) + (
C11+
C21) +
2⇒
A47=
24+ (
C44+
C43) + (
C11+
C12) + (
C00+
C10) +
1=
16+
5+
3+
2+
1=
27.對照表格, 這是正確答案, 類推上面的推導過程, 得出:
n
=
2k+ (
Ckk+
Ckk−1+
Ck−1k+ · · · +
Ckk−k1) + (
Ck−kk−k1−21−2
+
Ck−kk−k1−11−2
+
Ck−kk−k11−2
+ · · · +
Ckk−k21−2
) + (
Ck−kk−k1−31−3
+
Ck−kk−k1−21−3
+
Ck−kk−k1−11−3
+ · · · +
Ck−kk31−3
) + (
Ck−kk−k1−41−4
+
Ck−kk−k1−31−4
+
Ck−kk−k1−21−4
+ · · · +
Ck−kk41−4
) + · · · + (
C11+
C21+
C31+ · · · +
C1k0) +
t=
2k+
k1 l=0
∑
Ckk−l
+
k2 l=0
∑
Ck−kk−k1−2+l
1−2
+
k3 l=0
∑
Ck−kk−k1−3+l
1−3
+ · · · +
k0 l=0
∑
C1+l1
+
t,t 是多出來的部份, 例如:
25
+ (
C55+
C54) + (
C22+
C32) + (
C11+
C21) >
47>
25+ (
C55+
C54) + (
C22+
C32) + (
C11+
C21)
而 47− (
25+ (
C55+
C45) + (
C22+
C23) + (
C11+
C12)) =
2, 所以 47=
25+ (
C55+
C45) + (
C22+
C23) + (
C11+
C12) +
2,則An
=
2k−1+
k1 l=0
∑
Ck−1−lk−1
+
k2 l=0
∑
Ck−kk−k1−3+l
1−3
+
k3 l=0
∑
Ck−kk−k1−4+l
1−4
+ · · · +
k0 l=0
∑
C00+l
+
2t+
1 t+
2,
其中h
2t+1
t+2i 只是用來判別 t 是否
=
0 的,若 t=
0⇒
h2t+1t+2i=
0,若 t∈ N ⇒
2t+
1t
+
2
=
2
−
3t
+
2
=
1.例如 n
=
76:79
=
26+ (
C66+
C56) + (
C33+
C43) + (
C22) + (
C11) +
1⇒
A79=
25+ (
C55+
C54) + (
C22+
C32) + (
C11) + (
C00) +
1=
45.3 未 未 未來 來 來展 展 展望 望 望
G-Sequence,二階費氏數列以及 Conway 數列都可以經由我想出的研究方法找出一般項 的公式, 證明了這個方法再研究二階遞迴數列的確有相當的幫助. 然而, 在研究過程中最 令人驚喜的是這三個數列看似雜亂無章, 卻各自包含了費氏數列, 2 進位法以及排列組合 這麼漂亮的性質, 讓我覺得研究這些數列確實得到了回報. 可惜的是, 除了 G-Sequence 成 功的把一般項找法簡化成 Gn
=
hn+1φ i 以外, 二階費氏數列以及 Conway 數列的一般項找 法並沒有成功的簡化成更簡單的例子. 希望以後能把他們的公式精簡到能與 G-Sequence 相提並論.
參 參 參考 考 考文 文 文獻 獻 獻
[1] http://mathworld.wolfram.com/Hofstadter-Conway10000-DollarSequence.
html
[2] http://mathworld.wolfram.com/HofstadterG-Sequence.html
[3] http://activity.ntsec.gov.tw/activity/race-1/47/senior/040406.pdf