孙霞 杨慧章
【摘要】对于中学数学竞赛和高考中出现的分式线性递推数列,它其实是复解析动力系统中Mbius变换迭代的一种特殊情形.本文给出了Mbius变换n次迭代的具体表达式,也给出了分式线性递推数列的通项公式,从而使得求分式线性递推数列通项公式简单化.
【关键词】Mbius变换;迭代;分式线性递推数列
【基金项目】云南开放大学科学研究基金项目(19YNOU01);云南省教育厅科学研究基金项目(2020J0492,2018JS479);云南省地方高校联合专项面上项目(2018FH001-014);红河学院第二届中青年学术骨干(2015GG0207)
分式线性递推数列是由 a1=a,an+1=can+bdan+e(ce-bd≠0)所确定的数列,它经常出现在中学数学竞赛和高考的压轴题中,我们看到有很多求通项公式的办法.在本文中,我们站在复解析动力系统的角度,阐述了分式线性递推数列只是Mbius变换迭代的一种特殊形式,且从动力系统的角度,给出了分式线性递推数列的通项公式,使得求分式线性递推数列通项公式简单化,揭开了该类通项公式求解的神秘面纱.
我们从如下几个方面来进行介绍.
1 Mbius变换的迭代
在复分析中,形如R(z)=az+bcz+d(ad-bc≠0)的映射称为分式线性变换或Mbius变换,这样的映射我们也称为一次有理函数.
复解析动力系统是复分析中的一个分支,它是研究函数迭代序列或轨道状态的.即倘若f是定义域S到其自身的解析映射,对任意初值z0∈S,考虑迭代过程z1=f(z0),z2=f(z1),…,zn=f(zn-1),…称迭代序列{z0,z1,…,zn,…}为点z0(在f作用下)的轨道,复解析动力系统的研究对象就是上述的函数迭代序列.
复数域C={(a,b),a∈R,b∈R},而C∪{∞}称为整个Riemann球面.对z0∈C∪{∞},我们定义z1=R(z0),z2=R(z1)=R(R(z0))=R2(z0),…,zn=R(zn-1)=R·R·…·R(z0)n=Rn(z0).
定义 设R(z)为有理函数,点z称为R(z)的不动点,如果R(z)=z.
引理 若R(z)是度为d的有理函数,则R(z)在C∪{∞}中只有d+1个不动点.
对于Mbius变换R(z)=az+bcz+d(ad-bc≠0)而言,由于它是一次有理函数,所以由上述引理知它在整个Riemann球面就只有2个不动点,接下来,我们从不动点出发来看Mbius变换的n次迭代表达式.
情形1 若Mbius变换R(z)在C∪{∞}中有且仅有一个二重不动点ζ,如果该不动点为∞,即ζ=∞,则R(z)必定为一次多项式,且R(z)=z+β(β≠0),这时,Rn(z)=z+nβ(n=1,2,3,…).如果ζ≠∞,则令g(z)=1z-ζ,使得g(ζ)=∞,此时,g-1(z)=1z+ζ,不妨设S(z)=g·R·g-1(z),
那么S(z)也是Mbius变换且它与R(z)共轭,它仅以∞为其不动点,即S(∞)=∞,从而可以定出β ~,使得S(z)=z+β ~.
所以Sn(z)=z+nβ ~(n=1,2,3,…).
因为Sn(z)=g·Rn·g-1(z),
所以g·Rn·g-1(z)=z+nβ ~,
所以g·Rn(z)=g(z)+nβ ~,
Rn(z)=g-1(g(z)+nβ ~)=1g(z)+nβ ~+ζ
=11z-ζ+nβ ~+ζ.
上述情形中,我们首先处理了较为简单的情况,即不动点ζ=∞的情况,此时,Rn(z)=z+nβ(n=1,2,3,…);若ζ≠∞,则做了分式线性变换g(z)=1z-ζ,并让S(z)与R(z)共轭,从而转化为以∞为不动点的情形.
情形2 若Mbius变换R(z)在C∪{∞}中有且仅有两个判别的不动点ζ1和ζ2.先考查一种特殊情况,若ζ1=0,ζ2=∞,这时,R(z)=kz(k≠0,k≠1),于是,Rn(z)=knz(n=1,2,3,…).对于一般情形的ζ1和ζ2,做分式线性变换h(z)=z-ζ1z-ζ2,使得h(ζ1)=0,h(ζ2)=∞,继续令S(z)=h·R·h-1(z),则S(z)是Mbius变换,且0和∞均为其不动点,S(z)不恒等于z,所以存在A∈C,使得S(z)=Az(A≠0,A≠1),于是,Sn(z)=Anz,所以
Rn(z)=h-1·Sn·h(z).
由于h-1(z)=ζ1-zζ21-z,所以
Rn(z)=h-1·Sn·h(z)=h-1·Snz-ζ1z-ζ2
=h-1Anz-ζ1z-ζ2
=ζ1-Anz-ζ1z-ζ2·ζ21-Anz-ζ1z-ζ2.
同樣地,在该情形中,我们也用了转化的思想,首先考虑简单的情形,即以ζ1=0,ζ2=∞为不动点的迭代,接下来,当ζ1≠0,ζ2≠∞时,则做分式线性变换h(z)=z-ζ1z-ζ2,使得h(ζ1)=0,h(ζ2)=∞,从而转化为我们已经熟知的情形.
2 Mbius变换的迭代与分式线性递推数列的通项公式
上述情形1中,若R(z)在C∪{∞}中有且仅有一个不动点ζ且ζ=∞,则R(z)=z+β(β≠0),Rn(z)=z+nβ(n∈N),此时,该迭代序列是我们的公差为β的等差数列.情形2中,若R(z)在C∪{∞}中有且仅有两个判别的不动点ζ1和ζ2,且ζ1=0,ζ2=∞,则R(z)=kz(k≠0,k≠1),此时,Rn(z)=knz(n=1,2,3,…),该迭代序列则是我们的公比为k的等比数列.
接下来,我们通过具体例子来看对于一般的分式线性递推数列,如何求出它的通项公式.上述讨论的Mbius变换是定义在整个Riemann球面的,而我们的数列则只是定义在正整数域上的,为了计算方便,在计算过程中不妨把复变量z换为实变量x.
例1 已知a1=5,an+1=an-4an-3(n≥1),求通项公式an.
解 取R(x)=x-4x-3,令R(x)=x,得不动点为x1=x2=2,所以
g(x)=1x-2,g-1(x)=1x+2,
S(x)=g·R·g-1(x)=g·R1x+2=g1-2x1-x=x-1,
Sn(x)=x-n.
因为Sn(x)=g·Rn·g-1(x)
所以Rn(x)=g-1·Sn·g(x)
=g-1·Sn1x-2=g-11x-2-n
=g-1-nx+(2n+1)x-2
=x-2-nx+(2n+1)+2
=(1-2n)x+4n-nx+(2n+1).
因為x0=a1=5,所以数列的通项
an=xn-1=Rn-1(x0)=Rn-1(5)
=[1-2(n-1)]·5+4(n-1)-(n-1)·5+[2(n-1)+1]=-6n+11-3n+4=6n-113n-4.
事实上,我们也可以直接用情形1中的公式,因为该函数只有一个二重的不动点.由于ζ=2,β~=-1,所以
Rn-1(x)=11x-2-(n-1)+2=x-2(n-1)(x-2)1-(n-1)(x-2),
an=Rn-1(5)=-6n+11-3n+4.
例2 已知a1=3,an+1=2anan+1,求数列通项an.
解 取R(x)=2xx+1,令R(x)=x,得不动点为x1=0,x2=1,做变换g(x)=xx-1,则g-1(x)=xx-1,从而
S(x)=g·R·g-1(x)=g·Rxx-1=g2x2x-1=2x,
所以Sn(x)=2nx.
由于Sn(x)=g·Rn·g-1(x),
所以Rn(x)=g-1·Sn·g(x)=g-1·Snxx-1
=g-12nxx-1=2nx(2n-1)x+1.
因为x0=a1=3,所以
an=xn-1=Rn-1(x0)=Rn-1(3)=2n-1·3(2n-1-1)·3+1
=3·2n-13·2n-1-2.
我们也可以用情形2中的公式,此时ζ1=0,ζ2=1,A=2,所以
Rn-1(x)=-2n-1xx-11-2n-1xx-1,
an=Rn-1(3)=-2n-1·321-2n-1·32=-3·2n-12-3·2n-1=3·2n-13·2n-1-2.
对于次数为1的有理函数,其迭代后平凡,可以具体写出迭代的表达式,也就是文中所述的Mbius变换的迭代.而对于次数大于或等于2的有理函数的迭代,其状况就要复杂得多.从复解析动力系统的角度来看,分式线性递推数列其实来源于分式线性变换的迭代,它只是一次有理函数迭代中变量取正整数的情形,所以可以写出具体的表达式.
【参考文献】
[1]赵嘉璐.用不动点法求分式型递推数列的通项[J].数学学习与研究,2018(09):107.
[2]林国夫.利用函数不动点求数列的通项公式[J].数学通报,2008(12):44-45,47.
[3]史济怀,刘太顺.复变函数[M].合肥:中国科学技术大学出版社,1998.
[4]吕以辇.复解析动力系统[M].北京:科学出版社,1997.
[5]任福尧.复解析动力系统[M].上海:复旦大学出版社,1997.
[6]Alan F.Beardon.Iteration of Rational Functions[M].Berlin:Springer Verlag,1991.