加载中…
个人资料
氯化钡和硫酸银
氯化钡和硫酸银
  • 博客等级:
  • 博客积分:0
  • 博客访问:91,145
  • 关注人气:37
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

连分数简介(6):二次无理数与循环连分数

(2014-06-25 19:22:36)
分类: 数学趣题-代数-数论

    先定义一下标题的两个概念:

    如果一个不是有理数的复数是某个整系数一元二次方程 ax^2+bx+c=0 的一个根,那么这个复数称为二次无理数。若该数为实数(当然同时也是无理数)则称为实二次无理数。我们主要研究实二次无理数。

    而循环连分数的定义依赖于无限简单连分数:若对于无限简单连分数

连分数简介(6):二次无理数与循环连分数

    存在非负整数 m 及正整数 T 满足:对任意不小于 m 的非负整数 n 都有

连分数简介(6):二次无理数与循环连分数

    那么这个连分数 r_0 就称为循环简单连分数(简称循环连分数)。容易理解,数列 {a_n} 从 a_m 开始循环,循环节长度为 T 。若非负整数 m 可以取 0 (也就是说数列 {a_n} 从第一项就开始循环),那么称连分数 r_0 为纯循环简单连分数(简称纯循环连分数)。

    在所有满足条件的 m 中,必然有一个最小的,此时余式 r_m=[a_m,a_(m+1),a_(m+2),a_(m+3),...] 是纯循环连分数,而 r_(m-1) 则不是(如果 m 为正整数的话)。我们称 r_m 为 r_0 的最大纯循环部分

    考虑 r_0 的最大纯循环部分 r_m ,取 m=0 ,此时在所有满足条件的 T 中,必然有一个最小的,我们把这时的 T 叫做循环连分数 r_0 的周期

    我们通常把循环连分数 r_0 记作这样:

连分数简介(6):二次无理数与循环连分数

    在循环节上面画一条横线,这个记号的引进是很自然的(想想循环小数的记法,虽然循环小数更常用两个点表示循环节,但是也有画横线的)。

 

    定义先到这里,先讨论一下二次无理数的性质。首先我们先看一下二次无理数都长什么样子:一个复数 x 是二次无理数,当且仅当它能写成下面形式

连分数简介(6):二次无理数与循环连分数

    其中 r,s 为有理数,s 不为 0 ,且 d 为非平方数的整数(当然 0 也算平方数,但是负数肯定不是)。

    这里约定:当 d 为负数时,记 d=i*(-d) ,其中 i 为虚数单位。注意,当 d 为正数时此式不成立。

    这个结论证明比较简单。首先注意到若一个复数是二次无理数,则它必然是某个整系数一元二次方程 ax^2+bx+c=0 的一个根。利用求根公式得到该二次无理数为

连分数简介(6):二次无理数与循环连分数

    取 r=-b/2a,s=1/2a 或 s=-1/2a,d=b^2-4ac ,则该二次无理数就表示成了上述形式。显然 r,s 是无理数,且 s 不为 0 ,而且 d 一定为整数,且 d 不是平方数(否则该二次无理数为有理数,矛盾)。这就成功地证明了必要性。

    充分性的证明也不难,我们只需为 x=r+sd 找到一个合适的整系数一元二次方程。这并不是什么难事:

连分数简介(6):二次无理数与循环连分数

    这个方程的系数是有理数,我们只要方程两边同乘以分母的非零公倍数,消掉分母就得到整系数一元二次方程,再加上 x 一定不是有理数,利用定义就证明了 x 一定是二次无理数。

    另外,还有个显然的结论:x 为实二次无理数当且仅当 d 为正数因为显然 d 为正数时 x 为实数,否则 d 必为负数,x 不是实数。

    不过,这样的表示并不唯一,因为有 12=23 这种情况的存在,容易想到把表达式 r+sd 中的 d 限制为无平方因子数(无平方因子数指因子中没有大于 1 的平方数的整数)。加上已有的限制条件,我们就得到:把上述结论的“ d 为非平方数的整数”改为“ d 不为 0,1 且为无平方因子数”,该结论仍然成立。因为,我们只需把之前结论中的 d 的平方因子全部提到外面就行了。

    我们立即可以证明,任意一个二次无理数 x 都可以唯一表示为 r+sd ,其中 r,s 为有理数且 s 不为 0 ,d 不为 0,1 且为无平方因子数。用反证法,若有两种不同的表示方法,一种情况是两种表示方法的 d 相同,即

连分数简介(6):二次无理数与循环连分数

    两式相减就得到

连分数简介(6):二次无理数与循环连分数

    如果 s_1-s_2 不为零,把它除到右边就得到左边无理数等于右边有理数,矛盾,于是 s_1=s_2 ,这个等式两边都等于 0 ,因此 r_1=r_2 ,也就是说我们设的 x 的两种表示方法是完全一样的,这是不可能的。

    另一种情况是两种表示方法的 d 不相同,即

连分数简介(6):二次无理数与循环连分数

    仍然是两式相减得到

连分数简介(6):二次无理数与循环连分数

    由于 s_1,s_2 均不为零,所以最后一步的除法是成立的,我们得到 d_1d_2 是有理数,d_1d_2 是平方数。但是 d_1,d_2 是不相等的无平方因子数,它们又不可能异号(否则乘积不是平方数),因此它们的绝对值不相等。这也就是说 |d_1|,|d_2| 的素因子分解式不一样,设次幂不同的素因子为 p ,那么必定其中一个数不含因子 p ,另一个数含因子 p 但不含因子 p^2 (否则它们就不会都是无平方因子数)。它们的乘积含因子 p 但不含因子 p^2 ,不是平方数,矛盾。

    不管怎么样都会产生矛盾,因此二次无理数 x 的表示法是唯一的。

    二次无理数能否进行运算?如果随便选两个二次无理数做加减乘除,得到的结果会乱七八糟,不再是二次无理数。不过,如果限定两个二次无理数的 d 值相同,很容易算出它们的和差积商都是二次无理数或者有理数:

连分数简介(6):二次无理数与循环连分数

    其中两数之商的计算利用了分母有理化,这里引入共轭数的概念:设二次无理数 x 可以表示成

连分数简介(6):二次无理数与循环连分数

    则记二次无理数

连分数简介(6):二次无理数与循环连分数

    为二次无理数 x 的共轭数。除此之外,考虑 s=0 的特殊情况,则这两个数都等于有理数 r ,于是我们规定有理数的共轭数为这个数本身。显然,两个共轭的二次无理数的和与积都是有理数,它们是同一个整系数一元二次方程的两个根。另外,很容易验证,任取两个 d 值相同的二次无理数,如果它们同时取共轭数,则它们的和差积商也是原来和差积商的共轭数。写成式子就是:

连分数简介(6):二次无理数与循环连分数

 

    接下来我们回过头来看循环连分数。首先我们研究如何求出循环连分数的值。这个很简单,在这里我们就求过 [1,1,1,1,...] 的值,现在我们只是照搬方法就行了,先求纯循环连分数的值:

连分数简介(6):二次无理数与循环连分数

    别忘了我们设过第 T-2,T-1 个渐近分数分别为 p_(T-2)/q_(T-2),p_(T-1)/q_(T-1) ,第 T 个渐近分数就是这个有限连分数本身,也就是 r_0 ,于是我们得到

连分数简介(6):二次无理数与循环连分数

    其中 p_(T-2),q_(T-2),p_(T-1),q_(T-1) 都是整数。可以看到这个式子可以化为一个关于 r_0 的整系数一元二次方程:

连分数简介(6):二次无理数与循环连分数

    又因为 r_0 为无限简单连分数,它必然为无理数,因此 r_0 为实二次无理数。现在我们考虑这个方程两根的范围。显然 r_0 作为其中一根,必然大于 1 (因为 a_0 等于 a_T 必然为正整数)。再观察下式

连分数简介(6):二次无理数与循环连分数

    注意这里充分利用了 a_0 为正整数的条件,这样才能保证 p_(T-2) 为正整数,而在计算 f(-1) 时,我们有 q_(T-1)-q_(T-2),p_(T-1)-p_(T-2) 均为非负整数,第一个差为 0 当且仅当 T=2,q_0=q_1=1 ,第二个差为 0 当且仅当 T=1,p_(-1)=p_0=1 ,两个等号不能同时取到。

    这个结果表明 f(0),f(-1) 符号相反,由零点定理,f(x)=0 在 (-1,0) 区间内有一根,这一根只能是另一根(同时也是 r_0 的共轭数),综合以上讨论我们得到:

    纯循环连分数一定是实二次无理数,它的值大于 1 ,它的共轭数的值大于 -1 且小于 0 。

    对于混循环连分数,我们先把最大纯循环部分算出来就行了,如下式:

连分数简介(6):二次无理数与循环连分数

    其中 r_m 是纯循环连分数,我们可以计算它的值,接下来 r_0 就变成了有限连分数(尽管不是有限简单连分数),可以利用递推式推出:

连分数简介(6):二次无理数与循环连分数

    由于 r_m 是实二次无理数,最右式子的分子分母都是实二次无理数并且 d 值都等于 r_m 的 d 值,它们相除也是实二次无理数。于是我们得到:

    循环连分数一定是实二次无理数。

 

    接下来我们讨论实二次无理数能否化成循环连分数的问题。我们先试着把任意实二次无理数化为循环连分数。回想我们把任意无理数化为无限简单连分数的过程:

连分数简介(6):二次无理数与循环连分数

    递推式是 a_n=[r_n],r_(n+1)=1/(r_n-a_n) 。我们知道 r_0 为实二次无理数,容易发现,所有 r_n 均为实二次无理数,并且 d 值相等。若我们在递推过程中找到两个相等的 r 值,设它们分别是 r_m 和 r_(m+T) ,其中 m 为非负整数,T 为正整数,那么由 r_m=r_(m+T) 得对于任意不小于 m 的整数 n 都有 a_n=a_(n+T) ,故由定义得知 r_0 为循环连分数。找相等的 r 值不一定是构造,也可能是抽屉原理。

    不过,为了计算简便,这里我们并不打算用无平方因子数作 d 值。我们把实二次无理数化为下列形式:

连分数简介(6):二次无理数与循环连分数

    其中 u,v 为整数,d 为正整数且不是平方数。这很容易做到,把表示式 x=r+sd 中的有理数 r,s 写成既约分数的形式,再提出公分母,得到 x=(?+?d)/? 的形式,其中问号处为整数,然后如果 d 的系数为负数就分子分母同时乘以 -1 ,接下来把 d 前的系数拿到根号内就行了。当然这样得到的 d 不一定是无平方因子数,也不一定跟原来的 d 一样。

    这还不够,我们希望有 v 整除 d-u^2 ,即 v|d-u^2 ,为此我们把上式写成这样:

连分数简介(6):二次无理数与循环连分数

    这时有 v|v| 整除 dv^2-(u|v|)^2 ,满足条件,因此我们不妨假设式子 x=(d+u)/v 已经满足 v|d-u^2 。由于 r_0 也是实二次无理数,因此 r_0 也能写成这个形式,即 r_0 可以写成这样:

连分数简介(6):二次无理数与循环连分数

    其中 u,v 为整数,d 为正整数且不是平方数,且 v|d-u^2 。

    下面证明,对任意非负整数 n ,实二次无理数 r_n 也都可以写成 (d+u)/v 的形式,所有 r_n 的 d 值都与 r_0 相等,且所有 r_n 都满足 v|d-u^2 。

    利用递推式 r_(n+1)=1/(r_n-a_n) ,我们使用归纳法。当 n=0 时该结论显然成立,我们只需证明若某个 r_n 能写成该形式,则 r_(n+1) 也能写成该形式。我们有

连分数简介(6):二次无理数与循环连分数

    容易看出来分子除了 d 之外是个整数,分母也是整数(这就看出 v|d-u^2 的作用了,否则为了让分母变为整数将不得不调整 d 值)另外由于

连分数简介(6):二次无理数与循环连分数

    所以 r_(n+1) 的表示满足 v|d-u^2 的条件。这个结论就证完了。于是我们可以记

连分数简介(6):二次无理数与循环连分数

    我们刚才说过,只要找到两个相等的 r_n ,就证明了 r_0 为循环连分数。当然,直接死算是不好做的,这种时候抽屉原理往往能出奇效:我们只要说明所有 u_n,v_n 的取值只有有限个(这可以通过限制上下界来实现,因为它们只能取整数值,由抽屉原理,必然有两对 (u_n,v_n) 完全相同,即有两个 r_n 相等。我们刚才已经说过,如果有两个 r_n 相等则 r_0 一定是循环连分数。

    关键问题是如何限制范围,为此不妨先试着表示出 r_n 的值。注意到下式

连分数简介(6):二次无理数与循环连分数

    通过此式我们可以把 r_m 反过来用 r_0 表示:

连分数简介(6):二次无理数与循环连分数

    这个不难算,只需把分母乘到左边,把它当成关于 r_m 的一元一次方程解就行了。现在我们关心它的正负,于是我们把式子写成这样:(前提是 m 大于等于 2

连分数简介(6):二次无理数与循环连分数

    其中 s_k 表示 r_0 的第 k 个渐近分数。我们知道相邻两个渐近分数必然一个比 r_0 大另一个比 r_0 小,因此右边一定是正数,左边也是正数(说明我们没算错……)。不过,由于 r_0,r_m 是二次无理数,所以可以考虑它们的共轭数。我们前面说过,任取两个 d 值相同的二次无理数,如果它们同时取共轭数,则它们的和差积商也是原来和差积商的共轭数(有理数看成 d 前系数为 0 的二次无理数,其共轭数为它自己)。所以我们有

连分数简介(6):二次无理数与循环连分数

    这回右边是正是负就没准了,不过我们可以考虑当 m 趋向无穷大的情况,此时 s_(m-1),s_(m-2) 的极限均为 r_0 ,而显然 r_0 不等于它的共轭数(否则 r_0 为有理数),所以右边的极限就等于 -q_(m-2)/q_(m-1) 为负值。这就说明,当 m 大于某个常数时,右边必然恒为负值,也就是说 r_m 的共轭数恒为负值。

    如果 r_m 的共轭数为负值会发生什么事情?注意到我们的前提是 m 大于等于 2 ,这时 r_m 必然大于 1 (因为 r_m 大于正整数 a_m )。因此有

连分数简介(6):二次无理数与循环连分数

    也就是说 v_m 只有有限个取值,注意这个前提是“ m 大于某个常数”,因此 m 的取值还是无穷多个。接下来限制 u_m 的范围。这次从递推式入手,注意到

连分数简介(6):二次无理数与循环连分数

    右边是有理数,所以左边展开后不能含有 d 项,左边的第二个乘数事实上就等于 (d)-u_(m+1) ,于是上式变成这样:

连分数简介(6):二次无理数与循环连分数

    刚才我们证过当“ m 大于某个常数”时右边是个正整数,于是左边也要大于 0 ,也就是说

连分数简介(6):二次无理数与循环连分数

    也就是说,当“ m 大于某个常数”时 u_(m+1) 大于 -d 小于 d ,换句话说就是当 m 大于这个常数加一时 u_m 大于 -d 小于 d 。这样的话 m 有无穷多个取值,而 u_m,v_m 的取值都是有限个。由我们刚才的讨论,我们可以断定 r_0 为循环连分数。

    这样,我们就得到了:实二次无理数一定可化为循环连分数。

    那么,满足什么条件的实二次无理数可化为纯循环连分数?我们已经证过纯循环连分数一定大于 1 ,且共轭数大于 -1 小于 0 ,现在证明它的逆命题:若实二次无理数 r_0 大于 1 且共轭数大于 -1 小于 0 ,那么它一定可以化为纯循环连分数。

    注意到我们已知 r_0 大于 1 ,而若 n 为正整数,则 r_n 大于正整数 a_n 显然大于 1 ,也就是说对任意非负整数 n 都有 r_n 大于 1 。

    另外我们已知 r_0 的共轭数大于 -1 小于 0 ,而由递推式(仍然利用共轭数的性质)

连分数简介(6):二次无理数与循环连分数

    我们可以知道,若 r_n 的共轭数大于 -1 小于 0 ,那么它减去 a_n 后必然小于 -1 (因为所有 a_n 都是正整数,包括 a_0=[r_0] ),所以 r_(n+1) 的共轭数必然大于 -1 小于 0 。因此,由数学归纳法知所有的 r_n 均大于 -1 小于 0 。

    接下来,我们的思路是:我们已知实二次无理数可化为循环连分数,因此存在 a_m=a_(m+T) 。如果从 a_x=a_y 能够往回推出 a_(x-1)=a_(y-1) ,那么我们就可以从 a_m=a_(m+T) 推出 a_0=a_T ,这就说明了 r_0 是纯循环连分数。

    我们由刚才的等式可得

连分数简介(6):二次无理数与循环连分数

    这个数介于 -1,0 之间,这样 a_n 作为整数必然被 1/(r_(n+1)) 的共轭数唯一确定,具体来说是这样:

连分数简介(6):二次无理数与循环连分数

    这样我们就快证完了,因为 r_0 是个实二次无理数,一定是循环连分数,所以必定存在非负整数 m 和正整数 T ,使得对于所有不小于 m 的整数 n ,均有 a_n=a_(n+T) 。换句话说,就是 r_m=r_(m+T) 。由刚才得到的这个式子,可以断定 a_(m-1)=a_(m-1+T) ,也就是说 r_(m-1)=r_(m-1+T) 。这样往回推,最终总可以推出 r_0=r_T ,至此已经证出 r_0 是纯循环连分数。

    这样,我们就得到了:大于 1 且共轭数大于 -1 小于 0 的实二次无理数一定可化为纯循环连分数。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有