定义

对于序列 (an)=(a0,a1)(a_n) = (a_0, a_1\cdots) 满足线性递归关系 an=c1an1+c2+an2++ckanka_n = c_1 a_{n-1} + c_2 + a_{n-2} + \cdots + c_k a_{n-k},其中 c1,c2,,ckc_1, c_2, \cdots, c_k 是常数。
例如,我们常见的斐波那契数列 Fn=Fn1+Fn2F_n = F_{n-1} + F_{n-2} 就是一个线性递归关系。

二阶线性递归关系

定义:an=c1an1+c2an2a_n = c_1 a_{n-1} + c_2 a_{n-2},其中 c1,c2c_1, c_2 是常数且 c20c_2\not = 0

特征多项式 characteristic polynomial

X(t)=t2c1tc2\mathcal{X}(t) = t^2 - c_1 t - c_2 ,写成解的形式,就是 X(t)=(tr1)(tr2)\mathcal{X}(t) = (t - r_1)(t - r_2),其中 r1,r2r_1, r_2X(t)\mathcal{X}(t) 的根。

通项定理 (两个实数根)

r1r2r_1\not = r_2 的情况下,通项公式为 an=αr1n+βr2na_n = \alpha r_1^n + \beta r_2^n,其中 α,β\alpha, \beta 是常数,可以通过初始条件解出。

初始条件

a0=α+βa_0 = \alpha + \betaa1=αr1+βr2a_1 = \alpha r_1 + \beta r_2

证明

A(x)=n=0anxnA(x) = \sum_{n = 0}^\infty a_n x^n, 我们将前两项提出来,得到

A(x)=a0+a1x+n=2anxn=a0+a1x+n=2(c1an1+c2an2)xnA(x) = a_0 + a_1 x + \sum_{n = 2}^\infty a_n x^n = a_0 + a_1 x + \sum_{n = 2}^\infty (c_1 a_{n-1} + c_2 a_{n-2})x^n

然后给 an1a_{n-1}an2a_{n-2} 乘上 xxx2x^2,得到 A(x)=a0+a1x+c1xn=2(an1xn1)+c2x2n=2(an2xn2)A(x) = a_0 + a_1 x + c_1 x\sum_{n = 2}^\infty ( a_{n-1} x^{n-1}) + c_2 x^2 \sum_{n = 2}^\infty (a_{n-2} x^{n-2}),然后将 an1a_{n-1}an2a_{n-2}A(x)A(x) 代替,得到 A(x)=a0+a1x+c1xA(x)+c2x2A(x)a0c1xA(x) = a_0 + a_1 x + c_1 x A(x) + c_2 x^2 A(x) - a_0c_1x
整理得到 A(x)=a0+a1xa0c1x1c1xc2x2A(x) = \frac{a_0 + a_1 x - a_0 c_1 x}{1 - c_1 x - c_2 x^2} ,然后将 A(x)A(x) 展开成分式,得到 A(x)=α1r1x+β1r2xA(x) = \frac{\alpha}{1 - r_1 x} + \frac{\beta}{1 - r_2 x},然后展开成幂级数,得到 A(x)=n=0(αr1n+βr2n)xnA(x) = \sum_{n = 0}^\infty (\alpha r_1^n + \beta r_2^n)x^n,所以 an=αr1n+βr2na_n = \alpha r_1^n + \beta r_2^n

通项定理 (两个相同根)

如果特征方程有两个相同的根 r1=r2=rr_1 = r_2 = r,则通项公式为 an=(α+βn)rna_n = (\alpha + \beta n)r^n,其中 α,β\alpha, \beta 是常数,可以通过初始条件解出。

证明

和前面写过的证明类似,我们得到 A(x)=a0+(a1a1c0)x(1rx)2A(x) = \frac{a_0 + (a_1 - a_1 c_0) x}{(1-rx)^2},然后将 A(x)A(x) 展开成分式,得到 A(x)=α1rx+β(1rx)2A(x) = \frac{\alpha}{1 - r x} + \frac{\beta}{(1 - r x)^2},然后展开成幂级数,得到 A(x)=n=0(α+βn)rnxnA(x) = \sum_{n = 0}^\infty (\alpha + \beta n)r^n x^n,所以 an=(α+βn)rna_n = (\alpha + \beta n)r^n