全体正整数和为-1/12 ?

全体正整数和为-1/12 ?

前言

然则天下之事,但知其一,不知其二者多矣,可据理臆断欤?

最近在看到了“全体正整数之和为 -\frac{1}{12} ”这个经典问题,不知怎的,突然想到了初中课本上的这句话。

其实这个问题在我很久之前学竞赛时就遇到过,但当时也并没能搞懂。直到后来学了复变函数、做了与之相关的大作业之后才算明白了其中的原理。

这个问题真正解释起来要用到的复变积分、特殊函数,相对高数来讲还是比较难的,所以很多人可能不够了解,同时也有人对此讳莫如深,用很多似是而非的推导来作“证明”, 以至于有些人甚至错把它当成了一个正确的命题 。在这篇文章中,我将对 -\frac{1}{12} 到底是怎么来的,以及可能的推导方式,作出尽可能详细、浅显易懂的介绍与评注。

参考:方法1、2为回忆竞赛集训时蔡某星老师的课程内容
方法3来自《特殊函数概论》(王竹溪,郭敦仁著)第3章第7 14 15小节

方法0:求和

用高数中的方法,直接求和、取极限,得到全体自然数的和显然是无穷大:

\sum_{n=1}^{\infty} n=\lim_{N\to\infty}\sum_{n=1}^{N}n =\lim_{N\to\infty} \frac{N(N+1)}{2}=\infty

这是完全正确的,甚至应该是学过高等数学之后得出的常识。得出 -\frac{1}{12} 才很奇怪好吧~
下面我们看看这个奇怪的数到底来自哪里。

方法1:裂项相消

\begin{align*} x&=1+2+3+4+\cdots\\ &=1-2+3-4+\cdots+2(2+4+6+\cdots)\\ &=1-2+3-4+\cdots+4x\\ \end{align*}

移项,错位相加:

\begin{align*} -3x=&1-&2+ &3-&4+&\cdots\\ -3x=&&1-&2+&3-&\cdots\\ \downarrow\\ \end{align*} \\-6x=1-1+1-1+\cdots

继续错位相加:

\begin{align*} -6x&=1&-1&+1&-1&+\cdots\\ -6x&=&1&-1&+1&-\cdots\\ \downarrow \end{align*} \\-12x=1\rightarrow x=-\frac{1}{12}

不过这番推导问题很大,级数都不收敛,错位加减得到的结果意义不大。

方法二:取可求和数列的极限

引入很小的正参量 \epsilon ,我们计算的求和是

f(\epsilon)=\sum_{n=1}^{\infty}ne^{-n\epsilon}

\epsilon\to 0 的极限。
先把函数化为有限形式,再对 \epsilon 作展开:

\begin{align*} f(\epsilon)&=\sum_{n=1}^{\infty}ne^{-n\epsilon}\\ &=-\frac{\partial}{\partial \epsilon}\sum_{n=1}^{\infty}e^{-n\epsilon}\\ &=\frac{e^{\epsilon}}{(e^\epsilon-1)^2}\\ &\sim \frac{1+\epsilon+\epsilon^2/2+O(\epsilon^3)}{\epsilon^2(1+\epsilon/2+\epsilon^2/6+O(\epsilon^3))^2}&\sim \frac{1}{\epsilon^2}-\frac{1}{12}+O(\epsilon) \end{align*}

正如我们所期待的,这个极限值是无穷大,不过除去渐进的发散项之外,我们惊奇地发现,它还有 -\frac{1}{12} 的常量。

方法三:黎曼zeta函数

\Gamma 函数与 \zeta 函数,解析延拓

黎曼 \zeta 函数的原定义为:

\zeta(s)=\frac{1}{1^s}+\frac{1}{2^s}+\frac{1}{3^s}+\cdots=\sum_{n=1}^{\infty}n^{-s}

它是一个复变函数。代入 s=2 时,它是收敛的:

\zeta(2)=\frac{1}{1^2}+\frac{1}{2^2}+\cdots=\frac{\pi^2}{6}

s=1 时,因为有 1+\frac{1}{2}+\frac{1}{3}+\cdots+\frac{1}{N}\sim \ln N ,所以级数发散。
由于求和的形式不容易估计,我们可以用积分来近似替代求和, \zeta(s) 就变成了:

\int_{1}^{\infty}x^{-s}dx=\left.\frac{x^{-s+1}}{-s+1}\right|_{x=1}^{\infty}

可以看到当s取实数时, s>1 取复数时的收敛域为 Re(s)>1 我们想求的"全体正整数和"是 \zeta{(-1)} ,但对应 s=-1 并不在收敛域内,该怎么办?这时我们需要扩充 \zeta 函数的定义,把它的定义域延拓到全复平面上。这叫做 解析延拓
不过在延拓之前,我们需要先看另一个函数: \Gamma 函数。

\Gamma 函数是阶乘运算在复数域的推广:

\Gamma(x)=\int_{0}^{\infty}t^{x-1}e^{-t}dt

不过这个定义看起来和阶乘一点关系也没有啊?
我们代入 x=1 ,得到 \Gamma(1)=1
利用分部积分法容易证明:

\Gamma(x)=(x-1)\Gamma(x-1)

所以 x 取整数时 \Gamma(x)=(x-1)! ,这就和阶乘有联系了。
但即便如此它的定义域也不够大,在 Re(x)<0 的地方没有定义。
考虑如下积分:

I=\int_{\infty}^{(0+)}e^{-t}t^{z-1}dt

积分上下限表示的围道如下图所示:


将它取成 \infty\to\delta,\delta\to\delta e^{2\pi i},\delta e^{2\pi i}\to \infty e^{2\pi i} 三段,积分:

I=(e^{2\pi iz}-1)\int_0^\infty e^{-t}t^{z-1}\mathrm dt+\int_{\delta}^{\delta e^{2\pi i}}e^{-t}t^{z-1}\mathrm dt

后一项在 \delta\to 0 时趋于0,所以 \Gamma 函数可以写成:

\Gamma(z)=-\frac{1}{2i\sin\pi z} \int_{\infty}^{(0+)}e^{-t}(-t)^{z-1}\mathrm dt

这时 z 的取值不再受到 Re(z)>0 函数的解析延拓。

\zeta 函数的解析延拓,函数式方程

我们设 \zeta(s,a)=\sum_{n=0}^{\infty}(n+a)^{-s} ,则 \zeta(s)=\zeta(s,1)
利用换元,容易算出:

\int_{0}^\infty x^{s-1}e^{-(n+a)x}\mathrm dx=(n+a)^{-s}\Gamma(s)

两边对n求和:

\Gamma(s)\zeta(s,a)=\int_0^{\infty} x^{s-1}\sum_{n=0}^{\infty}e^{-(n+a)x}\mathrm dx=\int_{0}^\infty x^{s-1}\frac{e^{-ax}}{1-e^{-x}}\rm dx

用同样的方式,我们可以把 \zeta(s,a) 进行解析延拓:

\Gamma(s)\zeta(s,a)=-\frac{1}{2i\sin\pi s}\int_{\infty}^{(0+)}\frac{(-z)^{s-1}e^{-az}}{1-e^{-z}}\mathrm dz\\ \zeta(s,a)=-\frac{\Gamma(1-s)}{2\pi i} \int_{\infty}^{(0+)}\frac{(-z)^{s-1}e^{-az}}{1-e^{-z}}\mathrm dz

这就是延拓后的定义,这时它的定义域扩大到除了少数奇点之外的整个 s 平面。令

f(z)=\frac{(-z)^{s-1}e^{-az}}{1-e^{-z}}

考虑圆心为原点,半径 R=(2N+1)\pi 的圆 C_R ,和图5中围道连接起来构成的围道 C ,可以证明 C_R 上的积分是 0 ,因此 C 上积分等于围道中所有奇点的留数和:

\int_C f(z)\mathrm{d} z = \int_{C_R}f(z)\mathrm dz +\int_{(2N+1)\pi}^{(0+)} f(z)\mathrm dz \\ =\int_{(2N+1)\pi}^{(0+)} f(z)\mathrm dz =2\pi i \sum_k\mathrm{Res}f(z_k)

f(z) 的奇点为 z_k=2\pi i\cdot k,k=\pm 1,\pm 2,\cdots ,取 N\to \infty ,等号右端所有留数的和为

\begin{align*} \sum_k\mathrm{Res}f(z_k) &= \sum_{n=1}^{\infty}[] \mathrm{Res }f(2\pi in)+\mathrm{Res} f(-2\pi i n)]\\ &=\sum_{n=1}^{\infty}(2\pi n)^{s-1}\cdot2\sin(\frac{\pi s}{2}+2n\pi a) \end{align*}

于是

\zeta(s,a)=\frac{2\Gamma(1-s)}{(2\pi)^{1-s}} \sum_{n=1}^{\infty} \frac{1}{n^{1-s}}\sin(\frac{\pi s}{2}+2n\pi a)

a=1 ,作代换 s\to 1-s

\zeta(1-s)=2(2\pi)^{-s} \Gamma(s)\cos\frac{\pi s}{2}\zeta (s)

这就是 \zeta 函数的 函数式方程 ,利用这个方程,我们可以计算 解析延拓后 \zeta 函数的值。比如说,代入 s=2 ,由 \zeta(2)=\sum_{n=1}^\infty \frac{1}{n^2}=\frac{\pi^2}{6} :

\zeta(-1)=2\cdot (2\pi)^{-2} \Gamma(2)\cos\pi\cdot \zeta(2)=-\frac{1}{12}

这就是 -\frac{1}{12} 的来源。

后记

所以,自然数的和真的是 -\frac{1}{12} 喽?
并不是!只能说二者存在千丝万缕的联系罢了。

注意,我们对ζ函数做了解析延拓,在 Re(z)>1 的区域里,解析延拓后的定义 -\frac{\Gamma(1-s)}{2\pi i} \int_{\infty}^{(0+)}\frac{(-z)^{s-1}e^{-az}}{1-e^{-z}}\mathrm dz 和级数和定义 \sum_{n=1}^{\infty}(n+a)^{-s} 是相同的;但在 Re(z)<1 的区域里,级数和并没有定义,我们用延拓后算出来的数去解释延拓前的定义就显得非常无力。

如果一个人没有复变函数这些知识,只要知道这个和发散就可以了;然而既给出了 -1/12 这个结果,却不去介绍其背后的理由,或者随便用漏洞百出的计算敷衍别人,就不是一个负责任的科普态度。

编辑于 2022-07-03 17:57

文章被以下专栏收录