tsujimotterのノートブック

日曜数学者 tsujimotter の「趣味で数学」実践ノート

ABC予想のよくある間違い

望月新一先生の「宇宙際タイヒミュラー理論」に関する論文が、論文誌に採録されることが決まったというニュースが飛び込んできました。
mainichi.jp

論文の原稿は8年も前から発表されており、その内容の壮大さから、数学好きの間で度々話題になっていました。特に、この理論の系として「ABC予想」と呼ばれる未解決問題が導かれるということが、数学好きとは限らない数多くの人の興味を引きました。

論文の主張が正しいかどうかは、結果的には論文を読んで自分で確かめる他ありません。
(論文誌に掲載されたということは、関連分野の専門家に査読されたということを意味しますが、これは主張の正しさが証明されたことを意味しないからです。)

しかしながら、一数学ファンとしては、論文誌に掲載されるというニュースを聞いて、純粋に嬉しい気持ちになりました。

一つの節目として、せっかくなので、自分の中の理解の確認のためにも、ABC予想の主張ぐらいは理解しておきたいという気持ちになりました。それをブログにまとめておこうというのがこの記事です。

2021.03.05追記:望月先生の該当論文4編が掲載された論文誌PRIMSが、3/5付でpublish(出版)されたというニュースが入ってきました。
news.livedoor.com
https://this.kiji.is/740458703363735552?c=39550187727945729this.kiji.is

論文自体は以下で読むことができるようです:
www.ems-ph.org


ところがです。このABC予想の主張は、簡単そうな見た目に反して大変間違えやすいことで知られています。私自身も何度もこんがらがりました。勘違いしやすいポイントが色々隠れているというわけですね。

そこで、こうした勘違いしやすいポイントをあえて間違えつつ、修正しながら正しい主張に向かっていく、そんな記事にしたいと思います。

諸注意:
こんな記事を書いておいてなんですが、私自身が間違ったことを書いている可能性がありますので、気づいた方はご連絡いただければと思います。よろしくお願いします。


2020.04.04 途中の数値計算の箇所に誤りがありましたので、修正しました。以前のバージョンでは、 3^{2^n} の計算をすべきところを、 3^{2n} を計算してしまっておりました。

2020.04.04 「 a, b, c が互いに素ならば  \newcommand{\rad}{\operatorname{rad}}\rad(abc) = \rad(a)\rad(b)\rad(c)」という議論が誤りだったので、修正しました。

たとえば、 a = 1, b = 2, c = 2 のとき  a, b, c は互いに素ですが、 \rad(abc) = 2 であり、 \rad(a)\rad(b)\rad(c) = 4 なので等号は成り立ちません。 a,b b,c a, c の各組が互いに素であれば、上記は成り立ちます。

 a, b, c が互いに素」に加えて、「 a+b=c」が成り立つ際は、 \rad(abc) = \rad(a)\rad(b)\rad(c) は成り立ちます。

2020.04.05  3^{2^n} の計算のところで、 3^{2^n} = 9^{2^n-1} としていましたが、正しくは  3^{2^n} = 9^{2^{n-1}} でした。修正させていただきます。

2020.04.05 「 a = 16, n = 11, c = 27 としてみると」となっていたところを「 a = 16, b = 11, c = 27 としてみると」に修正しました。

2022.04.11  \operatorname{rad} が抜けている個所がありましたので、修正しました。

誤: \operatorname{21600} = 2^1\cdot 3^1\cdot 5^1 = 30
正: \operatorname{rad}(21600) = 2^1\cdot 3^1\cdot 5^1 = 30

「弱いABC予想」の正しい主張

まずは、正しいABC予想、特に「弱いABC予想」と呼ばれる主張について、先にまとめておきたいと思います。「弱い」とは何かについては、最後に説明します。

だんだんと理解できるように説明していきますので、現時点では軽く眺めるぐらいで大丈夫です。

弱いABC予想
任意の  \varepsilon > 0 に対して、 a+b=c を満たす互いに素な正の整数の組  (a, b, c)

 \newcommand{\rad}{\operatorname{rad}}c > \operatorname{rad}(abc)^{1+\varepsilon}

を満たすものは有限個しか存在しない。

ざっくり眺めた感想を箇条書きで書いてみます。

  •  a, b, c という3つの変数がある予想である(だからABC予想なのか)。
  •  a, b, c a + b = c という関係を満たさなければならない。
  •  a, b, c は「互いに素」である(この後すぐに説明します)。
  • すると「なんだかよくわからない不等式で表された条件」を満たす  a,b,c の組は、有限個しかない。

要するに、上の条件を満たす  a, b, c の組はレアである といいたいのですね。


 a, b, c は「互いに素」の意味ですが、 a, b, c の最大公約数が  1 であることを言います。

たとえば、 a = 1, b = 2, c = 3 の最大公約数は 1 なので、互いに素です。また、 a = 1, b = 2, c = 2 の場合も、 b c の最大公約数は2ですが、 a は2を約数に持たないので、互いに素です。

逆に、 a = 2, b = 4, c = 6 は最大公約数が 2 なので、互いに素ではありません。


より正確に主張を理解するにあたって、未定義の用語  \operatorname{rad} がありますので、それを説明しておきたいと思います。

整数  x に対して  \operatorname{rad}(x) とは、 x を素因数分解したときに「互いに異なる素因数だけを集めて」積をとったものです。

たとえば、 21600 という数は

 2 \cdot 2 \cdot 2 \cdot 2 \cdot 2 \cdot 3 \cdot 3 \cdot 3 \cdot 5 \cdot 5

のように素因数分解できますが、互いに異なる素因数は  2, 3, 5 です。これらの積  2\cdot 3\cdot 5 = 30 \operatorname{rad}(21600) です。

あるいは  21600 = 2^5 \cdot 3^3 \cdot 5^2 として、素因数分解の指数部分をすべて  1 に置き換えたもの

 \operatorname{rad}(21600) = 2^1\cdot 3^1\cdot 5^1 = 30

として考えても良いかもしれません。


予想の主張の中には「 \operatorname{rad}(abc)」という形で登場しますが、この意味は「 a, b, c の積である  abc という数を素因数分解し、同様に指数をすべて  1 に置き換えたもの」のことですね。

実際は、a, b, c は互いに素なので、共通の素因数を持ちません。したがって、この場合に限っては

 \require{cancel}\cancel{\operatorname{rad}(abc) = \operatorname{rad}(a) \cdot \operatorname{rad}(b) \cdot \operatorname{rad}(c)}

としても問題ありません。
一般に

 \operatorname{rad}(abc) \leq \operatorname{rad}(a) \cdot \operatorname{rad}(b) \cdot \operatorname{rad}(c)

となります。

さて、これで未定義のものはなくなったはずですが、みなさんは上の主張を正しく理解できたでしょうか?


実際、このままで理解できる人は十分数学的議論に慣れた方だと思います。

たとえば、以下のように勘違いする人もいるんじゃないかと思います。

よくある間違い①

ここからよくある間違いを紹介していきたいと思います。

(間違い①)弱いABC予想
 a+b=c を満たす互いに素な正の整数の組  (a, b, c)

 c > \operatorname{rad}(abc)

を満たすものは存在しない。

色々条件を忘れてしまって、すっきり簡単に書いてしまったというバージョンです。


たとえば、 a = 1, b = 2, c = 3 としてみると、 a, b, c は互いに素で  a+b = c を満たします。また、

 \rad(abc) = \rad(6)

であり、 6 = 2\cdot 3 であることから  \rad(6) = 2^1\cdot 3^1 = 6 です。このとき

 c = 3 < \rad(6) = \rad(abc)

なので、確かに条件を満たしています。

ほかにも、 a = 16, b = 11, c = 27 としてみると、 a, b, c は互いに素で  a+b = c を満たします。また、

 \rad(abc) = \rad(4752) = 2\cdot 3\cdot 11 = 66

であり

 c = 27 < \rad(4752) = \rad(abc)

なので、確かに条件を満たしています。


うん、一見良さそうです。

ところが、上の主張はもちろん まったく間違っていて、この主張には 反例 があります。

実は、小さい値の組み合わせで早速反例が見つかります。

 a = 1, b = 8, c = 9 とすると、 a, b, c は互いに素で  a+b = c を満たします。このとき、

 \rad(abc) = \rad(72) = 2\cdot 3 = 6

であり

 c = 9 > 6 = \rad(72) = \rad(abc)

となります。よって、 c < \rad(abc)成り立ちません!!!


というわけで、この予想は反例が見つかったということで、間違った予想であることがわかりました。ボツです。

つまり、修正が必要になるわけですね。

よくある間違い②

上の予想をやや修正したものがこちらです。下線部が変更点になります。

(間違い②)弱いABC予想
 a+b=c を満たす互いに素な正の整数の組  (a, b, c)

 c > \operatorname{rad}(abc)

を満たすものは有限個しか存在しない。


前節では、 c > \operatorname{rad}(abc) を満たす反例があるのが問題でした。このような反例は「有限個」までは許容することにしましょう。それだったら成り立つ気がしませんか?

反例は10個かもしれないし、100個かもしれないし、1兆個かもしれない。とにかく、有限個まではオッケーとしよう。

うん、良さそうです。


ところが、これにも反例があります。なんと、 c > \operatorname{rad}(abc) を満たす無限個の例が作れてしまいます。

具体的には、 n を1以上の整数として

 a = 1, \;\; b = 3^{2^n} - 1, \;\; c = 3^{2^n}

を考えましょう。すると、任意の  n に対して

 c > \operatorname{rad}(abc)

を満たすことが、少し考えるとわかります。すなわち、無限個の反例 を作り出すことができてしまうのです。

最初の6個を計算するとこうなります:

 \begin{align}
 9 &> 6\\
 81 &> 30\\
 6561 &> 1230\\
 43046721 &> 4035630\\
 1853020188851841 &> 86860321352430\\
 3433683820292512484657849089281 &> 80476964538105761359168338030\\
\end{align}

左が  c = 3^{2^n} の値で、右が  \rad(a, b, c) です。すべて符号が  c > \rad(abc) となっていますね。


少なくとも上記6個は反例になっていることが確認できましたが、本当にこれが無限個の反例になっているかについてはあとで確認したいと思います。とにかくこの反例の存在を認めてしまうと、「有限個」に制限したところで予想は成立しないのです。

よって、これもボツです。残念でした。

正しい主張

いったいどうすれば、反例のない主張を作ることができるでしょうか。

まぁ、もちろん反例が本当にないかどうかは、ABC予想を証明してみないと保証できないわけです。なので、ここでいう「正しい」というのは、一般的に言われる弱いABC予想と同じ主張である、という意味です。


ここで、主張の修正のために登場するのが  \varepsilon です。下線部が変更点になります。

(正しい主張)弱いABC予想
任意の  \varepsilon > 0 に対して、 a+b=c を満たす互いに素な正の整数の組  (a, b, c)

 \newcommand{\rad}{\operatorname{rad}}c > \operatorname{rad}(abc)^{\underline{1+\varepsilon}}

を満たすものは有限個しか存在しない。

これこそが、冒頭で紹介した弱いABC予想の主張です。


「任意の  \varepsilon > 0 に対して、」と「 \rad(abc)」の肩に  1+\varepsilon が乗ったのが違いとなっています。

任意の  \varepsilon > 0 なのですが  \varepsilon = 0 としてしまうと、上の(間違い②)に一致してしまって、「無限個の組」という反例が存在してしまいます。だから  \varepsilon > 0 としているわけです。

この修正によって、先ほどの「無限個の組」の反例の問題が解決する可能性について考えてみましょう。


先ほどの無限個の反例の列では、 c がいくらでも大きくなっていくことに注意しましょう。逆に、 c が一定の範囲内(たとえば、1兆以下)に収まるのであれば、その組み合わせは有限個しかないので、そもそも無限個の反例になりません。したがって、無限個の反例においては、 c に上限はないのです。

今、 c の大きさが小さい反例の組については、たかだか有限個なので目をつむって、十分大きいものだけ考えます。このとき、 c \rad(abc) を比べてが成り立ってしまっては困ります。 \rad(abc) の方を少し「底上げ」して、どうにかして  \rad(abc) の方を「勝たせたい」。

そこで、 \rad(abc)^{1+\varepsilon} とするのです。

 \varepsilon > 0 なので、 \rad(abc)^{1+\varepsilon} \rad(abc) と比べて大きくなります。たとえば、 \varepsilon = 0.1 であれば、 1.1 乗した分大きくなるということです。この効果は  \rad(abc) の値が大きくなればなるほど効いてきます。


実際、先ほどの反例に対して、 \varepsilon = 0.1 としたものを計算してみます。左が  c で、右が  \rad(abc)^{1.1} となります:

 \begin{align}
 9 &> 7.177\\
 81 &> 42.153\\
 6561 &> 2505.507\\
 43046721 &> 18471513.258\\
 1853020188851841 &< 2151312867978247.2\\
 3433683820292512484657849089281 &< 6.2551646508055105\ldots\cdot 10^{31}\\
\end{align}

符号を見るとわかるように、後半2つの符号が逆転して  < となっているのがわかります。今回は6個しかみていませんが、今後も十分大きいある地点を境に、以降ずっと  < が出続けるのであれば思惑成功です。

もちろん、予想の主張としては、今回挙げた反例だけでなく、任意の反例に対して考えなければいけないので大変です。


さらにいえば、今考えたのは  \varepsilon = 0.1 の場合だけです。 \varepsilon = 0.01 でも、 \varepsilon = 0.00001 でも、 \varepsilon = 0.0000000001 に対しても成り立っていなければなりません。

実際、 \varepsilon = 0.01 と小さくして同様に数値計算すると

 \begin{align}
 9 &> 6.108\\
 81 &> 31.037\\
 6561 &> 1320.699\\
 43046721 &> 4698621.431\\
 1853020188851841 &> 119731837086263.27\\
 3433683820292512484657849089281 &> 1.5657712086217666\ldots\cdot 10^{29}\\
\end{align}

となって、今後は符号は反転しませんでした。

しかしながら、(ABC予想を信じるのであれば)十分大きいある地点以降では、 1.01 乗の効果が強く現れ始めて、以降ずっと符号が  < になることが期待されるというわけです。


何度もいうように、これはあくまで予想なのであって、実際に成り立っているかどうかは証明を確認するほかありません。しかしながら、今までの間違った主張たちと比べると、成り立つことを十分期待できるものになっているんじゃないでしょうか。


こんな風に、間違いの修正を繰り返すことで、だんだんとABC予想自体の主張の理解に近づいていきました。今度こそ正しく理解できたでしょうか?

間違い②の無限個の反例について

最後に、先ほど挙げた無限個の反例が、本当に無限個の反例になっていることを証明しましょう。

 a, b, c

 a = 1, \;\; b = 3^{2^n} - 1, \;\; c = 3^{2^n}

と定義したとき、任意の  n について

 c > \rad(abc)

が成り立つことを示します。

(証明)
 \rad(1) = 1, \;\; \rad(c) = 3 は明らかなので、 \rad(b) を評価する。

 3^2 = 9 \equiv 1 \pmod{8} なので、

 3^{2^n} = 9^{2^{n-1}} \equiv 1 \pmod{8}

であるから、 b = 3^{2^n} - 1 8 で割り切れる。

したがって、 b には素因数  2 で少なくとも  3 回割れることになる。よって、 \rad(b) を計算する際に、 b の素因数から  2 が少なくとも  2 回(重複を削除するために)減らされることになる。

よって、 \rad(b) \leq \frac{b}{4} が言える。


以上より

 \displaystyle \begin{align} \rad(abc) &\leq \rad(a)\rad(b)\rad(c) \\
&\leq 1\cdot \frac{b}{4} \cdot 3 \\
&\leq \frac{3}{4}b \end{align}

が得られる。また、 b < c より

 \displaystyle \rad(abc) < \frac{3}{4}c < c

となり  c > \rad(abc) が言えた。

(証明終わり)


というわけで、上記の例が(間違い②)の反例になっていることが確認できましたね。


よくある間違い(?)「弱い/強いABC予想」

最後にABC予想の「弱い」「強い」という部分について説明しましょう。

実は、これまで説明したABC予想は、「弱いABC予想」と呼ばれるものでした。わざわざ「弱い」といっているのだから、当然「強い」方もあるはずです。


強いABC予想の主張を説明するために、まずは弱いABC予想の同値な言い換えを紹介しましょう。これについては、少し難しいので正確に理解できなくても大丈夫です。

弱いABC予想の同値な言い換え
任意の  \varepsilon > 0 に対して、 \varepsilon に依存したある  K(\varepsilon) > 0 が存在して、 a+b=c を満たす互いに素な正の整数の組  (a, b, c) に対して

 c \;\underline{< K(\varepsilon)} \operatorname{rad}(abc)^{1+\varepsilon}

が成り立つ。

変更点をまた下線で表示しています。

大きな違いとしては、 K(\varepsilon) が現れたことと、主張点が変わったことが挙げられます。先ほどは「 > を満たすものは有限個」だったのに対し、今回は「すべて  < が成り立つ」になったということです。

先ほどまでは「成り立たないのが有限個までなら許容しよう」という考え方でした。今度は「成り立たないやつがあるなら、そいつらを全部超えるように  \rad(abc) にあらかじめ係数  K(\varepsilon) をかけてしまえばいい」というものです。そうすれば、どの組も  K(\varepsilon) \rad(abc) より小さくなるはずです。

実際、これが元の弱いABC予想と同値になります。

 K(\varepsilon) としては「何だかわからないが、とにかく存在する」ということしか言っていません。だから、たとえば  \varepsilon = 0.1 のときは  K(\varepsilon) = 1 かもしれないし、それじゃあ全然足りないから  K(\varepsilon) = 10000000000 としないといけないかもしれません。


ここからが「強いABC予想」の話なのですが、 \varepsilon に対して  K(\varepsilon) が具体的に求まるという主張のようなのです。「ようなのです」というのは、私の自信がないからなのですが、というのもこの辺が明確に書かれた資料を私が知らないからなのです。

実際、 \varepsilon = 1 のとき  K(\varepsilon) = 1 となることを「強いABC予想」と呼んでいるものを見かけました。


ここで明確にしておきたいのは、(少なくとも以前ニュースになった段階で)宇宙際タイヒミュラー理論によって証明されたと言われていたのは、弱いABC予想 の方なのです。

もちろん、私が知らないうちに、宇宙際タイヒミュラー理論に革新的な進展があって、強いABC予想も証明されてしまった可能性もあります。だから真相は論文を読んでみないとわかりません。

この場で言えることは、強いABC予想と弱いABC予想は明確に異なり、ごっちゃにしてはいけないということです。


ABC予想において、この強さの違いが問題になるのは フェルマーの最終定理への応用 です。

実際、今日のTwitterのトレンドに「フェルマーの最終定理」が入っていて、驚きました。みなさん、ABC予想との関係について言及していたようです。


「ABC予想を使うと、フェルマーの最終定理が数行で導かれる」という話を聞いたことがないでしょうか?

実際、半分は正しいのですが、次のような注意が必要です。

フェルマーの最終定理を導くのは強いABC予想であって、
弱いABC予想ではありません。


強いABC予想において、 \varepsilon = 1 に対して  K(\varepsilon) = 1 であることが示されれば、そこからフェルマーの最終定理を導くことができます。いかにしてフェルマーの最終定理が得られるかについては、次のブログ記事が役に立つかと思います。
mikan-alpha.hatenablog.com


というわけで、ABC予想についての色々な間違い方を紹介してきましたが、いかがだったでしょうか。

せっかくの大ニュースですから、ぜひ正しく楽しみましょう!

それでは今日はこの辺で。


#このブログ記事が面白いと思った方は、ぜひ「読者登録」や「Twitterでのシェア」をお願いします。ブログ執筆の励みになります。

関連記事

他サイトですが、せきゅーんさんによるABC予想の解説記事も参考になります。
integers.hatenablog.com

また、宇宙際タイヒミュラー理論の一般向けの解説として、加藤文元先生による講演があります。
www.youtube.com

加藤先生の著書も大変参考になります。