关于常系数齐次线性递推数列能被表示成等比数列线性和的证明

退役OIer来诈尸了,祝大家新年快乐。

问题引入

下面的所有数列默认下标从 0 开始。

对于一个数列 {an},如果其满足 k常系数齐次线性递推 关系:

(*)an=i=1kpiani

其中 pk0,nk

定义它的特征方程为:

xk=i=1kpixki

我们要证明的是:如果特征方程无重根,那么对于任意给出的初值 a0,a1,...ak1,都能做到将 an(nN) 表示为

an=i=1kcirin

的形式。其中 ci 为常数, r1,r2,...rk 是特征方程的所有根。(这些根可以是复数。)

开始证明

我们将证明分为两部分,在第一部分中,我们证明 nk 的情况,而第二部分中,将证明 n<k 的情况。

第一部分:nk

对于任意非零数 r,我们看到,an=rn 是递推关系的解,当且仅当它满足递推关系,即,将其代入()式,得到:

rn=i=1kpirni

两边同除 rnk,得到

rk=i=1kpirki

于是,这无穷多个方程退化为一个方程,即特征方程。所以我们得到 rn 是递推关系的解当且仅当它是特征方程的根。

由于我们假定了 pk0,所以 0 不是特征方程的根。于是,我们得到 an=rin 都是递推关系 () 的解。

根据 () 的线性性和齐次性,我们得到,对于任意选定的常数 c1,c2,...ck

an=i=1kcirin

都是 () 的解,于是这部分就被证明了。

第二部分

我们要证明,对于任意给出的初值 a0,a1,...ak1,我们都一定能选出一组常数 c1,c2,...ck,使得对于 n<k 的情况,也有

an=i=1kcirin

成立。

换句话说,这就是要证明如下方程组

{(when n=0):c1+c2+...+ck=a0(when n=1):c1r1+c2r2+...+ckrk=a1(when n=2):c1r12+c2r22+...+ckrk2=a2...(when n=k1):c1r1k1+c2r2k1+...+ckrkk1=ak1

对于任意的 a0,a1,...ak1 都有解。证明这个命题对于高中生来说可能有些困难。但是,如果你有线性代数基础,下面的证明并不难理解。我们将上方程组改写为矩阵乘向量的形式:

[111r1r2rkr12r22rk2r1k1r2k1rkk1][c1c2c3ck]=[a0a1a2ak1]

于是,ci 能被唯一确定的充要条件就变为矩阵

[111r1r2rkr12r22rk2r1k1r2k1rkk1]

可逆。也即其行列式不为 0

事实上,这是著名的范德蒙德(Vandermonde)矩阵。运用数学归纳法,能够证明其行列式即为:

1i<jk(rjri)

因此,当特征方程无重根时,也即 r1,r2,...rk 互不相同时,它的确不为 0。于是,这证明了对于 n<k的情况,定理依然成立。

综上所述,我们对 nN 的情况都证明了这样的解是成立的,因此我们成功完成了对这个定理的证明。

后记

事实上,关于这个结论我们有:

  1. 对于这样的常系数齐次线性关系,我们求解其通项公式的障碍在于高次方程的求根,而后者通常是困难的。
  2. 对于有重根的情况,我们假设是 s 重根,只需要更改重根前的系数 ci 为一个 s1 阶的关于 n 的多项式即可。系数依然唯一。由于本人水平精力有限,不做进一步探讨。
posted @   Martin_MHT  阅读(148)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示