# abc conjecture

Field Number theory Joseph OesterléDavid Masser 1985 Modified Szpiro conjecture
French mathematician Joseph Oesterlé
British mathematician David Masser

The abc conjecture (also known as the Oesterlé–Masser conjecture) is a conjecture in number theory, first proposed by Joseph Oesterlé (1988) and David Masser (1985). It is stated in terms of three positive integers, a, b and c (hence the name) that are relatively prime and satisfy a + b = c. If d denotes the product of the distinct prime factors of abc, the conjecture essentially states that d is usually not much smaller than c. In other words: if a and b are composed from large powers of primes, then c is usually not divisible by large powers of primes. A number of famous conjectures and theorems in number theory would follow immediately from the abc conjecture or its versions. Goldfeld (1996) described the abc conjecture as "the most important unsolved problem in Diophantine analysis".

The abc conjecture originated as the outcome of attempts by Oesterlé and Masser to understand the Szpiro conjecture about elliptic curves,[1] which involves more geometric structures in its statement than the abc conjecture. The abc conjecture was shown to be equivalent to the modified Szpiro's conjecture.[2]

Various attempts to prove the abc conjecture have been made, but none are currently accepted by the mainstream mathematical community and as of 2020, the conjecture is still largely regarded as unproven.[3][4]

## Formulations

Before we state the conjecture we introduce the notion of the radical of an integer: for a positive integer n, the radical of n, denoted rad(n), is the product of the distinct prime factors of n. For example

If a, b, and c are coprime[notes 1] positive integers such that a + b = c, it turns out that "usually" c < rad(abc). The abc conjecture deals with the exceptions. Specifically, it states that:

ABC conjecture. For every positive real number ε, there exist only finitely many triples (a, b, c) of coprime positive integers, with a + b = c, such that
$c > \operatorname{rad}(abc)^{1+\varepsilon}.$

An equivalent formulation:

ABC conjecture II. For every positive real number ε, there exists a constant Kε such that for all triples (a, b, c) of coprime positive integers, with a + b = c:
$c < K_{\varepsilon} \cdot \operatorname{rad}(abc)^{1+\varepsilon}.$

A third equivalent formulation of the conjecture involves the quality q(a, b, c) of the triple (a, b, c), defined as

$q(a, b, c) = \frac{ \log(c) }{ \log\big(\operatorname{rad}(abc)\big) }.$

For example:

q(4, 127, 131) = log(131) / log(rad(4·127·131)) = log(131) / log(2·127·131) = 0.46820...
q(3, 125, 128) = log(128) / log(rad(3·125·128)) = log(128) / log(30) = 1.426565...

A typical triple (a, b, c) of coprime positive integers with a + b = c will have c < rad(abc), i.e. q(a, b, c) < 1. Triples with q > 1 such as in the second example are rather special, they consist of numbers divisible by high powers of small prime numbers.

ABC conjecture III. For every positive real number ε, there exist only finitely many triples (a, b, c) of coprime positive integers with a + b = c such that q(a, b, c) > 1 + ε.

Whereas it is known that there are infinitely many triples (a, b, c) of coprime positive integers with a + b = c such that q(a, b, c) > 1, the conjecture predicts that only finitely many of those have q > 1.01 or q > 1.001 or even q > 1.0001, etc. In particular, if the conjecture is true, then there must exist a triple (a, b, c) that achieves the maximal possible quality q(a, b, c) .

## Examples of triples with small radical

The condition that ε > 0 is necessary as there exist infinitely many triples a, b, c with c > rad(abc). For example, let

$a = 1, \quad b = 2^{6n} - 1, \quad c = 2^{6n}, \qquad n > 1.$

The integer b is divisible by 9:

$b = 2^{6n} - 1 = 64^n - 1 = (64 - 1) (\cdots) = 9 \cdot 7 \cdot (\cdots).$

Using this fact we calculate:

\begin{align} \operatorname{rad}(abc) &= \operatorname{rad}(a) \operatorname{rad}(b) \operatorname{rad}(c) \\ &= \operatorname{rad}(1) \operatorname{rad} \left ( 2^{6n} -1 \right ) \operatorname{rad} \left (2^{6n} \right ) \\ &= 2 \operatorname{rad} \left ( 2^{6n} -1 \right ) \\ &= 2 \operatorname{rad} \left ( 9 \cdot \tfrac{b}{9} \right ) \\ &\leqslant 2 \cdot 3 \cdot \tfrac{b}{9} \\ &= 2 \tfrac{b}{3} \\ &< \tfrac{2}{3} c. \end{align}

By replacing the exponent 6n by other exponents forcing b to have larger square factors, the ratio between the radical and c can be made arbitrarily small. Specifically, let p > 2 be a prime and consider

$a = 1, \quad b = 2^{p(p-1)n} - 1, \quad c = 2^{p(p-1)n}, \qquad n > 1.$

Now we claim that b is divisible by p2:

\begin{align} b &= 2^{p(p-1)n} - 1 \\ &= \left(2^{p(p-1)}\right)^n - 1 \\ &= \left(2^{p(p-1)} - 1\right) (\cdots) \\ &= p^2 \cdot r (\cdots). \end{align}

The last step uses the fact that p2 divides 2p(p−1) − 1. This follows from Fermat's little theorem, which shows that, for p > 2, 2p−1 = pk + 1 for some integer k. Raising both sides to the power of p then shows that 2p(p−1) = p2(...) + 1.

And now with a similar calculation as above we have

$\operatorname{rad}(abc) < \tfrac{2}{p} c.$

A list of the highest-quality triples (triples with a particularly small radical relative to c) is given below; the highest quality, 1.6299, was found by Eric Reyssat (Lando & Zvonkin 2004, p. 137) for

a = 2,
b = 310·109 = 6436341,
c = 235 = 6436343,

## Some consequences

The abc conjecture has a large number of consequences. These include both known results (some of which have been proven separately since the conjecture has been stated) and conjectures for which it gives a conditional proof. While an earlier proof of the conjecture would have been more significant in terms of consequences, the abc conjecture itself remains of interest for the other conjectures it would prove, together with its numerous links with deep questions in number theory. The consequences include:

• Roth's theorem on diophantine approximation of algebraic numbers.[5]
• The Mordell conjecture (already proven in general by Gerd Faltings).[6]
• As equivalent, Vojta's conjecture in dimension 1.[7]
• The Erdős–Woods conjecture allowing for a finite number of counterexamples.[8]
• The existence of infinitely many non-Wieferich primes in every base b > 1.[9]
• The weak form of Marshall Hall's conjecture on the separation between squares and cubes of integers.[10]
• The Fermat–Catalan conjecture, a generalization of Fermat's last theorem concerning powers that are sums of powers.[11]
• The L-function L(s, χd) formed with the Legendre symbol, has no Siegel zero, given a uniform version of the abc conjecture in number fields, not just the abc conjecture as formulated above for rational integers.[12]
• A polynomial P(x) has only finitely many perfect powers for all integers x if P has at least three simple zeros.[13]
• A generalization of Tijdeman's theorem concerning the number of solutions of ym = xn + k (Tijdeman's theorem answers the case k = 1), and Pillai's conjecture (1931) concerning the number of solutions of Aym = Bxn + k.
• As equivalent, the Granville–Langevin conjecture, that if f is a square-free binary form of degree n > 2, then for every real β > 2 there is a constant C(f, β) such that for all coprime integers x, y, the radical of f(x, y) exceeds C · max{|x|, |y|}nβ.[14]
• As equivalent, the modified Szpiro conjecture, which would yield a bound of rad(abc)1.2+ε.[2]
• Dąbrowski (1996) has shown that the abc conjecture implies that the Diophantine equation n! + A = k2 has only finitely many solutions for any given integer A.
• There are ~cfN positive integers nN for which f(n)/B' is square-free, with cf > 0 a positive constant defined as:[15]
$c_f = \prod_{\text{prime }p} x_i \left ( 1 - \frac{\omega\,\!_f (p)}{p^{2+q_p}} \right ).$
• Fermat's Last Theorem has a famously difficult proof by Andrew Wiles. However it follows easily, at least for $n \ge 6$, from an effective form of a weak version of the abc conjecture. The abc conjecture says the lim sup of the set of all qualities (defined above) is 1, which implies the much weaker assertion that there is a finite upper bound for qualities. The conjecture that 2 is such an upper bound suffices for a very short proof of Fermat's Last Theorem for $n \ge 6$.[16]
• The Beal conjecture, a generalization of Fermat's last theorem proposing that if A, B, C, x, y, and z are positive integers with Ax + By = Cz and x, y, z > 2, then A, B, and C have a common prime factor. The abc conjecture would imply that there are only finitely many counterexamples.
• Lang’s conjecture, a lower bound for the height of a non-torsion rational point of an elliptic curve.

## Theoretical results

The abc conjecture implies that c can be bounded above by a near-linear function of the radical of abc. Bounds are known that are exponential. Specifically, the following bounds have been proven:

$c < \exp{ \left(K_1 \operatorname{rad}(abc)^{15}\right) }$ (Stewart & Tijdeman 1986),
$c < \exp{ \left(K_2 \operatorname{rad}(abc)^{\frac{2}{3} + \varepsilon}\right) }$ (Stewart & Yu 1991), and
$c < \exp{ \left(K_3 \operatorname{rad}(abc)^{\frac{1}{3}}\left(\log(\operatorname{rad}(abc))\right)^3\right) }$ (Stewart & Yu 2001).

In these bounds, K1 and K3 are constants that do not depend on a, b, or c, and K2 is a constant that depends on ε (in an effectively computable way) but not on a, b, or c. The bounds apply to any triple for which c > 2.

## Computational results

In 2006, the Mathematics Department of Leiden University in the Netherlands, together with the Dutch Kennislink science institute, launched the ABC@Home project, a grid computing system, which aims to discover additional triples a, b, c with rad(abc) < c. Although no finite set of examples or counterexamples can resolve the abc conjecture, it is hoped that patterns in the triples discovered by this project will lead to insights about the conjecture and about number theory more generally.

Distribution of triples with q > 1[17]
q
c
q > 1 q > 1.05 q > 1.1 q > 1.2 q > 1.3 q > 1.4
c < 102 6 4 4 2 0 0
c < 103 31 17 14 8 3 1
c < 104 120 74 50 22 8 3
c < 105 418 240 152 51 13 6
c < 106 1,268 667 379 102 29 11
c < 107 3,499 1,669 856 210 60 17
c < 108 8,987 3,869 1,801 384 98 25
c < 109 22,316 8,742 3,693 706 144 34
c < 1010 51,677 18,233 7,035 1,159 218 51
c < 1011 116,978 37,612 13,266 1,947 327 64
c < 1012 252,856 73,714 23,773 3,028 455 74
c < 1013 528,275 139,762 41,438 4,519 599 84
c < 1014 1,075,319 258,168 70,047 6,665 769 98
c < 1015 2,131,671 463,446 115,041 9,497 998 112
c < 1016 4,119,410 812,499 184,727 13,118 1,232 126
c < 1017 7,801,334 1,396,909 290,965 17,890 1,530 143
c < 1018 14,482,065 2,352,105 449,194 24,013 1,843 160

As of May 2014, ABC@Home had found 23.8 million triples.[18]

Highest-quality triples[19]
Rank q a b c Discovered by
1 1.6299 2 310·109 235 Eric Reyssat
2 1.6260 112 32·56·73 221·23 Benne de Weger
3 1.6235 19·1307 7·292·318 28·322·54 Jerzy Browkin, Juliusz Brzezinski
4 1.5808 283 511·132 28·38·173 Jerzy Browkin, Juliusz Brzezinski, Abderrahmane Nitaj
5 1.5679 1 2·37 54·7 Benne de Weger

Note: the quality q(a, b, c) of the triple (a, b, c) is defined above.

## Refined forms, generalizations and related statements

The abc conjecture is an integer analogue of the Mason–Stothers theorem for polynomials.

A strengthening, proposed by Baker (1998), states that in the abc conjecture one can replace rad(abc) by

where ω is the total number of distinct primes dividing a, b and c.[20]

Andrew Granville noticed that the minimum of the function $\big(\varepsilon^{-\omega}\operatorname{rad}(abc)\big)^{1+\varepsilon}$ over $\varepsilon > 0$ occurs when $\varepsilon = \frac{\omega}{\log\big(\operatorname{rad}(abc)\big)}.$

This incited Baker (2004) to propose a sharper form of the abc conjecture, namely:

$c < \kappa \operatorname{rad}(abc) \frac{\Big(\log\big(\operatorname{rad}(abc)\big)\Big)^\omega}{\omega!}$

with κ an absolute constant. After some computational experiments he found that a value of $6/5$ was admissible for κ.

This version is called "explicit abc conjecture".

Baker (1998) also describes related conjectures of Andrew Granville that would give upper bounds on c of the form

$K^{\Omega(a b c)} \operatorname{rad}(a b c),$

where Ω(n) is the total number of prime factors of n, and

$O\big(\operatorname{rad}(a b c) \Theta(a b c)\big),$

where Θ(n) is the number of integers up to n divisible only by primes dividing n.

Robert, Stewart & Tenenbaum (2014) proposed a more precise inequality based on Robert & Tenenbaum (2013). Let k = rad(abc). They conjectured there is a constant C1 such that

$c < k \exp\left(4\sqrt{\frac{3\log k}{\log\log k}}\left(1+\frac{\log\log\log k}{2\log\log k}+\frac{C_{1}}{\log\log k}\right)\right)$

holds whereas there is a constant C2 such that

$c > k \exp\left(4\sqrt{\frac{3\log k}{\log\log k}}\left(1+\frac{\log\log\log k}{2\log\log k}+\frac{C_{2}}{\log\log k}\right)\right)$

holds infinitely often.

Browkin & Brzeziński (1994) formulated the n conjecture—a version of the abc conjecture involving n > 2 integers.

## Claimed proofs

Lucien Szpiro proposed a solution in 2007, but it was found to be incorrect shortly afterwards.[21]

In August 2012, Shinichi Mochizuki claimed a proof of Szpiro's conjecture and therefore the abc conjecture.[22] He released a series of four preprints developing a new theory called inter-universal Teichmüller theory (IUTT) which is then applied to prove several famous conjectures in number theory, including the abc conjecture and the hyperbolic Vojta's conjecture.[23] The papers have not been accepted by the mathematical community as providing a proof of abc.[24] This is not only because of their difficulty to understand and length,[25] but also because at least one specific point in the argument has been identified as a gap by some other experts.[26] Although a few mathematicians have vouched for the correctness of the proof,[27] and have attempted to communicate their understanding via workshops on IUTT, they have failed to convince the number theory community at large.[28][29]

In March 2018, Peter Scholze and Jakob Stix visited Kyoto for discussions with Mochizuki.[30][31] While they did not resolve the differences, they brought them into clearer focus. Scholze and Stix concluded that the gap was "so severe that … small modifications will not rescue the proof strategy";[32] Mochizuki claimed that they misunderstood vital aspects of the theory and made invalid simplifications.[33][34][35]

On April 3, 2020, two Japanese mathematicians announced that Mochizuki's claimed proof would be published in Publications of the Research Institute for Mathematical Sciences (RIMS), a journal of which Mochizuki is chief editor.[3] The announcement was received with skepticism by Kiran Kedlaya and Edward Frenkel, as well as being described by Nature as "unlikely to move many researchers over to Mochizuki's camp."[3]

## Notes

1. When a + b = c, coprimeness of a, b, c implies pairwise coprimeness of a, b, c. So in this case, it does not matter which concept we use.

## References

1. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil)..
2. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
3. The ABC-conjecture, Frits Beukers, ABC-DAY, Leiden, Utrecht University, 9 September 2005.
4. Mollin (2009); Mollin (2010, p. 297)
5. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
6. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil)..
7. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
8. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
9. Bombieri & Gubler (2006), p. 404.
10. "Finiteness Theorems for Dynamical Systems", Lucien Szpiro, talk at Conference on L-functions and Automorphic Forms (on the occasion of Dorian Goldfeld's 60th Birthday), Columbia University, May 2007. See Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil)..
11. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
12. Mochizuki, Shinichi (May 2015). Inter-universal Teichmuller Theory IV: Log-volume Computations and Set-theoretic Foundations, available at http://www.kurims.kyoto-u.ac.jp/~motizuki/papers-english.html
13. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
14. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
15. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
16. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
17. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
18. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
19. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
20. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil). Web-page by Mochizuki describing discussions and linking consequent publications and supplementary material
21. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil). (updated version of their May report)
22. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
23. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
24. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).

## Sources

• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
• Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).