作者:ΔδDelta\Delta\delta Delta
审核:白烟

  曾有一篇名为《勾股:2.013》的科幻小说在多年前的网络上风靡,甚至直至今日也会有人想起这篇文章。作品末尾有一段话引人遐想:

“不要从我们的角度去评价他们的智慧,也许我们的文明,也在某个更大的扭曲时空之中呢——你难道不觉得,圆周率 3.1416 ,也是个非常古怪的数吗?”

  事实上,这篇小说存在的漏洞颇多,但其文学价值不应被否定,它也确实激发了不少人学习科学以及数学的兴趣。直至今日,我们仍能借此为引,来简单科普一下关于圆周率值的问题。

  回首这句令人浮想联翩的话语,圆周率 π=3.1415926\pi = 3.1415926 \dots 真的十分古怪吗?这个数字真的是因为扭曲时空才导致的吗

  两个问题都是 否定 的。实际上,无理数并不应因其没有规律可循就在美学上被人诟病——这也太不公平了。难道有人能给任何艺术总结出来一个规律吗?(场外音:AI绘画!!!这不就是找到了艺术的“规律”才能用机器画出来的吗?) 但定义这些AI的参数也是没有规律的呀?3202年了,神经网络的算法黑箱应该都知道吧?

  第二个问题就更扯了。众所周知,我们的 3.143.14\dots 是在平面的圆上计算出来的。这个平面是什么?是数学上的二维欧几里得空间,而定义这个空间只需要在实数集里两两取数,并给出计算这些数对 (x,y)(x, y) 之间“距离”的公式即可。任你时空曲率九曲十八弯,改变的也是物理“平面”:比如生活中我们觉得很平的桌子,其实是弯曲的,只不过时空曲率让它看起来像平的,.etc。但数学上的平面是被定义出来的,现实中存在的一切事物都不能也不可能改变数学概念。

  “解铃还须系铃人”,如果真的想改变圆周率,那我们只能从数学定义上入手。在这里,我们仍然认为接下来的讨论都是在实平面内的圆上进行的,也就是确定点位置的数字只有两个,而且这两个数字都从实数集中取得。那么还有哪里能改动呢?

  没错,别忘了我们还要给出计算“距离”的公式。在读研究生2年级时,我们接触过著名的两点 (x1,y1),(x2,y2)(x_1, y_1), (x_2, y_2) 之间距离公式

d2=((x1x2)2+(y1y2)2)12.d_2 = ((x_1 - x_2)^2 + (y_1 - y_2)^2 )^{\frac{1}{2}}.

  同时,早在小学1年级老师就已经教过我们计算机中常用的曼哈顿距离(Manhattan Distance),即两点在竖直方向上的差值加上在东西方向上的差值,写成公式就长这样:

d1=x1x2+y1y2.d_1 = |x_1 - x_2| + |y_1 - y_2|.

  刚听完“无规律不应在美学上被诟病”的你并不是很服气,马上开始找优美的规律了,并且自信满满地给出了关于 pp 的距离公式:

dp=(x1x2p+y1y2p)1p.d_p = (|x_1 - x_2|^p + |y_1 - y_2|^p )^{\frac{1}{p}}.

  对于你这种连猜带蒙的莽撞结论,我只能说…:

image.png

  没错,这就是你在幼儿园大班睡过去的那节课老师所讲的内容。这个能够计算距离的函数(泛函),叫做“ pp -范数”。

  你接下来要说的是:这个距离公式如何改变圆周率呢?还是看看远处的圆吧家人们。

  更改距离公式后,首先影响到的是所谓“圆”的形状。我们不妨定义圆心在原点,半径取 11 ,那么约束圆的方程就是:

Cp:(xp+yp)1p=1.C_p : (|x|^p + |y|^p )^{\frac{1}{p}} = 1.

  在我们比较熟悉的曼哈顿距离下,“圆”变成谁的形状了呢?

image.png

  变成了一个旋转 45°45\degree 的正方形!按照这个距离定义,它的周长C1=a×(1+1)=8C_1 = a \times (1 + 1) = 8,那么圆周率记作π1=C12=4\pi _1 = \frac{C_1}{2} = 4!不仅不是原先的 3.143.14\dots ,甚至连无理数都不是,摇身一变成了整数。至此,我们已经成功地解答了标题的问题:圆周率并不一定是 3.143.14\dots

  更进一步地,我们想知道在其它范数下圆周率的值。先前说到的曼哈顿距离是 p=1p = 1 的情况,那 pp 可以比 11 更小吗?讨论这件事之前,我们先要回忆被我们抛弃多年的几何学知识:三角形两边之和大于第三边。在这里我们所说的边长是定义在 p=2p = 2 的范数下计算出来的,然而在 p>1p > 1 的情况下,这个几何学常识仍然成立。当 p=1p = 1 时,三角形两边之和等于第三边,我们秉持着“差不多得了”的思想,认为11-范数也可以参加party;但是,p(0,1)p\in (0,1) 是不是有点过分了?两边之和比第三边还短,也就是说我直线走到目的地还不如绕路走一圈方便呗?所以在规范的范数里,我们认为 p1p ≥ 1,即范数要满足三角不等式f(x+y)f(x)+f(y)f(x + y) ≥ f(x) + f(y)

  小了不行,看来大家都喜欢大的。如果让 pp 越来越大,直到趋近正无穷呢?令 d=max{x1x2,y1y2}d = \max \{|x_1 − x_2|,|y_1 - y_2| \} ,并回想在语文课上学过的极限知识,显然有:

d=(dP)1p<(x1x2p+y1y2p)1p<(2dp)1p=21pd,d = (d^P)^{\frac{1}{p}} < (|x_1 - x_2|^p + |y_1 - y_2|^p)^{\frac{1}{p}} < (2d^p)^{\frac{1}{p}} = 2^{\frac{1}{p}}d,

  又因为

limp21pd=d,\lim_{p \to \infty} 2^{\frac{1}{p}}d = d,

  根据夹逼原理,有

limpdp=limp(x1x2p+y1y2p)1p=max{x1x2,y1y2}.\begin{aligned} \lim_{p \to \infty} d_p & = \lim_{p \to \infty}(|x_1 - x_2|^p + |y_1 - y_2|^p)^{\frac{1}{p}}\\ & = \max{\{ |x_1 - x_2|, |y_1 - y_2|\}}.\end{aligned}

  意思是,\infty-范数下的距离等于竖直方向之差和水平方向之差中较大的那个,就是从 x1x2,y1y2|x1 − x2|, |y1 − y2| 中取较大的值作为距离的值。综上所述,圆的方程如下:

Cp:max{x,y}=1.C_p : \max \{|x|,|y|\} = 1.

  而根据方程,我们得到的图形如下。

image.png

  在\infty-范数下,这个“正方圆”(场外音:什么鬼名字)的边长是 22 ,则
周长C=8C_{\infty} = 8,圆周率 π=C2=4\pi_{\infty} = \frac{C_{\infty}}{2} = 4

  等等!你刚才,说了 4 对吧?! 注意到,在11-范数和\infty-范数下,圆周率都是 44 ;而我们所熟悉的欧几里得空间,也就是22-范数的情况下,圆周率等于3.14<43.14\dots < 4。随着pp-范数中 pp 的变化,圆周率会形成一个关于 pp 的函数π(p)\pi (p);为了防止和隔壁高斯研究的素数计数函数 π(n)\pi (n) 搞混,我们还是记作 πp\pi_p 吧。坚信美学的你认为,这个函数 πp\pi_p 一定是连续的,并且是从 p=1,πp=4p = 1, \pi_p = 4 单调递减,经过 p=2,πp=3.14p = 2, \pi_p = 3.14\dots ,到达一个极小值——同时也是最小值,然后再单调递增,一直到无穷远处趋近于 44

  不得不说,李云龙说得没错,你又猜对了。并且,你所说的最小值,刚好在 p=2p = 2 时,取到我们熟知的3.14159263.1415926\dots。接下来的内容比较简单,都是胎教时期耳边重复的一些陈词滥调,大家没兴趣的可以跳过。利用一些数学小技巧,我们可以简单地计算出圆周 CpC_p 上两个无限接近的点的微元距离:

ds=(dxp+dyp)1p,\mathrm{d}s = (|\mathrm{d}x|^p + |\mathrm{d}y|^p)^{\frac{1}{p}},

  则圆周率

πp=12Cp(dxp+dyp)1p=12Cp(1+dydxp)1pdx.(原式)\pi_p = \frac{1}{2}\int\limits_{C_p}(|\mathrm{d}x|^p + |\mathrm{d}y|^p)^{\frac{1}{p}} = \frac{1}{2}\int\limits_{C_p}\left(1 + \vert \frac{\mathrm{d}y}{\mathrm{d}x}\vert ^p\right)^{\frac{1}{p}}|\mathrm{d}x|.\tag{原式}

  取第一象限 yy 轴和直线 y=xy = x 所夹的 18\frac{1}{8} 圆弧,此时 x0,y0x ≥ 0, y ≥ 0,满足方程 (xp+yp)1p=1(x^p + y^p)^{\frac{1}{p}} = 1 ,即 xp+yp=1x^p + y^p = 1 ,有

d(xp+yp)=pxp1dx+pyp1dy=pxp1dx+p(1xp)p1pdy=0.\begin{aligned} \mathrm{d}(x^p + y^p) & = px^{p-1}\mathrm{d}x + py^{p-1}\mathrm{d}y\\ & = px^{p-1}\mathrm{d}x + p(1 - x^p)^{\frac{p-1}{p}}\mathrm{d}y = 0.\end{aligned}

  一眼整理得

dydx=xp1(1xp)p1p=(xp1)1p1\frac{\mathrm{d}y}{\mathrm{d}x} = -\frac{x^{p-1}}{(1-x^p)^{\frac{p-1}{p}}} = -(x^{-p} - 1)^{\frac{1}{p} - 1}

  令 y=(1xp)1p=xy = (1 − x^p)^{\frac{1}{p}} = x ,得 x=21px = 2^{-\frac{1}{p}} 即积分上限。

  代入,则原式 ==

4021p(1+xp11p)1pdx.4\int_{0}^{2^{-\frac{1}{p}}}\left(1 + |x^{-p} - 1|^{1-p}\right)^{\frac{1}{p}}\mathrm{d}x.

  p=1p = 1 时,这个积分很显然是 π1=4012(1+1)dx=4\pi_1 = 4\int_0^{\frac{1}{2}}(1 + 1)\mathrm{d}x = 4

  p=2p = 2 时,被积函数经过简单变形,成为大家很熟悉的反三角函数导数,即 π2=402211x2dx=4arcsinx022=π\pi_2 = 4\int_0^{\frac{\sqrt{2}}{2}}\frac{1}{\sqrt{1-x^2}}\mathrm{d}x = 4\arcsin x|_0^{\frac{\sqrt{2}}{2}} = \pi

  pp \to \infty 时,积分上限趋近于 11x[0,1](1xp1)p10x \in [0,1] \Rightarrow \left(\frac{1}{|x^{-p} - 1|}\right)^{p-1} \rightarrow 0,即被积函数趋近于 11π=4π_{\infty} = 4。在该情况下,你可以思考一下为什么当初我们不选择第一象限的 14\frac{1}{4} 圆弧计算。

提示: 如何处理 (1Δx,1](1-\Delta x, 1] 这一段的积分呢?

  好了好了,之前跳过的同学到这里可以停下来了。我们刚刚通过比较轻松愉快的计算,得到了 πp\pi_p 关于 pp 的函数表达式,验证了之前得到的 p=1,2,p = 1, 2, \inftypp-范数下的圆周率。接下来,我们要通过该表达式,得到 πp\pi_p 的函数图像。然而,取其它值的 pp 并不太好人为计算,只能祭出数值积分这个大杀器,利用计算软件逼近的近似数画出如下图像。

image.png

  这张图取自 Joseph B. KellerRavi Vakil 关于pp-范数下圆周率计算的论文。至于我为什么不自己画,那就得问问神奇的mathematica了。先前计算积分的过程中,mma跑了半个多小时,给了我下面这个结果。

image.png

  我:?

  还是直接拿来主义吧。

  从这幅图上我们可以看出,πp\pi_p 是一个从 (1,4)(1, 4) 开始递减,在 p=2p = 2 时取得最小值,接着不断增大趋近于 44 的连续函数,这验证了我们之前的猜想。而每一个p[1,2]p \in [1, 2],都有 q[2,+)q \in [2, +\infty),使得 πp=πq\pi_p = \pi_q 。事实上,只要满足1p+1q=1\frac{1}{p} + \frac{1}{q} = 1,就有 πp=πq\pi_p = \pi_q 。关于此,我确信已发现一种绝妙的证法,可惜已经接近尾声,这里空白的地方太小,我还是写到参考文献[1]里吧。

  本次科普,我们不仅找到了改变圆周率的方法,还画出了圆周率变化的函数图像。逐渐理解一切之后,再来回首这些拿着数学定义当噱头胡乱改变的小说,是不是感觉到sometimes naive了呢?

参考文献
[1] Joseph B. Keller and Ravi Vakil, πp, the value of π in ‘p.
[2] C. L. Adler and J. Tanton, π is the minimum value of Pi, College Math. J. 31 (2000)102–106