如何判定0<n<1的有限有理数的b进制解释无穷和的有理性
首先得先明确几个关键定义,避免理解偏差:
我们说的有限有理数n(0<n<1),指的是它的十进制表示是有限位的,比如例子里的0.1234,就是1234/10000=617/5000;而n_b在这里的意思是,把n的十进制数字串直接当成b进制的小数来计算数值(比如0.1234_b就等于1/b + 2/b² + 3/b³ +4/b⁴),但要注意:只有当b大于数字串里的最大数字时,这个b进制表示才是合法的(比如b=2时,数字3、4在二进制里是无效的,所以这类b的项无意义,求和要从b=max(digits)+1开始)。
核心分析步骤
我们把求和式展开,就能清晰看到规律:
假设n的十进制是0.d₁d₂...d_k(d₁到d_k是0-9的数字,至少有一个非零),M是这些数字里的最大值,那么求和式:
$$
S = \sum_{b=M+1}^\infty n_b = d₁\sum_{b=M+1}^\infty \frac{1}{b} + d₂\sum_{b=M+1}^\infty \frac{1}{b²} + ... + d_k\sum_{b=M+1}^\infty \frac{1}{b^k}
$$
现在逐个分析每一项的性质:
如果第一个非零数字是d₁(也就是n的十分位非零):
第一项是d₁ × 调和级数尾项,而调和级数$\sum_{b=1}^\infty \frac{1}{b}$是发散到无穷的,它的尾项$\sum_{b=M+1}^\infty \frac{1}{b}$自然也发散。这时候整个求和式S会趋向于无穷大,不存在有限值,也就谈不上有理数还是无理数了。如果第一个非零数字是d_m(m≥2,也就是n的前m-1位都是0):
这时候前m-1项的求和都是0,我们从第m项开始看:
$\sum_{b=M+1}^\infty \frac{1}{bm}$等于黎曼ζ函数$\zeta(m)$减去前M项的和$\sum_{b=1}M \frac{1}{b^m}$。已知:- $\zeta(2)=\pi²/6$(无理数),$\zeta(3)$是Apéry常数(已证明无理),$\zeta(4)=\pi⁴/90$(无理),且目前已证明所有$\zeta(m)$(m≥2)都是无理数;
- $\sum_{b=1}^M \frac{1}{b^m}$是有限个有理数的和,结果还是有理数。
所以$\sum_{b=M+1}^\infty \frac{1}{b^m}$就是无理数 - 有理数 = 无理数,再乘以非零的d_m,结果还是无理数。
后面的项(m'>m)都是正的求和项,不管它们本身是有理数还是无理数,加上前面的无理数之后,整个S的结果必然是无理数(正的无理数加任何正数都不可能变成有理数)。
回到你的例子:$0.1234_2 + 0.1234_3 + ...$
这个例子里的数字串是0.1234,最大数字是4,所以合法的求和从b=5开始。展开后第一项是$1×\sum_{b=5}^\infty \frac{1}{b}$,这是发散的调和级数尾项,所以整个求和式会趋向于无穷大,不存在有限的和,也就无法讨论它的有理性。
总结判定流程
- 写出n的十进制有限表示,找到第一个非零数字的位置m(比如0.00123的第一个非零数字在千分位,m=3);
- 如果m=1:求和式发散,无有限值;
- 如果m≥2:求和式收敛,且结果是无理数。
内容的提问来源于stack exchange,提问作者Klangen

