數列到底是甚麼
數列不只是用逗號排列的一串數。嚴格地說,數列是一個函數:輸入是正整數,
輸出是實數。輸入指出項的位置,輸出就是該位置上的數值。
定義
實數數列
實數數列是一個函數
a:Z+→R.我們通常不寫 a(n),而寫 an;整個數列記作 {an}。這裏起始指標為 n=1,定義中的通項公式適用於所有整數 n≥1。
這個定義很重要。它解釋了為何同一批數若次序不同,就成為不同數列;也解釋
了為何一個通項公式必須說明每個正整數 n 對應哪一個值。
例題
讀通項
若 an=(−1)n,則
a1=−1,a2=1,a3=−1,a4=1.若 bn=2n−1,則
b1=1,b2=2,b3=4,b4=8.兩者都是數列,因為每個正整數 n 都決定唯一一個實數。
思考檢查
本章中,數列形式上是由哪個集合映到哪個集合的函數?
解答 · 答案
它是函數 a:Z+→R,即每個正整數索引對應一個實數項。
由規律尋找通項
有限列表只能提示規律;通項要描述第 n 項,而不是只描述頭幾項。如果沒有指定規則,有限個初始值永遠不能唯一確定無限數列:保持列出的各項不變,仍可改變後面某一項。在尋找規律的題目中,必須把所採用的延續方式明確寫成規則。
例題
交替出現的 1 與 0
數列
1,0,1,0,…在 n 為奇數時等於 1,在 n 為偶數時等於 0。一個簡潔公式是
an=21+(−1)n−1.
例題
偶因子與奇因子的乘積
乘積
2⋅4⋅6⋯(2n)的第 k 個因子是 2k,所以
2⋅4⋯(2n)=k=1∏n2k=2nn!.同理,
1⋅3⋅5⋯(2n−1)=2nn!(2n)!.原因是 (2n)! 包含由 1 到 2n 的所有因子;除去偶因子部分
2⋅4⋯(2n)=2nn! 後,餘下的就是奇因子部分。
例題
由反覆求導得到的數列
章節亦用 f(x)=sinx 說明:數列不一定先來自普通的數字列表。定義
an=f(n)(0),其中 f(n) 表示第 n 次導數。導數會循環:
sinx,cosx,−sinx,−cosx,sinx,…所以
a1=1,a2=0,a3=−1,a4=0,並且同一個四項模式不斷重複。一個簡潔通項是
an=cos(2(n−1)π).這個例子重要之處,是把「數列」與「簡單代數規律」分開。數列仍然是索引
n 的函數;只是它的值先由微積分操作產生,再在 0 代入。
常見錯誤
未固定索引時,規律還不是定義
當指標從 n=1 開始時,an=2n 給出 2,4,8,...,而 an=2n−1 給出 1,2,4,...。它們是不同數列,不能當作同一個列表的兩種寫法。把起始指標代入公式,是檢查數列是否錯位的直接方法。
遞推定義
有些數列較適合用「如何由前面的項得到下一項」來定義。顯式定義直接由指標計算該項,遞推定義則說明已知的項如何決定後面的項。一階規則需要一個起始值,使用前兩項的規則一般需要兩個起始值;規則本身並沒有選定這些數值。只要初始資料足夠,遞推式就可以完整定義數列,不必先找到方便的封閉公式。
定義
遞推數列
遞推數列是指某些項由一個或多個前項定義,同時給出足夠初始值讓過程開始。
例如
a1=4,an+1=2an+1
給出
a2=9,a3=19,a4=39.
這條遞推式只有在前一項已知時,才可決定下一項。
對這條特定遞推式,也可以求出封閉公式。兩邊加 1,並設 bn=an+1。
則
bn+1=an+1+1=2an+2=2(an+1)=2bn.
由於 b1=a1+1=5,轉換後的數列是等比數列:
bn=5⋅2n−1.
因此
an=bn−1=5⋅2n−1−1.
重點不是每條遞推式都會變成等比數列,而是遇到仿射遞推時,可嘗試用變量轉換
消去常數項。
概念視角算法
同一個數列,求項的兩種方式
顯式公式 an=5⋅2n−1−1 以正整數 n 為輸入。要求 a4,直接代入
n=4,便得到 39。遞推描述則從 a1=4 開始,反覆應用
x↦2x+1,依次生成 4,9,19,39。它說明如何由當前值產生下一個值;
初始值也是這個描述的一部分。
這是同一個數列的兩種描述,並非兩種不同的數。上面的推導把逐步生成的過程
與顯式公式聯繫起來,對每個整數 n≥1 都成立。僅僅驗證前四項相同,
不足以建立這種聯繫。要求指定指標處的一項時,可用顯式觀點;要追蹤連續
變化時,可用遞推觀點。存在生成規則,本身並不意味著已經得到封閉公式。
定理
Recursion Theorem
設 X 是集合,b∈X,且 f:X→X 是函數。則存在唯一函數
a:Z+→X 滿足
a(1)=b,a(n+1)=f(a(n))對所有 n∈Z+ 成立。
這個定理說明為何「第一項加上一條下一項規則」確實定義一個數列。因為
f 把 X 映回 X,過程不會離開指定集合;唯一性則保證不會有另一個不同
數列同時滿足相同起點與相同遞推規則。
存在性表示逐步構造會在每個正整數指標處產生一個值。唯一性可以逐步理解:兩個候選數列在第一項相同;只要某一項相同,對它們應用同一個函數,下一項就必須相同。要求 f:X→X 很重要,因為每一步的輸出必須仍是下一步可以使用的輸入,過程才能持續進行。
例題
把遞推式翻譯成定理資料
對
a1=1,an+1=an2+1,可取 X=R、b=1、f(x)=x2+1。Recursion Theorem 保證存在唯一
實數數列滿足此規則。前幾項為
1,2,5,26,…即使未必有簡單封閉公式,數列仍然已被完整定義。
Fibonacci 數列與有序對
Fibonacci 數列由兩個起始值和一條使用前兩項的規則定義:
F1=F2=1,Fn+2=Fn+1+Fn.
若要配合 Recursion Theorem,可把相鄰兩項包裝成一個有序對:
a(n)=(Fn,Fn+1).
下一個有序對由函數
f(x,y)=(y,x+y)
給出。因此二階遞推也可看成在 R2 上的一階遞推。
完整的定理資料是 X=R2、b=(1,1) 與 f(x,y)=(y,x+y)。這個函數總是輸出實數有序對,第二坐標保存下一步所需的資訊。從 (1,1) 出發,依次得到 (1,2)、(2,3)。因此定理先保證有序對數列的唯一性,進而保證 Fibonacci 各項的唯一性。
定理
Fibonacci 數的 Binet 公式
令
ϕ=21+5,ψ=21−5.則對每個正整數 n,
Fn=ϕ−ψϕn−ψn.
通常證明方法是檢查右邊有相同的首兩項,並滿足相同遞推式。關鍵恆等式是
ϕ2=ϕ+1 與 ψ2=ψ+1。
把這個檢查寫成一般遞推題可重用的形式。定義
Bn=ϕ−ψϕn−ψn.
分母 ϕ−ψ=5=0,所以每個正整數指標都對應一個有定義的實數。僅僅驗證遞推式,還不能認定這就是 Fibonacci 數列;還必須核對兩個初始值。
首先,
B1=1,B2=ϕ−ψϕ2−ψ2=ϕ+ψ=1.
其次,因為 ϕ 與 ψ 都滿足 t2=t+1,所以
ϕn+2=ϕn+1+ϕn,ψn+2=ψn+1+ψn.
把第二條式從第一條式相減,再除以 ϕ−ψ,得到
Bn+2=Bn+1+Bn.
因此 {Bn} 與 Fibonacci 數列有相同首兩項與相同遞推規則。由遞推定義的
唯一性,對每個正整數 n 都有 Bn=Fn。
等差數列與求和
定義
等差數列
若存在常數 d 使得
an+1−an=d對所有 n∈Z+ 成立,則 {an} 是等差數列。d 稱為公差。
從首項到第 n 項,經過了 n−1 次增量,每次都等於 d。把這些相鄰差相加,得到 an−a1=(n−1)d。因此,若 a=a1,則
an=a+(n−1)d.
前 n 項和為
sn=k=1∑nak=2n[2a+(n−1)d]=2n(a1+an).
為了同時解釋奇數項與偶數項的配對,把同一個和正向、反向各寫一次,再逐列相加:
snsn2sn=a1+a2+⋯+an,=an+an−1+⋯+a1,=n(a1+an).
每列的兩個指標之和為 n+1,所以每列的項之和都是 a1+an。若 n 為偶數,原來各項可以組成不同的首尾對;若 n 為奇數,中間項等於 a1+an 的一半,在兩個副本相加時恰好與自身配對。無論奇偶,始終都有 n 列,因此最後除以二是合理的。
例題
由總和反推等差數列
假設公差 d=3/2,且前 15 項和為 240。則
240=215[2a+14⋅23],解得 a=5.5。
若前 k 項和為 361,則
2k[2(5.5)+(k−1)23]=361,化簡為
3k2+19k−1444=0.正整數解為 k=19;另一根不合題意,因為項數不能為負。
思考檢查
首項為 a、公差為 d 的等差數列,前 n 項和是甚麼?
解答 · 答案
sn=2n[2a+(n−1)d].
等比數列與求和
定義
等比數列
若非零數列 {bn} 存在非零常數 r 使得
bnbn+1=r對所有 n∈Z+ 成立,則 {bn} 是等比數列。r 稱為公比。
若 b=b1,則
bn=brn−1.
當 r=1 時,有限等比和為
k=1∑nbrk−1=bk=0∑n−1rk=b1−r1−rn=br−1rn−1.
令 Gn=1+r+⋯+rn−1。乘以 r 會把所有指數提高一,得到 rGn=r+r2+⋯+rn。相減時,從 r 到 rn−1 的各項全部抵消,只剩第一行的首項與第二行的末項,所以
(1−r)(1+r+⋯+rn−1)=1−rn.
若 r=1,每項都是 b,所以和是 bn,不能除以 1−r。這裏討論的都是正整數 n 對應的有限和,抵消過程不需要任何關於無限收斂的假設。
邊讀邊試
比較遞推與顯式數列描述
等差、等比與仿射遞推都以初值和前一項決定下一項。展開遞推可得到顯式公式,並可為等差及等比數列推導有限和公式。
關鍵關係
a_1=5.5, a_{n+1}=a_n+1.5
相鄰項差保持不變;求和時可把首項與尾項配對。
| n | a_n | 部分和 s_n |
|---|
| 1 | 5.5 | 5.5 |
| 2 | 7.0 | 12.5 |
| 3 | 8.5 | 21.0 |
| 4 | 10.0 | 31.0 |
| 5 | 11.5 | 42.5 |
| 6 | 13.0 | 55.5 |
思考檢查
為何等比和公式在 r=1 時要另作處理?
解答 · 答案
公式 b(1−rn)/(1−r) 會除以 1−r,當 r=1 時分母為零。此時每項都是
b,所以和是 bn。
等差等比混合求和
一個有用的總結練習把等差因子與等比因子混合。設
xk=(a+kd)brk,k=0,1,2,…,
其中 r=0 且 r=1。對整數 n≥1,定義
Sn=k=0∑n−1xk=k=0∑n−1(a+kd)brk.
仍然使用相減法,但須仔細追蹤變化的係數。先分出邊界項,再把內部的同次冪對齊:
SnrSn=ab+k=1∑n−1(a+kd)brk,=k=1∑n−1(a+(k−1)d)brk+(a+(n−1)d)brn.
對每個內部的 rk,係數之差為 (a+kd)−(a+(k−1)d)=d。常數項只出現在第一行,rn 項只出現在第二行。因此
(1−r)Sn=ab+dbk=1∑n−1rk−(a+(n−1)d)brn.
為使中間的等比和使用最終公式中的同一個端點 rn,先求 r+r2+⋯+rn,再減去末項:
k=1∑n−1rk=1−rr(1−rn)−rn.
代回後會額外產生 −dbrn。把它與原來的邊界項合併,a+(n−1)d 就變成 a+nd。最後除以 1−r,得到
Sn=1−rab−(a+nd)brn+(1−r)2dbr(1−rn).
當 n=1 時,內部求和是空和,其值為零,原式只剩 S1=ab。上面兩個分式中涉及 d 的額外部分也會抵消,結果同樣是 ab。另一方面,令 d=0,會恢復普通等比和 Sn=ab(1−rn)/(1−r)。這兩個檢查同時留意了起點與終點,有助於發現指標錯誤。
常見錯誤
留意平移後的邊界項
最容易出錯的是邊界項。rSn 的最後一項是 (a+(n−1)d)brn,但與有限等比
和合併整理後,等價的最終公式可寫成含有 (a+nd)brn 的形式。
思考檢查
在等差等比混合求和中,為何 Sn−rSn 有用?
留意乘上 r 後,係數 a+kd 如何與下一個冪次對齊。
解答 · 答案
大部分項會對齊到同一個 r 的冪次,而相鄰係數只差 d。因此只剩兩個邊界項
和一個等比和 db(r+⋯+rn−1),再用普通等比和公式即可化簡。
應用遞推:按揭公式
章節中的按揭例子展示了遞推式如何進入實際計算。設:
- P>0 為初始貸款本金;
- R 為用小數表示的固定名義年利率;
- N 為按月供款的總次數,是正整數;
- x 為每個月末支付的固定供款額;
- Ln 為第 n 次供款剛結束時的欠款。
模型採用月利率 R/12:先對上月結餘計息,再扣除本月供款。例如年利率 3% 對應 R=0.03,而不是 R=3。第零個月記錄尚未計息或供款的初始本金。對整數月份 n≥1,
L0=P,Ln=Ln−1(1+12R)−x.
令 q=1+R/12,先寫出兩步,明確計息和供款的先後:
L1=Pq−x,L2=(Pq−x)q−x=Pq2−xq−x.
第一次供款在第二個月計息前已扣除,因此也減少了該月應計的利息;第二次供款則剛剛發生。反覆代入得到
Ln=Pqn−x(qn−1+qn−2+⋯+q+1).
當 R>0 時,q>1,所以等比和的分式有定義,得到
Ln=Pqn−xq−1qn−1.
若希望 N 個月後還清貸款,就令 LN=0,得到
x=P(1+R/12)N−1(R/12)(1+R/12)N.
各次供款的加權貢獻構成有限等比和:第 j 次供款,對第 n 次供款後結餘的減少量貢獻 xqn−j。這解釋了為甚麼最新供款的權重是一,最早供款的權重是 qn−1。所得公式對應的正是這個固定利率、每月末供款的模型。
當 R=0 時,直接使用遞推式,不套用分式:此時 q=1,Ln=P−nx,令 LN=0 得到 x=P/N。因為沒有利息,只需把本金平均分到各次供款中。
練習
- 設 an 為數列 1,0,1,0,…,並令 bn=an+1。求兩個通項,驗證 an+bn=1,並說明把起始指標平移後公式如何改變。
- 用歸納法證明 1⋅3⋅5⋯(2n−1)=(2n)!/(2nn!)。比較所猜通項相鄰兩項的比與乘積中新添的因子。
- 設 a1=3 且 an+1=an+4。求 an 與 sn。
- 設 b1=5 且 bn+1=3bn。求 bn 與前 n 項和。
- 設 Bn=(ϕn−ψn)/(ϕ−ψ),其中
ϕ=(1+5)/2 且 ψ=(1−5)/2。驗證
B1=B2=1 以及 Bn+2=Bn+1+Bn。
- 設 L0=2000 且 Ln=1.02Ln−1−150。用有限等比和寫出 Ln。
- 設 xk=(2+3k)5(1/2)k,且 Sn=∑k=0n−1xk。用等差等比混合
公式寫出 Sn。
引導解答
解答 · 參考解答 1
奇數指標對應 1,偶數指標對應 0,故 an=(1+(−1)n−1)/2。平移一個指標得到 bn=(1+(−1)n)/2=1−an;交替符號改變,所以兩個數列在每個指標上的和均為 1。
解答 · 參考解答 2
在 n=1 時,兩邊均為 1。若等式在 n=k 成立,乘積下一步添上因子 2k+1;右側表達式的相鄰比恰好也是
2k+1(k+1)!(2k+2)!/2kk!(2k)!=2(k+1)(2k+2)(2k+1)=2k+1.因此歸納步驟成立。這是由遞推關係證明通項,與把階乘分成奇偶因子的論證互相補充。
解答 · 參考解答 3
這是首項 3、公差 4 的等差數列,因此
an=3+4(n−1)=4n−1,且
sn=n[2⋅3+(n−1)4]/2=n(2n+1)。
解答 · 參考解答 4
這是首項 5、公比 3 的等比數列,所以
bn=5⋅3n−1,且
sn=5(3n−1)/(3−1)=5(3n−1)/2。
解答 · 參考解答 5
因為 ϕ2=ϕ+1 且 ψ2=ψ+1,乘上 ϕn 或 ψn
後可得 ϕn+2=ϕn+1+ϕn 與
ψn+2=ψn+1+ψn。兩式相減並除以 ϕ−ψ,得到
Bn+2=Bn+1+Bn。另外
B1=1,且 B2=(ϕ2−ψ2)/(ϕ−ψ)=ϕ+ψ=1。所以
{Bn} 與 Fibonacci 數列有相同初始值與遞推式。
解答 · 參考解答 6
反覆代入得
Ln=2000(1.02)n−150[(1.02)n−1+⋯+1],所以
Ln=2000(1.02)n−150((1.02)n−1)/0.02。
解答 · 參考解答 7
這裏 a=2、d=3、b=5、r=1/2,所以
Sn=1−1/210−(2+3n)5(1/2)n+(1−1/2)215(1/2)(1−(1/2)n).這仍可繼續化簡,但重點是正確代入一般有限和公式。