【实数系统】 04 - 连分数

  我们一直在不自觉地使用着十进制小数(decimal fraction)表示实数,小数运算方便、容易理解,让实数使用起来更加自如。但小数却不能提供更多关于实数本身的性质,尤其是对无理数、超越数的研究,小数表示完全无法胜任。有人会感到困惑,什么叫实数本身的性质?实数本身还有什么需要进一步研究的?比如说吧,无理数周边的有理数是如何分布的?超越数和其它无理数有什么本质区别?这些问题的回答都超出了本篇的范围,但我觉得可以从一个简单的入口来洞悉里面的世界,为今后的学习提供工具和精神上的准备。

1. 一般连分数

  在正式给出定义之前,先来欣赏一下下面漂亮的表达式:

  2+1=2+12+12+

  5+12=1+11+11+

  4π=1+122+222+322+42

  e1e+1=12+16+110+114+

  a2+b=a+b2a+b2a+b2a+

  这里要介绍的就是连分数(Continued Fractions),它是实数的另一种表示方法,在数论等学科中有着很惊奇的应用。简单说连分数就是具有以下左边形式的表达式,其中ai,bi可以是任何数(甚至复数),省略号可以是有限或无穷的。右边的表达式叫一般连分数,如果a0为整数、ak(k>0)为正整数,它又叫简单连分数,本篇只介绍一般连分数和简单连分数。

a0+b0a1+b1a2+;a0+1a1+1a2+

  这种书写方式虽然直观,但稍显繁琐,我们可以把一般连分数写成[a0,a1,a2,]。值得一提的是,有限连分数显然都是一个数,但无限连分数却还只是个记号,它能不能表示数还需要进一步的结论。另外,sk=[a0,a1,,ak]称为连分数的rk=[ak,ak+1,]称为连分数的余式,显然有下式成立:

(1)[a0,a1,a2,]=[a0,a1,,ak1,rk]

  显然连分数的每个节sk都可以展开为一般的分数形式pkqk,它称为连分数的渐进分数(convergents),由数学归纳法可以推得如下公式。其中p2,p1,q2,q1是补充进来的,它们可以使公式统一。这个公式非常漂亮,pk,qk居然独立地只与ak相关,它是连分数理论的基本公式。

(2)pk=akpk1+pk2;(p2=0,p1=1)

qk=akqk1+qk2;(q2=1,q1=0)

  直觉可能已经告诉你,渐进分数可能是实数的一种逼近序列,研究渐进分数之间的关系就能知道这个逼近的趋势。将上式分别乘上qk1,pk1并相减得到pkqk1qkpk1=pk2qk1qk2pk1,迭代计算得到公式(3),并进而有公式(4),用类似的方法和已有结论容易有公式(5)(6)。它们都表示了渐进分数的逼近情况,以后会经常用到。

(3)qkpk1pkqk1=(1)k

(4)pk1qk1pkqk=(1)kqkqk1

(5)qkpk2pkqk2=(1)k1ak

(6)pk2qk2pkqk=(1)k1akqkqk2

  你可能注意到,余式rk完全可以当做ak看待,所以可以有表达式(7)。这个表达式将余式和连分数的值联系了起来,对研究逼近很有用处。另外,结合公式(2)很容易得到以下有趣的表达式(8)。它们不仅漂亮,对今后的证明也都很有用。

(7)[a0,a1,a2,]=pk1rk+pk2qk1rk+qk2

(8)pkpk1=[ak,ak1,,a0];qkqk1=[ak,ak1,,a1]

2. 简单连分数

  以上的讨论都是针对一般连分数进行的,得出的结论也都是关于表达式形式的。如果想得到关于值的性质,看来必须限制ak的值,现在就假设ak为正数(比简单连分数条件弱一些)。由公式(4)可知偶(奇)数项渐进分数是递增(减)的,而且奇数项皆大于偶数项。从图像上看感觉就是两条逐渐靠近的曲线,我们自然会问:它们会收敛于同一个值吗?对于有限连分数,答案是显然的,最后一项会等于分数值。但对于无限连分数,极限的知识告诉我们它们不一定相遇,所以还需要研究它们相遇的条件。

  首先,渐进分数序列收敛时称连分数是收敛的,它本质上是说两条曲线收敛于同一值,该值称为连分数的。容易看出连分数收敛和它的余式收敛是等价的,那么无穷连分数收敛的条件是什么呢?由公式(4)可知收敛的等价条件是qkqk+1+,下面来证它的充要条件ak发散。先证必要性,即由极限为无穷证明级数发散。首先容易有qk>qk2,从而qk>qk1,qk1>qk2有一个成立,结合公式(2)可有qk<11akqk1qk<11akqk2。如果级数收敛,由级数理论可知k=0(1ak)有非零值,从而qk有限,与极限为无穷矛盾,所以级数必收敛。再证充分性,即由级数发散可证极限为无穷。现由qkqk2+cak分别对奇偶项进行估值,合并有qk+qk+1>ci=0kai,然后很容易有qkqk+1+。证明完成。

  可以猜想,不同的连分数可能收敛到同一个实数,这样实数的连分数表示就没有唯一性。为达到唯一性,并获得更多的结论,从现在开始我们仅讨论简单连分数,并简称为连分数。连分数的ak称为局部商(partial quotient),a0可为负数,为保持结论的处处成立,我们再限定它必须非负,这并不影响结论对所有连分数的适用性。另外,对有限连分数有[a0,,an1,1]=[a0,,an1+1],连分数表示仍然不唯一,但容易证明,如果限制an>1,则实数有唯一的连分数表示(十进制小数表示也要剔除掉9˙才有唯一表示)。

  比较自然地可以想到,实数的唯一连分数表示可以用类似辗转相除的方法逐步得到。每次ak取余式rk的整数部分,余式的小数部分取倒数得到新的余式rk+1,依次类推,比如由下表可得到π=[3,7,15,1,292,1,]。显然有理数在有限步后余式为0,结束流程得到有限连分数,而无理数则会一直进行下去,得到无限连分数。

r0=3.1415926 r1=7.0625 r2=15.99659 r3=1.0034 r4=292.634 r5=1.575
a0=3 a1=7 a2=15 a3=1 a4=292 a5=1

  由公式(7)可知α=[a0,,an,rn+1]=pkrk+1+pk1qkrk+1+qk1,其中an+1rn+1<an+1,从而得到渐进分数的误差估计公式(9)。该误差公式可以继续得到误差比较式(10)(11),即渐进分数越来越接近连分数的值。

(9)1qk(qk+qk+1)<|αpkqk|1qkqk+1

(10)|αpk+1qk+1|<|αpkqk|

(11)|qk+1αpk+1|<|qkαpk|

 

3. 逼近的度量

  实数的连分数表示不依赖于进制,ak的大小一定程度上表示了逼近的程度,它是研究无理数的有力工具。连分数的渐进分数可以由公式(2)递推得到,pk,qk都是整数,由公式(3)得到pk,qk又是互质的,所以公式(2)推导出的渐进分数都是既约分数。

  关于用有理数逼近无理数,我们有这样一个基本问题:怎样用尽量小分母的分数来逼近已知无理数?这个问题不仅有实际应用价值,还能考察一个无理数的性质。首先我们可以有这样的粗略感觉,对选定的分母可有一个最逼近的分数,随着分母的递增,必然有某个分数更加逼近,然而这些分母之间可能是有间隔的。先对这样的逼近作一个明确的定义,对任意实数α,若既约分数nm比任何分母不大于m的分数都更逼近αnm称为α最佳逼近。即若mmn任意,则有表达式(12)。一个实数可能有很多的最佳逼近,它们分母递增,且值逐渐逼近α直至收敛。

(12)|αnm|<|αnm|

  由前面的分析知道,渐进分数逐步靠近收敛值,而且它们的分母也逐渐增大,那它们是不是就是我们要找的最佳逼近呢?答案让人惊喜,但也有点让人失望,渐进分数都是最佳逼近,但不是所有最佳逼近都是渐进分数。在得到更细致的结论之前,我们需要引入中位数的概念。分数a+cb+d称为abcd的中位数,容易证明它的值介于abcd之间(中位数定理)。

  考察如下序列,它们和pk1qk1之间都是中位数关系,所以这是一个单调序列,且位于收敛值的同一侧。这个序列如果再前进一步,就是pk1qk1pkqk的中位数,同样推理,它必和pk1qk1在同一侧。这个有趣的过程可以启发我们如何计算ak,已知前两个渐进分数和收敛值α时,可以在中位数跨越α时确定ak

pk2qk2,pk2+pk1qk2+qk1,pk2+2pk1qk2+2qk1,,pk2+akpk1qk2+akqk1=pkqk

  继续回到前面的问题,现在知道渐进分数和中位数分布在收敛值的两侧,且每侧都是单调的。每侧相邻两个分数可以表示为P(r)Q(r)=pkr+pk1qkr+qk1P(r+1)Q(r+1),它们的差为1Q(r)Q(r+1),分子为1表明它们之间不可能有分母大于Q(r+1)的分数,否则该分数与P(r)Q(r)的差必然大于1Q(r)Q(r+1)。所以最佳逼近必然只能取渐进分数及其中位数,显然渐进分数必然是最佳逼近,但中位数就不一定是了,它甚至都不一定是既约分数。

  仔细比较公式(10)和(11),(11)明显比(10)更严格,如果把公式(12)也换成较严格的条件,会发生什么呢?为区别这两种逼近,满足公式(12)的称为第一类型最佳逼近,而满足公式(13)的称为第二类型最佳逼近。第二类型的最佳逼近当然肯定也是第一类型的,反之则不一定成立,第二类型将剔除掉所有中位数,得到让我们心怡的结论。

(13)|mαn|<|mαn|

   证明的重点都在于对公式(4)(9)的深度理解,相邻连分数之间再也插不进比它们分母小的分数。如果第二类型最佳逼近nmpk1qk1pk+1qk+1之间,它必然在pk1qk1pkqk之间,所以m>qk|mαn|<|qkαpk|<1qk+1。而另一方面|αnm||pk+1qk+1nm|1mqk+1,矛盾,所以第二类型逼近只能是渐进分数。反之如果k>s,则利用误差估计(9)有|qkαpk|1qk+1<qs+qs+1<|qsαps|,也就是说所有渐进分数都是第二类型逼近。所以除了特殊情况α=x.5外,第二类型渐进逼近和渐进分数是等价的

  渐进分数可以寻找最佳的有理逼近,它可以被用于齿轮制造、日历编撰等,另外还可以求对数的近似值(想想怎么算?)。

  渐进分数是实数的逼近表示,那么局部商ai的大小能否说明什么呢?笼统地说,它表示渐进分数离实数究竟有多近,即可以用来度量逼近。如何度量一个有理数对实数的逼近程度?研究误差和分母的关系是一个比较可行的方法,根据公式(9)有关系式(14)。这个关系式是对所有渐进分数都成立的,欲构造单个无限接近该误差的连分数是很容易的,所以该式不能被加强。该结论有两个扩展结论:(1)相邻两个渐进分数必有一个满足(15)式;(2)相邻三个渐进分数必有一个满足(16)式。而且考察[1,1,1,]可知,该结论已经不能再扩展。

(14)|αpkqk|<1qk2

(15)|αpkqk|<12qk2

(16)|αpkqk|<15qk2

  利用公式(9)容易得到以下估计式(17),该式说明了ak越大,它所对应的渐进分数就“更好地”逼近连分数的值,而[1,1,1,]则是最坏的数。关于逼近的度量还有很多结论,这里只是抛砖引玉,让大家有个概念,具体内容请参考相关资料。

(17)|αpkqk|<1ak+1qk2

  现在来看一个逼近度量的应用,由此窥见连分数理论在高等理论中的作用。考察n次代数数α,设它满足有理系数多项式f(x)=(xα)g(x)。易证g(α)0,取使g(x)0的区间,并设|g(x)|>M。在区间上讨论pqα=f(pq)g(pq),容易有|pqα|>1Mqn。进一步讨论既有刘维尔(Liouville)定理:对n次代数数α,存在正数C使得(18)式总成立。该定理指出了代数数的有理逼近性质,可以用它来轻松构造超越数(取适当ak),刘维尔用它构造了第一个超越数k=110k!

(18)|αpq|>Cqn

4. 循环连分数

  十进制循环小数是有理数,你可能好奇循环(periodic)连分数会有什么性质呢?首先,模仿循环小数,我们把循环连分数记作[a0,,as1,a˙s,as+1,,a˙k]。对于循环连分数,在进入循环节后总有rk=rk+l,容易由归纳式得到一个二次方程,并进而知道该连分数是2次代数数。反过来,2次代数数的连分数,也必然是循环的,这个定理最初由拉格朗日证明。大概思路是考察余式的二次方程,发现它的系数有界,从而余式的个数有限,所以必然会出现循环。这里打算从另一个角度来证明这个定理,因为我们可以得到更多有趣的东西。

  我们先从最简单的情况开始考虑,连分数α=[a˙0,,a˙n]称为纯循环连分数,并记β=[a˙n,,a˙0]。考察由归纳公式形成的二次方程,并使用公式(8),容易证明αα=1β是同一整系数二次方程的根,它们互为共轭且满足条件(19)。容易知道二次代数数都有形式r+sD,满足(19)的二次代数数称为既约的。可以证明α的余式r1也是即约的,也容易知道对某个D即约二次代数数是有限的,故必有某个余式满足rk=α,这就证明了即约二次代数数必是纯循环连分数。综合得到纯循环连分数和即约二次代数数是等价的。对于一般的二次代数数,用α的表达式来表示rk,可以证明它迟早会成为即约的,所以循环节必将出现,故循环连分数和二次代数数也是等价的

(19)α>1,1<α<0

  容易证明α=D+a0是即约的(a0D的首项),记α=[2a˙0,,a˙n]。由以上结论可有β=1α=[a˙n,,2a˙0],而β=1α2a0=[a˙1,,an,2a˙0],所以a1,,an对称。故有α=[2a˙0,a1,a2,,a2,a˙1],进而有表达式(20)。

(20)D=[a0,a˙1,a2,,a2,a1,2a˙0]

 


【全篇完】

posted on   卞爱华  阅读(4222)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架

导航

点击右上角即可分享
微信分享提示