数学家们已经等待了 32 年,以找出第九个戴德金数的值,它是 19 世纪首次发现的数字序列的一部分。今年春天,两个 独立的团队在彼此相隔数周发布的预印本论文中计算出了这个数字。“两个不同的团队在 30 多年后同时做到这一点,真是太巧合了,”德国德累斯顿工业大学 (TU Dresden) 的 Christian Jäkel 说,他在 4 月 3 日,比另一个团队提前三天,在预印本服务器 arXiv.org 上发布了他的计算结果。
戴德金序列中的每一项都是一组函数的计数,这些函数可以分析一组变量,例如 x 和 y 的集合,或 {x, y},并给出真或假的答案。例如,一个检查集合是否包含 x 的函数对于 {x} 和 {x, y} 会回答真,但对于 {y} 会回答假。第 n 个戴德金数,写为 D(n),计算处理最多 n 个变量集合的函数。因此,第二个戴德金数仅计算可以处理 {x, y} 子集的函数,第三个戴德金数计算 {x, y, z} 子集上的函数,依此类推。
为了满足戴德金条件并计入函数总数,真假函数必须遵循某些规则。例如,如果一个函数对于 {x, y} 为真,则它对于 {x, y, z} 和 {x, y, z, w} 也必须为真。换句话说,如果您向真集添加一个元素,它必须保持为真。Lennart Van Hirtum 是 4 月 6 日发布的解决方案的合著者,现在是德国帕德博恩大学的博士生,他建议用一个仅在一个角上不稳固地放置的立方体来想象这个要求。它的角都被涂成白色或红色,第 n 个戴德金数计算的是没有白色点被红色点覆盖的着色数。“任何白色角都不能在其上方有红色角。这是唯一的规则,”他说。
关于支持科学新闻
如果您喜欢这篇文章,请考虑通过以下方式支持我们屡获殊荣的新闻事业 订阅。通过购买订阅,您正在帮助确保有关塑造我们当今世界的发现和想法的具有影响力的故事的未来。
这种特殊的要求使得戴德金数难以计算。否则,您可以简单地计算将真假值分配给集合的所有可能方法,对于 n 个变量的子集,这个数字约为 22^n。这是一个巨大的数字——当 n = 5 时约为 4.3 万亿——但这是一个可以直接计算的数字。相比之下,没有简单的公式来描述戴德金数。
由于涉及庞大的数字,因此戴德金数的计算在历史上一直与技术进步紧密相连。“这是对最先进的计算机技术”以及数学的考验,4 月 6 日发布的计算的作者之一、比利时鲁汶天主教大学 (KU Leuven) 的计算机科学家 Patrick De Causmaecker 说。1897 年,德国数学家理查德·戴德金介绍了戴德金数并计算了前四个,从 D(0) 开始:2、3、6、20。在整个 20 世纪,新的戴德金数断断续续地出现,通常间隔数十年。序列中的第九个数,称为第八个戴德金数 D(8),由已故数学家 Doug Wiedemann 于 1991 年发布。它是 56,130,437,228,687,557,907,788,或大约 5.6 x 1022。
波兰格但斯克大学的计算机科学家 Bartłomiej Pawelski 说:“从历史上看,每 20 到 30 年就会发现一个新的戴德金数。” 这“是一项计算挑战,发现它很有趣。”
De Causmaecker 于 2021 年开始与当时在 KU Leuven 攻读硕士学位的 Van Hirtum 合作研究 D(9),作为后者论文项目的一部分。“在最早的一次会议上,我问 Patrick 他是否认为我们会做到,”Van Hirtum 说。“他说,‘可能不会。’” 正如预测的那样,Van Hirtum 的论文没有包含 D(9) 的计算。他和 De Causmaecker 想出的公式计算量太大了。
然而,Van Hirtum 有想法。“他真的被戴德金数问题迷住了,他无法摆脱它,”De Causmaecker 说。Van Hirtum 想尝试使用一种称为现场可编程门阵列 (FPGA) 的计算机芯片,研究人员可以自定义该芯片以使他们的程序运行得更有效率。他和 De Causmaecker 在帕德博恩大学找到了一个超级计算中心,可以帮助他们开发和运行定制硬件,Van Hirtum 在接下来的一年半时间里无偿地从事该项目——完全是出于对他的想法是否会奏效的好奇心。
2022 年底,研究人员终于准备好运行他们的程序。五个月后,在 3 月 8 日,他们得到了一个数字:286,386,577,668,298,411,128,469,151,667,598,498,812,366,或大约 2.86 x 1041。但他们不能确定它是正确的。宇宙射线——来自太空的辐射粒子——会干扰 FPGA 芯片并改变计算结果。“我们计算出有 25% 到 30% 的可能性发生了这种情况,”Van Hirtum 说。为了确保他们的计算是正确的,他们让他们的程序再运行了一次。如果他们再次得到相同的数字,他们几乎可以肯定它是正确的。他们预计至少还要再等五个月才能获得保证。
但在 4 月 3 日,Jäkel 在网上发布了他的论文,分享了他的 D(9) 值——并在过程中证实了他们的值,这给了他们一生中最惊喜的时刻。Pawelski 说,两个团队“都找到了大规模并行化计算的方法”。“这是一个很棒的想法。”
Jäkel 是德累斯顿工业大学的一名研究生,白天的工作是软件开发人员,自 2017 年以来,他一直在晚上和周末研究这个问题。他的方法与 Van Hirtum 和 De Causmaecker 的方法截然不同。他为 D(9) 设计了一个使用矩阵的公式——矩阵是可以相乘和相加的数字数组。“这种矩阵乘法是非常非常成熟的技术,”Jäkel 说。“这是计算机科学中研究得最好的问题。” 因为他的公式针对传统计算机硬件进行了优化,所以他不需要超级计算机。他的程序于 2022 年 3 月开始运行,大约花了一个月的时间才得出 D(9) 的值。
Jäkel 在第一次计算出他的值时,也不确定它的正确性。他不需要担心宇宙射线,但他无法证明他的程序没有某种错误。“我尽我所能做了我所能做的一切,”他说。“我非常仔细地观察了这次计算。” 但是,除非想出不同的方法,否则不可能消除所有疑虑。直到 Van Hirtum、De Causmaecker 及其合著者发表了他们的论文。
“我很震惊,或者说是惊讶——也很高兴。因为我已经有了这个数字,而且我以为重新计算它需要十年左右的时间,”Jäkel 说。“三天后,我得到了确认。”
第十个戴德金数很可能还需要等待很长时间,它肯定比 D(9) 大很多倍。“我认为可以肯定地说,第十个戴德金数不会很快被计算出来,我说的很快是指未来几百年,”Van Hirtum 说。然而,De Causmaecker 更乐观。“我希望我能活到第十个戴德金数被计算出来的那一天,”他说。