try ai
科普
编辑
分享
反馈
  • 连分数展开

连分数展开

SciencePedia玻尔百科
核心要点
  • 一个数若为有理数,则其连分数展开为有限的;若为无理数,则其连分数展开为无限的。
  • Lagrange 定理证明了一个数的连分数是最终周期性的,当且仅当它是一个二次无理数。
  • D\sqrt{D}D​ 的连分数展开的渐近分数是找到 Pell 方程所有整数解的关键。
  • 连分数是现代量子计算中的一个关键组成部分,用于 Shor 算法中寻找函数的周期。

引言

在常见的小数表示之外,存在一种更深刻的数字表示方式:连分数展开。这种强大的语言能将任何数转化为一个整数序列,揭示出小数表示法常常掩盖的隐藏结构。小数表示可能很笨拙——例如将 1/3 这样简单的分数表示为无限循环小数——而连分数则为每个数提供了一个独特且通常更简单的“指纹”,清晰地将有限与无限区分开来。本文将引导您进入连分数的世界。首先,在“原理与机制”一节中,我们将构建生成这些展开式的“机器”,探索它们如何区分有理数和无理数,并揭示 Lagrange 定理所描述的美妙周期性。随后,“应用与跨学科联系”一节将展示其惊人的力量,说明这一古老的数学工具如何解决像 Pell 方程这样的百年难题,并在量子计算和理论物理等前沿领域中扮演至关重要的角色。

原理与机制

想象你有一台神奇的机器。你给它输入任何一个数,它就开始咏唱一个整数序列,这个序列是是你给它的那个数的本质所在的独特编码。这不是科幻小说,而是连分数的世界。但这台机器是如何工作的呢?它的规则是什么?它咏唱的序列揭示了关于数字宇宙的哪些秘密?

数字生成机

让我们来构建这台机器。其机制异常简单,基于一个你从小就熟知的操作:将一个数分解为其整数部分和小数部分。假设我们从一个数 xxx 开始。

首先,我们剥离出它的整数部分,称之为 a0a_0a0​。剩下的是小数部分,一个介于 000 和 111 之间的值。 x=a0+{x}x = a_0 + \{x\}x=a0​+{x} 如果小数部分为零,说明我们的数是一个整数,机器停止,只咏唱出 a0a_0a0​。但如果小数部分不为零,有趣的部分就开始了。我们取这个剩下的小数,将其倒置,看看会得到什么。这个新数 x1=1/{x}x_1 = 1 / \{x\}x1​=1/{x} 将总是大于 111。为什么呢?因为你正在用 111 除以一个小于 111 的数。

现在,我们对 x1x_1x1​ 重复这个过程。我们剥离出它的整数部分 a1=⌊x1⌋a_1 = \lfloor x_1 \rfloora1​=⌊x1​⌋,如果还有剩余,就将其倒置并继续。这样我们就得到一个整数序列 a0,a1,a2,…a_0, a_1, a_2, \dotsa0​,a1​,a2​,… 和一个优美的嵌套表达式: x=a0+1a1+1a2+1a3+⋱x = a_0 + \cfrac{1}{a_1 + \cfrac{1}{a_2 + \cfrac{1}{a_3 + \ddots}}}x=a0​+a1​+a2​+a3​+⋱1​1​1​ 这就是连分数展开,我们紧凑地记作 [a0;a1,a2,a3,… ][a_0; a_1, a_2, a_3, \dots][a0​;a1​,a2​,a3​,…]。

整个迭代过程可以通过一个极其优雅的概念——​​Gauss 映射​​ T(x)={1/x}T(x) = \{1/x\}T(x)={1/x}——来捕捉。每当我们应用这个映射,我们就生成下一个系数和下一个要处理的数。第一个系数是 a1=⌊1/x⌋a_1 = \lfloor 1/x \rfloora1​=⌊1/x⌋,而连分数的其余部分就是 T(x)T(x)T(x) 的展开。Gauss 映射就像一个“移位”算子,消耗一个系数,然后呈现给我们这个数编码的其余部分。

注意,这个过程中自然出现了一个关键规则。虽然第一个整数 a0a_0a0​ 可以是任何整数(正、负或零),但所有后续的整数 a1,a2,…a_1, a_2, \dotsa1​,a2​,… 都必须是正数。这不是我们强加的任意规则,而是机器设计的直接结果。在第一步之后,每一步我们都是在取一个保证大于 111 的数的整数部分。这个简单的约束是接下来魔术的关键。它确保了过程收敛到一个唯一的值,并赋予了这些展开式强大的功能和结构。

一道鸿沟:有限与无限

当我们把不同种类的数输入我们的机器时会发生什么?我们立刻在数字世界中发现了一条深刻的裂痕,其差异之大,如同凡人与神明之别。

如果你给机器输入一个​​有理数​​,比如 19/719/719/7,这个过程总是会停止。系数序列将是有限的。为什么?因为这个取整数部分和倒数的机械过程,实际上只是巧妙伪装的​​Euclidean 算法​​!你实际上在执行求 191919 和 777 的最大公约数的步骤。由于 Euclidean 算法总是会终止,我们的连分数机器也必须终止。每个有理数都有一个有限的连分数展开。所有这类数的集合就是我们熟悉的有理数集 Q\mathbb{Q}Q,我们知道它是可数无限的。

那么​​无理数​​呢,比如 2\sqrt{2}2​ 或 π\piπ?对于这些数,机器永不停止。它会永远运行下去,咏唱出一个无限的系数序列。这给了我们一个深刻的洞见:无限的简单连分数是无理数的标志。

对于有理数,有一个小而奇特的例外。就像 111 可以写成 0.999...0.999...0.999... 一样,一个有理数也有两种可能的有限展开式。这是由于简单的恒等式 an=(an−1)+1/1a_n = (a_n - 1) + 1/1an​=(an​−1)+1/1。例如,分数 [0;2,4][0; 2, 4][0;2,4] 等于 4/94/94/9。但我们也可以将其写成 [0;2,3,1][0; 2, 3, 1][0;2,3,1]。它们是相同的值。为了保持整洁,数学家们采用了一个简单的约定:我们选择较短的表示,这意味着最后一个系数必须总是大于 111。根据这个规则,每个有理数都有一个唯一的指纹。

机器中的幽灵:发现周期性

所以,无理数会产生无限序列。但所有的无限序列都一样吗?它们都只是随机、混乱的数字串吗?让我们亲自动手,把一个著名的无理数 2\sqrt{2}2​ 输入我们的机器。

  1. 设 x0=2≈1.414...x_0 = \sqrt{2} \approx 1.414...x0​=2​≈1.414...。整数部分是 a0=1a_0 = 1a0​=1。
  2. 余数是 2−1\sqrt{2}-12​−1。我们将其倒置:x1=12−1x_1 = \frac{1}{\sqrt{2}-1}x1​=2​−11​。分母有理化后得到 x1=2+1≈2.414...x_1 = \sqrt{2}+1 \approx 2.414...x1​=2​+1≈2.414...。整数部分是 a1=2a_1 = 2a1​=2。
  3. 余数是 (2+1)−2=2−1(\sqrt{2}+1) - 2 = \sqrt{2}-1(2​+1)−2=2​−1。我们将其倒置:x2=12−1x_2 = \frac{1}{\sqrt{2}-1}x2​=2​−11​。等等!这和 x1x_1x1​ 完全一样。

我们偶然发现了一些不可思议的事情。机器的内部状态重复了。由于机器是确定性的,如果它再次达到相同的状态,那么从那一点开始它必须产生相同的输出。它陷入了一个循环!从现在开始,它将咏唱的系数序列就是 2,2,2,…2, 2, 2, \dots2,2,2,… 无限循环。

所以,2\sqrt{2}2​ 的“编码”根本不是随机的。它是 [1;2,2,2,… ][1; 2, 2, 2, \dots][1;2,2,2,…],我们可以优雅地写成 [1;2‾][1; \overline{2}][1;2]。一个优美的、隐藏的秩序从一个简单的过程中浮现出来。数字 2\sqrt{2}2​ 在其结构深处包含了一个无限重复的模式。

Lagrange 的伟大交响曲:思想的统一

这种周期性行为是 2\sqrt{2}2​ 的特例吗?还是它是一个更深层规律的标志?答案由伟大的数学家 Joseph-Louis Lagrange 在一个连接了不同数学领域的惊人定理中给出。

​​Lagrange 定理​​:一个数的连分数展开是最终周期性的,当且仅当它是一个​​二次无理数​​。

二次无理数是指像 2\sqrt{2}2​ 或黄金比例 ϕ=(1+5)/2\phi = (1+\sqrt{5})/2ϕ=(1+5​)/2 这样的数,或者是任何一个作为整系数二次方程 Ax2+Bx+C=0Ax^2 + Bx + C = 0Ax2+Bx+C=0 解的无理数。

这个定理是一首思想的交响曲。它指出,一个*算法性质(我们机器的输出是周期性的)与一个代数*性质(是一个简单多项式的根)是完全等价的。这种联系并非偶然。如果一个连分数是周期的,比如说它的尾部 yyy 是重复的,那么 yyy 必须满足一个形如 y=[b1;b2,…,bm,y]y = [b_1; b_2, \dots, b_m, y]y=[b1​;b2​,…,bm​,y] 的方程。当你解开这个方程时,你会发现 yyy 必须是一个二次方程的解。周期性迫使这个数成为一个二次无理数!

反方向的证明同样优美。对于一个二次无理数,我们机器的内部状态受到约束,以至于只有有限多种可能性。根据鸽巢原理,机器必须最终重复一个状态,从而迫使其输出是周期的。

这个定理也告诉我们对其他数可以有什么样的期待。23\sqrt[3]{2}32​ 怎么样?或者像 eee 和 π\piπ 这样的超越数呢?它们的连分数是无限的,但不是周期的。π=[3;7,15,1,292,… ]\pi = [3; 7, 15, 1, 292, \dots]π=[3;7,15,1,292,…] 的系数序列没有显示出任何可辨别的模式。这些非周期性展开中是否存在某种其他类型的微妙秩序,是数学中伟大的未解之谜之一。

从抽象模式到具体力量:破解 Pell 方程

这一切都非常优美,但你可能想知道它是否有用。这台机器除了生成漂亮的模式外,还能做更多的事情吗?答案是肯定的。让我们看一个困扰了数学家一千多年的问题:​​Pell 方程​​。

这个方程看起来非常简单:x2−Dy2=1x^2 - D y^2 = 1x2−Dy2=1,其中 DDD 是某个非完全平方数的整数。挑战在于找到 xxx 和 yyy 的整数解。例如,对于 D=2D=2D=2,我们想找到整数 xxx 和 yyy 使得 x2−2y2=1x^2 - 2y^2 = 1x2−2y2=1。你可能会通过试错法找到 (3,2)(3, 2)(3,2),因为 32−2(22)=9−8=13^2 - 2(2^2) = 9-8=132−2(22)=9−8=1。但还有其他的解吗?你如何找到它们?

让我们重新审视 2=[1;2‾]\sqrt{2} = [1; \overline{2}]2​=[1;2] 的展开。让我们看看在不同点截断展开式得到的有理数。这些被称为​​渐近分数​​,是 2\sqrt{2}2​ 的最佳有理逼近。

  • [1]=1/1[1] = 1/1[1]=1/1。让我们在方程中测试一下:12−2(12)=−11^2 - 2(1^2) = -112−2(12)=−1。不完全是,但非常接近!
  • [1;2]=1+1/2=3/2[1; 2] = 1 + 1/2 = 3/2[1;2]=1+1/2=3/2。让我们测试一下:32−2(22)=9−8=13^2 - 2(2^2) = 9 - 8 = 132−2(22)=9−8=1。一个解!我们找到了 (x,y)=(3,2)(x, y) = (3, 2)(x,y)=(3,2)。
  • [1;2,2]=1+1/(2+1/2)=7/5[1; 2, 2] = 1 + 1/(2+1/2) = 7/5[1;2,2]=1+1/(2+1/2)=7/5。测试一下:72−2(52)=49−50=−17^2 - 2(5^2) = 49 - 50 = -172−2(52)=49−50=−1。又很接近!
  • [1;2,2,2]=17/12[1; 2, 2, 2] = 17/12[1;2,2,2]=17/12。测试一下:172−2(122)=289−288=117^2 - 2(12^2) = 289 - 288 = 1172−2(122)=289−288=1。另一个解!(x,y)=(17,12)(x, y) = (17, 12)(x,y)=(17,12)。

这就是惊人的回报。用于 D\sqrt{D}D​ 的连分数机器不仅描述了这个数,它还主动地生成了 Pell 方程的整数解!揭示数字深层结构的同一个算法,也作为一个强大的引擎来解决丢番图方程。

更重要的是,这个方法是完备的。它能找到最小的解(“基本解”),并从这个解生成所有其他解。我们不需要更复杂的机器;简单的连分数,其分子均为 111,就足够了。任何广义连分数都可以转换回这种简单的、规范的形式。在这种简单性中蕴含着其终极的力量和优雅。我们最初构建的、基于一个听起来微不足道的过程的机器,原来是一把万能钥匙,解开了曾经笼罩在神秘面纱下的数论秘密。

应用与跨学科联系

我们已经探索了连分数的机制,学习了如何构建这些优美的无限数字链。乍一看,它们可能仅仅是一种奇特的数学现象,一种复杂而相当古老的书写数字的方式。但如果仅止于此,就如同看着罗塞塔石碑,只看到一块刻有奇特雕刻的石头。一种新语言或一种新表示法的真正力量不在于其形式,而在于它让我们能做什么和看到什么。连分数是一把钥匙,在本章中,我们将看到它能打开的锁是何等惊人地多样,从古老的数学难题到量子计算和理论物理的前沿领域。

数论的核心:解决古老谜题

连分数的天然家园是数论,即对整数的研究。在这里,它们不仅仅是一个工具,而是解决一些最古老、最棘手问题的完美工具。考虑著名的 Pell 方程:x2−Dy2=1x^2 - D y^2 = 1x2−Dy2=1,其中 DDD 是某个非完全平方数的正整数,我们在寻找 xxx 和 yyy 的整数解。对于较小的 DDD,比如 D=3D=3D=3,我们或许可以通过试错法找到一个解(22−3⋅12=12^2 - 3 \cdot 1^2 = 122−3⋅12=1)。但对于 x2−13y2=1x^2 - 13 y^2 = 1x2−13y2=1 呢?或者,臭名昭著的 x2−61y2=1x^2 - 61 y^2 = 1x2−61y2=1?后者的最小整数解涉及数十亿的数字!盲目搜索是无望的。

该方程可以重写为 x2y2=D+1y2\frac{x^2}{y^2} = D + \frac{1}{y^2}y2x2​=D+y21​,这意味着 xy\frac{x}{y}yx​ 必须是 D\sqrt{D}D​ 的一个极好的有理逼近。而我们拥有的专门用来寻找最佳有理逼近的工具是什么?正是连分数。

一个极其优美的定理指出,D\sqrt{D}D​ 的简单连分数展开掌握着解开 Pell 方程的完整钥匙。正如我们所见,因为 D\sqrt{D}D​ 是一个二次无理数,它的连分数在第一项之后总是周期的。它看起来像 [a0;a1,a2,…,aℓ‾][a_0; \overline{a_1, a_2, \dots, a_\ell}][a0​;a1​,a2​,…,aℓ​​]。这个重复块的结构告诉我们一切。在每个周期块结束前生成的渐近分数 pn/qnp_n/q_npn​/qn​ 是解的来源。

让我们以 D=13D=13D=13 为例。一步步计算表明 13=[3;1,1,1,1,6‾]\sqrt{13} = [3; \overline{1, 1, 1, 1, 6}]13​=[3;1,1,1,1,6​]。周期长度为 ℓ=5\ell=5ℓ=5,是一个奇数。一个非凡的定理指出,如果周期长度 ℓ\ellℓ 是奇数,那么渐近分数 pℓ−1/qℓ−1p_{\ell-1}/q_{\ell-1}pℓ−1​/qℓ−1​ 提供的解不是 x2−Dy2=1x^2 - Dy^2 = 1x2−Dy2=1,而是“负” Pell 方程 x2−Dy2=−1x^2 - Dy^2 = -1x2−Dy2=−1 的解。确实,对于 13\sqrt{13}13​,在索引 ℓ−1=4\ell-1=4ℓ−1=4 处的渐近分数是 18/518/518/5,我们发现 182−13⋅52=324−325=−118^2 - 13 \cdot 5^2 = 324 - 325 = -1182−13⋅52=324−325=−1。为了得到正方程的解,我们只需经历两个周期,考察索引为 2ℓ−1=92\ell-1=92ℓ−1=9 的渐近分数。这会得到数对 (649,180)(649, 180)(649,180),它是 x2−13y2=1x^2 - 13y^2 = 1x2−13y2=1 的最小正整数解。所有其他解都可以从这个基本解中生成。

如果周期长度是偶数呢?考虑 D=3D=3D=3,其 3=[1;1,2‾]\sqrt{3} = [1; \overline{1, 2}]3​=[1;1,2​]。周期长度为 ℓ=2\ell=2ℓ=2。同一个定理告诉我们,当 ℓ\ellℓ 是偶数时,渐近分数 pℓ−1/qℓ−1p_{\ell-1}/q_{\ell-1}pℓ−1​/qℓ−1​ 给出了正方程 x2−Dy2=1x^2 - Dy^2 = 1x2−Dy2=1 的一个解。在这里,索引为 111 的渐近分数是 2/12/12/1,且 22−3⋅12=12^2 - 3 \cdot 1^2 = 122−3⋅12=1。但负方程 x2−3y2=−1x^2 - 3y^2 = -1x2−3y2=−1 呢?周期的偶数性给出了一个明确的判决:不存在整数解。一个从连分数展开导出的数的简单奇偶性,就解决了关于一个无限问题的解的存在性!这就是找到正确表示法的魔力。

审视实数的新视角:结构与几何

除了解决具体方程,连分数还为我们提供了一种深刻的新方式来思考数轴本身的结构。我们习惯于十进制展开,但它们很笨拙。例如,简单的数 1/31/31/3 有一个无限的十进制表示(0.333…0.333\dots0.333…),而复杂的数 2\sqrt{2}2​ 在其十进制中没有可辨别的模式。从某种意义上说,连分数更加“民主”。每个有理数都有一个有限的连分数,每个无理数都有一个唯一的无限连分数。

这种唯一性在无理数和无限整数序列之间提供了一一对应关系。就好像每个无理数都有一段独特的 DNA 序列。我们甚至可以通过设计它们的序列来构造数字。例如,哪个数对应于简单的重复序列 [0;1,2‾][0; \overline{1, 2}][0;1,2​]?通过设 x=1/(1+1/(2+x))x = 1/(1+1/(2+x))x=1/(1+1/(2+x)),我们可以解一个简单的二次方程,发现这个无限重复的模式生成了数 x=3−1x = \sqrt{3}-1x=3​−1。这赋予了我们构建和分析奇特数字的惊人能力。我们可以研究那些“DNA”仅由有限整数字母表(比如 {1,2}\{1, 2\}{1,2})构成的数的集合,并发现这个集合虽然充满了“洞”,但仍然是不可数大的,一种数值上的 Cantor 集。

这种“数值地址”的思想甚至有更深远的后果。它允许我们在数的集合上定义一种新的几何。我们可以说两个无理数是“接近的”,如果它们的连分数展开在前多项上是一致的。这个直观的想法可以被形式化。所有共享一个共同有限前缀 (a0,a1,…,an)(a_0, a_1, \dots, a_n)(a0​,a1​,…,an​) 的无理数集合,构成了一个拓扑的基。在这个拓扑中,一个数列收敛,当且仅当它们的连分数展开逐项稳定下来。

我们可以更进一步,定义一个距离。对于任意两个数,找到它们连分数不同的第一个位置 kkk。然后我们可以将它们之间的距离定义为,比如说,2−k2^{-k}2−k。它们越早出现不同,距离就越远。这个函数不仅仅是一个奇特的构造;它满足度量(一种正式的距离函数)的所有性质。它甚至满足一个更强的性质,称为超度量不等式 d(x,z)≤max⁡{d(x,y),d(y,z)}d(x, z) \le \max\{d(x, y), d(y, z)\}d(x,z)≤max{d(x,y),d(y,z)},这意味着所有三角形都是等腰的!这在数上创造了一种奇异的、层次化的几何结构,而当我们只使用十进制展开时,这种结构是完全隐藏的。

现代计算的引擎:量子算法

几个世纪以来,连分数一直是纯数学家的专属领域。很难想象会有比 20 世纪末发现的应用更实用、更能改变世界的了。这个场景是 Shor 算法,一个里程碑式的量子算法,它可以比任何已知的经典算法以指数级速度更快地分解大整数。如果能大规模实现,它将破解现代大部分的密码学。

Shor 算法的核心是一个量子力学技巧,用于找到一个函数的周期 rrr。然而,量子计算机并不会直接把答案交给你。经过一次精密的测量后,它会提供一个数 yyy,当它除以量子寄存器的大小 2m2^m2m 时,得到一个分数 y2m\frac{y}{2^m}2my​,这个分数是某个未知有理数 cr\frac{c}{r}rc​ 的一个非常好的近似。我们迫切需要的周期 rrr 就隐藏在这个未知分数的分母中。

因此,问题就变成了:给定一个像 3812048\frac{381}{2048}2048381​ 这样的小数(一个来自计算的假设测量结果),你如何找到它所近似的那个分母很小的简单分数?这正是连分数天生要解决的问题!通过对测量值 y2m\frac{y}{2^m}2my​ 运行连分数算法,我们生成了一系列渐近分数。这些是最佳的有理逼近。根据一个优美的数论定理,这些渐近分数中的一个极有可能就是我们的目标分数 cr\frac{c}{r}rc​,或者它的一个近亲。

例如,如果一次测量给我们的比率是 1921024\frac{192}{1024}1024192​,化简后为 316\frac{3}{16}163​,它的连分数是 [0;5,3][0; 5, 3][0;5,3]。渐近分数是 1/51/51/5 和 3/163/163/16。然后我们测试它们的分母 555 和 161616,作为可能的周期(或周期的倍数)。在这种情况下,我们会发现真正的周期是 r=4r=4r=4,它是 161616 的一个因子。连分数算法充当了量子计算机神秘输出的关键经典解码器。一个自 Euclid 时代就已知的算法,已经成为有史以来构想的最先进技术之一的重要组成部分。

物理世界的回响:物质的动力学

也许连分数最令人惊讶的出现是在理论物理中,在研究像液体或玻璃这样的复杂系统如何随时间演化。Mori-Zwanzig 形式体系是统计力学中一个复杂的框架,用于描述时间相关函数,这些函数衡量系统在某一时间的属性与其在稍后时间的值之间的关系。

当人们将这个形式体系中的控制方程通过 Laplace 变换在频域中进行分析时,一个熟悉的结构奇迹般地出现了。变换后的相关函数的方程可以精确地写成一个连分数: C~(z)=M0z+δ12z+δ22z+…\tilde{C}(z) = \frac{M_0}{z + \frac{\delta_1^2}{z + \frac{\delta_2^2}{z + \dots}}}C~(z)=z+z+z+…δ22​​δ12​​M0​​ 这不仅仅是一个数学上的类比。这个分数中的系数 δn2\delta_n^2δn2​ 具有直接的物理意义。它们代表了系统动力学中“记忆效应”的层次结构。第一项描述了瞬时行为,下一项描述了第一层记忆,依此类推。连分数的递归、嵌套结构完美地反映了系统过去影响其未来的递归方式。此外,这些系数可以与系统谱密度的矩(M0,M2,M4,…M_0, M_2, M_4, \dotsM0​,M2​,M4​,…)相关联,这些量是可以计算或原则上可以测量的。

这个源于整数相除的数学链条,竟然重新出现为描述物质弛豫的基本结构,这是科学思想统一性的深刻证明。它表明,我们在抽象的数字世界中发现的模式并非任意的发明,而是物理世界结构中固有的深层结构的反映。从整数到无理数,从拓扑学到量子计算,最后到分子的舞蹈,连分数展现了自己是数学中最通用、最美丽的思想之一。