見出し画像

スーパーコンピュータとチャリティエンジンが解を見つける

数学パズルで有名な問題 X^3 + Y^3 + Z^3 = k,(kはゼロ以上の整数)を解く話です。まず、K=1から100までの個々の場合の整数解X, Y, Zを求めよというのが1954年に提示された問題です。似ている問題 x^2+y^2=z^2 を満たすピタゴラス数を求めよというのがあります。この種の方程式はディオファントス方程式とよばれ、紀元前300年のギリシャ以来研究されています。

さて、X^3+Y^3+Z^3=k , (k=0,・・・,100) に戻りましょう。
求める整数解X, Y, Zは正数だけとは限りませんので、問題は難問になります。

長年の研究で、k=4,5,13,14,22,23,31,32の場合には解がないことがわかっています.これらを除くほとんどのkに対して解が求まりました(kによっては解が無数に存在する場合もあります)が、k=33と42の場合の解がどうしても見つかっていません(解がないという証明もできません)でした。2019年になり、ブリストル大学のAndrew Booker教授は、スーパーコンピューターを3週間連続使用して、k=33の場合の解を見つけました。以下のものです。

(8,866,128,975,287,528)³+(-8,778,405,442,862,239)³+(-2,736,111,468,807,040)³=33

私(筆者)はこれが正解かどうか確認しようとしましたが、数字が大きすぎて計算もできません。k=42の場合は、もう一桁大きな数を扱わなければならないのでスーパーコンピュータといえども困難なのが理解できるでしょう。
そこで、Booker教授は、大きな数の解をチェックできる効率的なアルゴリズムを作り、MITの計算数理学者Andrew Sutherland教授の協力を得て、地球規模のコンピューティングプラットフォーム「Charity Engine」を利用した。Charity Engineには、世界規模で50万台を超える家庭用PCが接続され、各PCの空き時間を使って計算を実行するものです。Charity Engineによる100万時間を越える計算の結果、やはり2019年に次の解が得られました。

X = -80538738812075974
Y = 80435758145817515
Z = 12602123297335631


現在は,kが100~1,000までの場合の整数解を求めることに挑戦中である。
kが100~1000の間で解けていないのは10個位あるという。

この記事が気に入ったらサポートをしてみませんか?