本文整理自 B 站的一期关于欧拉–马歇罗尼常数的讲解视频(哔哩哔哩),把「为什么两个发散量能减出一个常数」这个问题完整梳理一遍:调和级数为什么发散、发散速度为什么是 lnn、Hn−lnn 为什么收敛,以及最后得到的欧拉–马歇罗尼常数 γ 到底是什么。
核心结论先放在这里:调和级数虽然不断向无穷增长,但它比 lnn「多出来」的部分,最终稳定成了一个有限的常数 γ≈0.5772156649。
一、调和级数与一个神秘常数
1.1 两个发散量为什么能减出一个常数
在数学分析中有这样一个常数 γ≈0.577215664901532⋯,被称为欧拉–马歇罗尼常数(Euler–Mascheroni constant),它来源于这样一个极限:
γ=n→∞lim(1+21+31+⋯+n1−lnn)
乍一看这个式子有些奇怪:1+21+31+⋯+n1 随着 n 增大趋向无穷,lnn 同样趋向无穷——也就是说我们似乎是在计算一个 ∞−∞。可神奇的是,这两个发散量的差并没有发散,而是逐渐稳定在 0.5772156649⋯ 附近,这个数就是 γ。这篇文章就来回答:为什么能「减」出这个常数?
1.2 调和级数:发散却慢得惊人
先从最基本的调和级数开始:1+21+31+41+51+⋯=∑n=1∞n1,它的部分和 Hn=∑k=1nk1 被称为第 n 个调和数(Harmonic Number)。例如 H1=1、H2=1+21=1.5、H3≈1.8333、H10≈2.92897。
一个非常经典的结论是:尽管 n1→0,调和级数依然发散——一个无穷级数的每一项趋向于 0,并不能保证整个级数收敛。证明可以用分组法:把级数重新分组为
1+21+(31+41)+(51+⋯+81)+⋯
其中第三组 31+41>41+41=21,下一组 51+⋯+81>4×81=21,再下一组有 8 项、每一项至少是 161,所以 91+⋯+161>8×161=21……依此类推,整个调和级数至少大于 1+21+21+21+⋯,而右边显然趋向无穷。因此 ∑n=1∞n1 发散,即 Hn→+∞。
但调和级数发散得非常慢:H10≈2.929、H100≈5.187、H1000≈7.485、H1000000≈14.393——即使加到一百万项,结果也只有大约 14.4。那么它到底是按照什么速度增长的呢?答案是 lnn:事实上 Hn 和 lnn 的增长速度几乎完全相同。这也正是欧拉–马歇罗尼常数出现的地方。

二、为什么增长速度是 ln n
2.1 联系来自 1/x 的积分
这里最关键的联系来自函数 f(x)=x1。我们知道 dxdlnx=x1,所以 ∫1nx1dx=lnn;另一方面 Hn=∑k=1nk1。因此我们实际上是在比较两个东西:
k=1∑nk1与∫1nx1dx=lnn
也就是在比较 Hn 与 lnn。
2.2 几何视角:矩形近似曲线面积
考虑曲线 y=x1。由于 1/x 是单调递减函数,在区间 [k,k+1] 上始终有 k+11<x1<k1,对整个区间积分得到 k+11<∫kk+1x1dx<k1。而 ∫kk+1x1dx=ln(k+1)−lnk,所以:
k+11<lnkk+1<k1
这就是调和级数和对数之间最直接的联系。调和和 Hn 可以理解成:用一个个面积为 k1×1 的矩形去近似曲线 y=x1 下方的面积,而真正的曲线面积就是 ∫1nx1dx=lnn。因此 Hn−lnn 本质上可以看作:用矩形近似 1/x 曲线面积时,长期积累下来的误差。

三、γ 的定义与收敛证明
3.1 定义数列 a_n = H_n − ln n
现在定义数列 an=Hn−lnn,也就是 an=1+21+⋯+n1−lnn。计算前几项:a1=1、a10≈0.626383、a100≈0.582207、a1000≈0.577716。继续增大 n,会发现 an 越来越接近 0.577215664901532⋯。于是定义:
γ=n→∞lim(Hn−lnn)
这个 γ 就是欧拉–马歇罗尼常数。注意 γ 本身只是一个常数,严格来说我们不能说「γ 收敛」——真正收敛的是数列 Hn−lnn,它的极限恰好被我们命名为 γ。
3.2 为什么 H_n − ln n 一定收敛:单调性
要证明数列收敛,最常用的工具是单调有界定理:如果一个实数数列单调且有界,它就一定收敛。所以目标就是证明 an 单调递减且有下界。
先证明单调递减。计算 an+1−an:因为 an+1=Hn+1−ln(n+1)、an=Hn−lnn,且 Hn+1−Hn=n+11,所以:
an+1−an=n+11−ln(n+1)+lnn=n+11−ln(1+n1)
接下来利用积分。ln(1+n1)=∫nn+1x1dx,在区间 [n,n+1] 中 x<n+1,所以 x1>n+11,于是:
∫nn+1x1dx>∫nn+1n+11dx=n+11
即 ln(1+n1)>n+11。代回原式得 an+1−an<0,所以 an+1<an,也就是 an 单调递减。
3.3 有下界
还需要证明 an 不会一直减到负无穷,仍然使用积分比较。因为 x1 在每个区间 [k,k+1] 上单调递减,所以 k1>∫kk+1x1dx。从 k=1 加到 k=n:
k=1∑nk1>k=1∑n∫kk+1x1dx=∫1n+1x1dx
右边是 ln(n+1),于是 Hn>ln(n+1),因此:
an=Hn−lnn>ln(n+1)−lnn=ln(1+n1)>0
所以 an 至少有一个下界 0。
3.4 单调有界,必然收敛
现在我们已经证明:an+1<an(单调递减),且 an>0(有下界)。根据单调有界定理,an=Hn−lnn 一定收敛。于是存在某个有限常数 L,使得 limn→∞(Hn−lnn)=L,我们就把这个常数定义为 γ:
γ=n→∞lim(k=1∑nk1−lnn)≈0.577215664901532⋯

四、∞−∞:一个未定式
4.1 两个发散量之差可以是有限数
这里有一个看起来矛盾但非常重要的现象:Hn→∞、lnn→∞,但 Hn−lnn→γ。所以「∞−∞」并不能直接认为是 0、无穷或者「不存在」,它只是一个未定式——两个函数都趋向无穷,并不意味着它们的差也趋向无穷。例如 (n+1)−n=1:虽然 n+1→∞、n→∞,但它们的差始终为 1。
Hn 和 lnn 的情况类似:它们虽然都趋于无穷,但发散的主要部分几乎完全相同,最终只留下一个固定的差 γ。这就是「两个发散量减出一个常数」背后的直觉。
五、H_n 的渐近展开与 γ 的深层含义
5.1 H_n = ln n + γ + o(1)
当 n 很大时,可以近似认为 Hn≈lnn+γ。利用 Euler–Maclaurin 公式,还能得到更精确的渐近展开:
Hn=lnn+γ+2n1−12n21+120n41−⋯
因此 Hn−lnn=γ+2n1−12n21+⋯。当 n→∞ 时,后面的 2n1、12n21、⋯ 全部趋近于 0,于是只剩下 γ。从这个角度看,γ 其实就是调和数渐近展开中的常数项:
Hn=lnn+γ+o(1)
5.2 离散与连续之间的差
γ 还有一个非常漂亮的理解方式。调和和 ∑k=1nk1 是一个离散求和,而 ∫1nx1dx 是一个连续积分。由于 ∫1nx1dx=lnn,所以:
γ=n→∞lim(k=1∑nk1−∫1nx1dx)
因此可以把 γ 理解成离散求和与连续积分之间长期累积留下的有限误差——这也是为什么 γ 会频繁出现在分析学、数论、概率论以及特殊函数中。
六、γ 的有理数之谜与总结
6.1 γ 是有理数还是无理数?
这里还有一个非常著名的问题。我们已经知道 γ=0.577215664901532⋯,但人类目前仍然不知道 γ 是有理数还是无理数:既没有证明存在整数 p,q 满足 γ=p/q,也没有证明这样的整数不存在。更进一步,γ 是否为超越数同样未知。
因此不要把 γ 和另一个常被称为「欧拉常数」的数 e=2.718281828⋯ 混淆:对于 e,我们已经知道它不仅是无理数而且还是超越数;而对于 γ,这些问题至今仍未解决。
6.2 总结
整个逻辑可以浓缩成下面这条路线:
- 调和级数 Hn=1+21+31+⋯+n1 虽然发散(Hn→∞),但它的增长速度与 lnn 非常接近,因为 lnn=∫1nx1dx,而 Hn 正是用单位宽矩形去近似这条曲线下方面积的结果;
- 考虑二者之差 an=Hn−lnn;
- 证明 an+1<an(an 单调递减),同时 an>0(an 有下界);
- 根据单调有界定理,an 一定收敛,于是定义:
γ=n→∞lim(Hn−lnn)≈0.5772156649
最终,对于足够大的 n 有 Hn≈lnn+γ。所以,从某种意义上来说:
调和级数虽然不断向无穷增长,但它比 lnn「多出来」的部分,却最终稳定成了一个有限的常数。
这个常数,就是欧拉–马歇罗尼常数 γ。
参考资料