晓查 发自 凹非寺
量子位 报道 | 公众号 QbitAI
大家好,我是东哥。看到一篇有意思的数学题,和大家分享一下,再次感受数学的神奇![](http://mmbiz.qpic.cn/sz_mmbiz_png/NOM5HN2icXzwDsGjQBULDDibIgBAD4SK4tcQC74s96Euicic4Bb7NQNUzL2ON1wiaLLH9tib5ArdHywqULAPO64IYIcA/640?wx_fmt=png)
你在看到标题的时候,一定会想:
如果再多算几步,你还能发现4、4、-5也是一组整数解。注意审题,以上只是方程x³+y³+z³=3的前两组整数解,第3组整数解是多少,你知道吗?1953年,数学家Louis Mordell提出一个疑问:这个第3组整数解,它存在吗?因为这3个数远远超出了长整型的范围,但数学家还是动用了40万台电脑把答案找出来了。当然,他们并非暴力搜索。这时候数学的作用就来了:它能为你提供算法,告诉你搜索范围,大大缩小搜索空间。一个正整数能否表示成三个整数的立方之和(x³+y³+z³=k),关于它的每次发现都能引起不小的轰动。三个立方数之和
1992年,数学家Roger Heath-Brown提出了一个猜想:对于一个正整数k,如果它除以9的余数不是4或5(k不等于9n±4),那么k就可以表示成三个整数的立方之和。对于k小于100的情况,2019年之前只有k=33、42没有找到整数解。33 = 8866128975287528³ + (-8778405442862239)³
+ (-2736111468807040)³
2019年9月,麻省理工的Andrew Sutherland和布里斯托大学Andrew Booker 的两位安德鲁找到了42的答案:42 = (-80538738812075974)³ + 80435758145817515³
+ 12602123297335631³
当时,菲尔兹奖得主、剑桥大学教授Timothy Gowers还转推“祝贺”。虽然100以内的数皆告破,但几十年间却没有关于k=3的新解,许多人开始相信这个所谓的新解根本不存在,Heath-Brown猜想也是错的。但是,在找到42的答案之后,这两位安德鲁很快就出乎意料找到了k=3的第三组整数解:3 = 569936821221962380720³ + (-569936821113563493509)³
+ (-472715493453327032)³
数学化简
为了找到42和3的解决方案,两位数学家从现有算法开始,将立方和公式转化为他们认为更容易求解的形式:他们将x+y看做一个参数d,进一步修改了算法,然后将两边都除以d求余数(数学中记作mod d)这样,只需寻找d和z的值,即可保证找到对应于k=3的x、y、z。即便如此,搜索的数字空间也是无限大的。因此,他们通过使用数论中的“筛法”,极大地减少了d范围,将xyz的搜索范围降到10的15次方以内。拆解任务
两位安德鲁还开发了将搜索算法拆分成几十万个并行处理流的方法。如果仅在一台计算机上运行该算法,则要花几百年的时间才能找到答案。而通过将工作分为几十万个较小的任务,就可以在个人电脑上运行,进一步加快搜索速度。在2019年9月,研究人员通过Charity Engine实施了这项计划,借用普通用户的家用电脑资源,共同解决难题。当时,全球加入Charity Engine分布式计算项目的计算机超过40万台。两位安德鲁将他们的算法部署在平台上。
注:Charity Engine项目还帮助科学家解决了一个蛋白质折叠问题,发了一篇Science。最终,这项工作被分为大约40万个任务,每个任务需要一台计算机花费大约3个小时才能完成。很快,全球各地的电脑返回的k=42的第一个整数解。而仅仅两周后,他们已经发现,k=3的第3个整数解就找到了,他们还把这组解印在了T恤上。