计算机如何破解长达几百年的数学难题?

在数学中,没有研究人员是在真正孤立的环境中工作研究。即使是那些独自研究的人,也会利用同事和前辈的理论和方法来发展新思想。但是,当一种已知的技术在实践中太难使用时,数学家可能会忽略一些重要的(或者可以解决的)问题。最近,我和几位数学家一起参与了一个项目,使这种技术更容易使用。我们制作了一个计算机程序包来解决一个叫做“s -单位方程”的问题,希望所有种类的数论家都能更容易地解决数学中各种各样尚未解决的问题(下图1所示为中国超级计算机天河二号)。

丢番图方程

在他著作的《算术》中,数学家Diophantus研究了代数方程,这些方程的解必须是整数。碰巧,这些问题与数论和几何都有很大关系,数学家们从那时起就一直在研究它们。为什么只添加整数解的限制?有时,原因是实际的,养13.7只羊或买-1.66辆车是没有意义的。此外,数学家被这些问题吸引,现在称为丢番图方程。这种吸引力来自于他们惊人的困难,以及他们揭示数学本质基本真理的能力。事实上,数学家往往对丢番图问题的具体解不感兴趣。但是当数学家们开发新技术时,他们的力量可以通过解决以前未解的丢番图方程来证明。安德鲁·怀尔斯对费马最后定理的证明就是一个著名例子。

  • 在《算术》中,数学家Diophantus研究了代数方程,这些方程的解必须是整数,图示是《算术》的一小段。图片:Diophantus

皮埃尔·德·费马声称在1637年的一份“速算比赛”,已经解决了丢番图方程x?+ y?= z?,但没有理由。当怀尔斯在300多年后证明这一点时,数学家们立刻注意到了。如果怀尔斯提出了一个可以解决费马问题的新想法,那么这个想法还能做什么呢?数论家们争先恐后地去理解怀尔斯的方法,对其进行概括,并发现新的结果。没有一种方法可以解出所有丢番图方程。相反,数学家们开发了各种各样的技术,每一种都适用于特定类型的丢番图问题,而不是其他问题。因此,数学家根据这些问题的特征或复杂性来分类,就像生物学家根据分类法来分类物种一样。

更细分类

这种分类产生了专家,因为不同的数论家专门研究与丢番图问题不同系列有关的技术,如椭圆曲线、二元形式或图埃-马勒方程。在每个大分类中,都可以定制更精细的分类。数学家发展出不变量(方程中出现的系数的某些组合)来区分同一族中的不同方程。计算一个特定方程的这些不变量很容易。然而,与数学其他领域更深层次的联系涉及到更有挑战性的问题,例如:是否存在具有不变量13的椭圆曲线?或“有多少二进制形式具有不变量27?s单位方程可以用来解决许多更大的问题。S表示与特定问题相关的素数列表,如{2,3,7}。s单位是一个分数,它的分子和分母只由列表中的数字相乘而成。

  • 安德鲁·怀尔斯(右)因其对费马最后定理的解答而获得沃尔夫斯基尔奖。图片:Peter Mueller/REUTERS

在这种情况下,3/7和14/9是s单位,但6/5不是。s -单位方程的表述看似简单:找出所有加1的s -单位对。找一些解,比如(3/ 7,4 /7),可以用笔和纸来做。但关键字是“全部”,这使得问题在理论上和计算上都很困难,怎么能确定所有的解决方案都找到了呢?理论上,数学家们已经知道如何解s -单位方程好几年了。然而,这个过程是如此错综复杂,以至于没有人能真正用手解出这个方程,而且很少有案例得到了解决。这令人沮丧,因为许多有趣的问题已经被简化为“仅仅”求解某个特定的s单位方程。

计算机-解算器工作

然而,情况正在发生变化。自2017年以来,包括我在内的六名北美数论专家一直在为开源数学软件SageMath构建一个S-unit方程求解器。2019年3月3日,我们宣布项目完成。为了说明它的应用,使用该软件解决了一些开放丢番图问题。s -单位方程的主要困难在于,虽然只有少数解存在,但有无穷多个s -单位可能是一个解的一部分。通过结合著名的Alan Baker定理和Benne de Weger精细算法技术,该求解器从考虑中消除了大多数s单位。即使在这一点上,可能还有数十亿个s -单位(或者更多)需要检查。

  • 求解s -单位方程的过程非常复杂,几乎没有人尝试过手工求解。图片:hand.Jat306/shutterstock

程序现在试图使最后的搜索尽可能有效,这种计算s -单位方程的方法已有20多年的历史,但由于计算过程复杂且耗时,使用的很少。以前,如果一个数学家遇到一个她想解的s单位方程,没有自动解的方法。她必须小心地完成贝克、德韦格等人的工作,然后编写自己的计算机程序来进行计算。运行该程序可能需要数小时、数天甚至数周才能完成计算。最后我们希望这个软件能帮助数学家们解决数论中的重要问题,增进他们对数学的本质、美和有效性的理解。