打开网易新闻 查看更多图片

偶然看到一个数学视频,让我感到震惊,视频中介绍的一个我从未听说过的定理。这个定理的美妙之处在于,尽管它已经超过2500年未被发现,但这并不是因为它难以证明,而是因为之前没有人注意到其中的模式。这让我意识到,即使是深入研究数学的人,也可能对自己所热爱的领域内存在的知识一无所知。这让我更加确信,知识的海洋是无边无际的,即使是在古老的数学领域中,仍然有着无数未被发现的宝藏等待着我们去探索。这种发现新知的过程既是挑战也充满了乐趣。

这个定理非常简单,简单到连学生都能够轻松理解。但是,尽管其原理直观易懂,关于它的深入了解却相当有限。这种基本而简单的数学知识,长时间以来一直未被人们注意,直到20世纪中叶,一个名为阿尔弗雷德·莫斯纳的数学家做出了被认为是开创性的发现。

让我们从一些非常简单的情况开始。考虑奇数自然数的部分和,即

1 = 1,

1+3 = 4,

1+3+5 = 9,

1+3+5+7 = 16,

1+3+5+7+9 = 25。

你发现规律了吗?得到的是平方数,所以奇数的部分和是平方数!古希腊人知道这一点,他们甚至提供了这一发现的一个视觉证明。

在上图中,彩色的球代表前4个奇数,我们清楚地看到前几个奇数的和给出了一个平方数。

莫斯纳采取了一个独特的方法来处理某个已知的数学概念。他不仅仅是从另一个角度重新考虑了这个概念,而且还采用了一种创造性和系统化的方法去重构这个概念。这个过程类似于编制算法,意味着他通过设定一系列明确的步骤和规则,以一种几乎可以编程的方式来深入探讨和论证数学理论。他对上述的构造如下:

想象从所有的自然数开始: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,…

然后每隔1个数字移除1个数字,即得到的是奇数序列。所以新的数字序列是: 1, 3, 5, 7, 9, …

并取部分和得到平方数1, 4, 9,...

但当我们使用这种方法时,它更容易泛化(这是数学家喜欢做的事情)。

  • 现在再次取所有的自然数,每隔2个数字移除1个数字,得到数字序列: 1, 2, 4, 5, 7, 8, 10, 11, 13,…
  • 取部分和得到一个新的序列: 1, 3, 7, 12, 19, 27, 37, 48, 61,…
  • 再次,每隔1个数字移除1个数字得到: 1, 7, 19, 37, 61,…
  • 再次取部分和得到: 1, 8, 27, 64, 125,…
  • 你认出这些数字了吗?它们是立方数!1=1³, 8=2³, 27=3³,…

这个计算可以在以下图像中构建:

打开网易新闻 查看更多图片

这个模式继续下去。如果我们开始时从自然数中去掉每第n个数字(每隔1个数字移除1个数字,取部分和形成一个新序列,从该序列中去掉每第n-1个数字,并取部分和,去掉第n-2个数字等等,最终会得到一个由原数n的各个幂组成的数列

我怎么从没听说过这个?如此简单,如此美丽。

这才刚刚开始,事实证明,这里还有更多的东西可以发现。例如,如果你开始时移除其他有趣的数字序列,那么会产生什么序列呢?有没有一个通用的模式?

在上图中,三角数(1,3,6,10,15,21)从自然数中被移除,得到

取部分和得到:

打开网易新闻 查看更多图片

接着,移除第下标为三角数的数,得到:

继续取部分和得到:6,24,50,96,154,225,326

最终,每个序列的第一个数字为:1, 2, 6, 24, 120, …,这些就是阶乘,即2 = 2⋅1, 6 = 3⋅2⋅1, 24 = 4⋅3⋅2⋅1等等。

注意,三角数是形式为1+2+3+⋅⋅⋅+n的数字,它们被转换为形式为1⋅2⋅3⋅⋅⋅n的数字。这是巧合吗?

还要注意,如果我们移除形式为n, 2n, 3n, 4n, … 的数字,其中n > 1,那么输出将是1^n, 2^n, 3^n, 4^n, …,所以这里输入和输出之间有某种指数关系。看来一般而言,如果我们将输入序列中的每个数字乘以一个数m,输出序列中的元素都将变为提升到m的幂。

实验

为了测试这个想法,我用Python编写了一个程序,能够根据要删除的输入数字序列输出这些序列。我甚至考虑过除加法之外的其他运算。

事实证明,如果从自然数中开始移除平方数,即形式为n²的数字,那么会得到一个输出2, 12, 144, 2880, … 这些是形式为n! (n+1)!的数字。

相反,如果你移除序列2, 6, 12, 20, 30, 42,… 即形式为n(n+1)的数字,那么你会得到序列1, 4, 36, 576, 14400,… 这些是形式为(n!)²的数字。

所以看起来这里存在某种双重关系。另一方面,鉴于我们之前的发现,阶梯结果并不令人惊讶,因为形式为n(n+1)的数字只是三角数乘以2。

通过使用上述程序,我能够发现几个其他有趣的关系。包括:

  • 如果输入序列是{2^k} = {1, 2, 4, 8, 16, 32, …},那么输出序列似乎是{3, 8, 60, 3456, 11612160,…},这是n阶二叉树的独立集合数量。
  • 如果选择移除五边形数,即形式为n(3n-1)/2的数字,那么会得到一个形式为(n!)²(n+1)!的数字序列。
  • 如果输入序列是四面体数,即前几个三角数的和,那么输出序列是超阶乘,即前几个阶乘的乘积。
  • 如果输入序列是方锥数1, 5, 14, 30, 55, 91, …,那么输出序列由某些n×n矩阵的行列式组成。

最后

在反思古代数学家的工作时,我认识到他们未能证明所有数学情况的原因是,他们的数学思维被限制在了三个维度之内。他们将数字视为与真实世界的几何形状直接相关,并且没有探索超过立方数的更高次幂。虽然他们的数学研究没有延伸到这些更高的维度,但从他们的立场来看,如果他们在数列中考虑去除每隔两个数后的第三个数,他们可能会注意到这些数与构成立方体的层级结构有关。这种结构在几何上可以解释为向立方体添加新的层,就像给立方体增添外壳一样。尽管如此,他们对数的这种三维几何理解在当时已经是相当先进的了。