黎曼假设的秘密
黎曼zeta函数的原始定义是下面的无穷级数
zeta(s)=1+1/2^s+1/3^s+…
自变量s是一个复数。当且仅当s的实部大于一时,这个无穷级数收敛。因此,需要把这个无穷级数解析延拓到s的整个复平面。也就是要找到另一个函数,在s的实部大于一时,它与这个无穷级数恒等,在s的实部小于或等于一时,除了奇点外,它收敛。
图一,s复平面的定义。
黎曼严格地推导出了一个解析延拓,它的定义域为s的整个复平面。s=1是它的一个奇点。在s=-2, -4, -6,…时,这个延拓的值为零,被称为平凡零点。根据图一的定义,s=1/2+it被称为临界线。黎曼的这个解析延拓就是图二中的公式(一)。从公式(一)可推导出众所周知的函数方程,也就是说,公式(一)与黎曼zeta函数的函数方程完全等同。黎曼把临界线方程s=1/2+it代入公式(一),对右边的两项做了非常巧妙的合并后就得到图二中的公式(二)。
图二,黎曼zeta 函数的解析延拓公式。
公式(一)和公式(二)都是黎曼推导的原始公式。
公式(一)是黎曼zeta函数在s的整个复平面上的一个解析延拓。
公式(二)右边可以展开成t的平方的无穷幂级数。因此,黎曼觉得这个t的平方的无穷幂级数有无穷多个零点,被称为非平凡零点。也就是说,黎曼zeta函数在临界线上有无穷多个非平凡零点,这就是黎曼假设。重复一遍,黎曼基于他自己对公式(二)的判断,作出了黎曼假设。然后,赋予黎曼假设一个重要的意义,那就是,对非平凡零点在临界线上的分布的研究,将得到有关素数分布的重要结果。
公式(二)右边并不是一个非常复杂的表达式。只要应用樊映川书中的微积分知识,直接对公式(二)进行变换,或者先对公式(一)进行变换,再把s=1/2+it代入,都不难得到图二中的公式(三)。
公式(三)的意义比较明显。公式(三)右边的积分就是函数z(x)在[0, ∞]区间上的富里叶变换的实部。函数z(x)在[0, ∞]区间是x的单调衰减函数,从x=0时的最大有限值,单调衰减到x=∞时的零值。在|t|<∞的范围内,公式(三)右边的积分值永远是大于零的有限值。显然,黎曼zeta函数在临界线上没有零点。那么,通过非平凡零点在临界线上的分布来研究素数分布是行不通的。
通过无穷幂级数展开来推测一个函数有没有零点,并不可靠。有的无穷幂级数只不过是无零点函数的一个无穷幂级数展开。比如,乍看之下也会觉得无穷幂级数L(t)有无穷多个零点
L(t)=1/a^2-t^2/a^4+t^4/a^6-t^6/a^8+…
其中a是一个非零的实常数。其实,这个无穷幂级数只不过是无零点的函数L(t)按t的平方所作的无穷幂级数展开。
L(t)=1/(t^2+a^2)
尽管黎曼zeta函数在临界线上没有零点,但是根据Riemann-Siegel公式还算出了不少的零点。首先,用一个相位因子乘以临界线上的黎曼zeta函数来定义Riemann-Siegel Z函数,再把用无穷级数定义的黎曼zeta函数带入Z函数。由于用无穷级数定义的黎曼zeta函数在临界线上不收敛,所以只好取前面的不超过(t/(2*pi))^0.5项的和,最后再加上一个误差项,便是Riemann-Siegel公式。
用有限级数来代替不收敛的无穷级数,也就是只取这个无穷级数的前面的有限项来作计算称为截肢(truncation),其结果会产生虚假的零点(artifacts)。黎曼zeta函数的无穷级数定义在临界线上不收敛,如果只取它前面的有限项,它就变成是收敛的,就会有零点。以公式(三)为例,截肢就是把积分上限从∞变成一个有限值,结果是算出的积分会随t振荡,也会有零点,这些都是因为截肢引起的虚假现象。