Roth's theorem on arithmetic progressions

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Roth's theorem on arithmetic progressions is a result in additive combinatorics concerning the existence of arithmetic progressions in subsets of the natural numbers. It was first proven by Klaus Roth in 1953.[1] Roth's theorem is a special case of Szemerédi's theorem for the case k=3.

Statement

[edit | edit source]

A subset A of the natural numbers is said to have positive upper density if

lim supn|A{1,2,3,,n}|n>0.

Roth's theorem on arithmetic progressions (infinite version): A subset of the natural numbers with positive upper density contains a 3-term arithmetic progression.

An alternate, more qualitative, formulation of the theorem is concerned with the maximum size of a Salem–Spencer set which is a subset of [N]={1,,N}. Let r3([N]) be the size of the largest subset of [N] which contains no 3-term arithmetic progression.

Roth's theorem on arithmetic progressions (finitary version):

r3([N])=o(N).

Improving upper and lower bounds on r3([N]) is still an open research problem.

History

[edit | edit source]

The first result in this direction was Van der Waerden's theorem in 1927, which states that for sufficiently large N, coloring the integers 1,,n with r colors will result in a k term arithmetic progression.[2]

Later on in 1936 Erdős and Turán conjectured a much stronger result that any subset of the integers with positive density contains arbitrarily long arithmetic progressions. In 1942, Raphaël Salem and Donald C. Spencer provided a construction of a 3-AP-free set (i.e. a set with no 3-term arithmetic progressions) of size NeO(logN/loglogN),[3] disproving an additional conjecture of Erdős and Turán that r3([N])=N1δ for some δ>0.[4]

In 1953, Roth partially resolved the initial conjecture by proving they must contain an arithmetic progression of length 3 using Fourier analytic methods. Eventually, in 1975, Szemerédi proved Szemerédi's theorem using combinatorial techniques, resolving the original conjecture in full.

Proof techniques

[edit | edit source]

The original proof given by Roth used Fourier analytic methods. Later on another proof was given using Szemerédi's regularity lemma.

Proof sketch via Fourier analysis

[edit | edit source]

In 1953, Roth used Fourier analysis to prove an upper bound of r3([N])=O(NloglogN). Below is a sketch of this proof.

Define the Fourier transform of a function f: to be the function f^:[0,1) satisfying

f^(θ)=xf(x)e(xθ),

where e(t)=e2πit.

Let A be a 3-AP-free subset of {1,,N}. The proof proceeds in 3 steps.

  1. Show that a A admits a large Fourier coefficient.
  2. Deduce that there exists a sub-progression of {1,,N} such that A has a density increment when restricted to this subprogression.
  3. Iterate Step 2 to obtain an upper bound on |A|.

Step 1

[edit | edit source]

For functions, f,g,h:, define

Λ(f,g,h)=x,yf(x)g(x+y)h(x+2y)

Counting Lemma Let

f,g:

satisfy

n|f(n)|2,n|g(n)|2M

. Define

Λ3(f)=Λ(f,f,f)

. Then

|Λ3(f)Λ3(g)|3Mfg^

.

The counting lemma tells us that if the Fourier Transforms of f and g are "close", then the number of 3-term arithmetic progressions between the two should also be "close." Let α=|A|/N be the density of A. Define the functions f=𝟏A (i.e the indicator function of A), and g=α𝟏[N]. Step 1 can then be deduced by applying the Counting Lemma to f and g, which tells us that there exists some θ such that

|n=1N(1Aα)(n)e(θn)|α210N.

Step 2

[edit | edit source]

Given the θ from step 1, we first show that it's possible to split up [N] into relatively large subprogressions such that the character xe(xθ) is roughly constant on each subprogression.

Lemma 1: Let

0<η<1,θ

. Assume that

N>Cη6

for a universal constant

C

. Then it is possible to partition

[N]

into arithmetic progressions

Pi

with length

N1/3|Pi|2N1/3

such that

supx,yPi|e(xθ)e(yθ)|<η

for all

i

.

Next, we apply Lemma 1 to obtain a partition into subprogressions. We then use the fact that θ produced a large coefficient in step 1 to show that one of these subprogressions must have a density increment:

Lemma 2: Let

A

be a 3-AP-free subset of

[N]

, with

|A|=αN

and

N>Cα12

. Then, there exists a sub progression

P[N]

such that

|P|N1/3

and

|AP|(α+α2/40)|P|

.

Step 3

[edit | edit source]

We now iterate step 2. Let at be the density of A after the tth iteration. We have that α0=α, and αt+1α+α2/40. First, see that α doubles (i.e. reach T such that αT2α0) after at most 40/α+1 steps. We double α again (i.e reach αT4α0) after at most 20/α+1 steps. Since α1, this process must terminate after at most O(1/α) steps.

Let Nt be the size of our current progression after t iterations. By Lemma 2, we can always continue the process whenever NtCαt12, and thus when the process terminates we have that NtCαt12Cα12. Also, note that when we pass to a subprogression, the size of our set decreases by a cube root. Therefore

NNt3t(Cα12)3O(1/α)=eeO(1/α).

Therefore α=O(1/loglogN), so |A|=O(NloglogN), as desired.

Unfortunately, this technique does not generalize directly to larger arithmetic progressions to prove Szemerédi's theorem. An extension of this proof eluded mathematicians for decades until 1998, when Timothy Gowers developed the field of higher-order Fourier analysis specifically to generalize the above proof to prove Szemerédi's theorem.[5]

Proof sketch via graph regularity

[edit | edit source]

From the Szemerédi regularity lemma and counting lemma one obtains the graph removal lemma, and as a corollary the following:

Diamond-free Lemma. Any graph G on n vertices in which every edge lies in precisely one unique triangle has o(n2) edges.

Application to Roth’s theorem

[edit | edit source]

First note that a set A{1,,N} has a 3-term arithmetic progression iff its reduction modulo M:=2N+1 does.

Fix A{1,,N} with no 3-term AP. Construct a tripartite graph G with parts X,Y,Z, each a copy of /M. Add edges as follows:

  • xX to yY if yxA;
  • yY to zZ if zyA;
  • zZ to xX if (xz)/2A (since 2 is invertible mod M).

If x,y,z form a triangle, then yx, xz2, zyA. These three numbers form an arithmetic progression in that order with step (x+z2y)/2. Because A has no nontrivial 3-term AP, they are equal, so (x+z2y)/2=0. Therefore, if we fix any two vertices of G connected by an edge, every triangle extending this edge must satisfy x+z2y=0, yielding a unique choice of the third vertex. Furthermore, such a choice guarantees the existence of the other two edges in that triangle. Thus, the diamond-free lemma applies, and e(G)=o((3M)2)=o(N2).

Notice now, that each element aA contributes exactly one edge for each vertex in a part: for instance, for every xX, there is exactly one yY such that yxa(modM), so a gives exactly M edges between X and Y. The same holds for the other two pairs, hence e(G)=3|A|M. Consequently,

|A|=e(G)3M=o(N2)3(2N+1)=o(N)

proving Roth’s theorem.

Extensions and generalizations

[edit | edit source]

Szemerédi's theorem resolved the original conjecture and generalized Roth's theorem to arithmetic progressions of arbitrary length. Since then it has been extended in multiple fashions to create new and interesting results.

Furstenberg and Katznelson[6] used ergodic theory to prove a multidimensional version and Leibman and Bergelson[7] extended it to polynomial progressions as well. Most recently, Green and Tao proved the Green–Tao theorem which says that the prime numbers contain arbitrarily long arithmetic progressions. Since the prime numbers are a subset of density 0, they introduced a "relative" Szemerédi theorem which applies to subsets with density 0 that satisfy certain pseudorandomness conditions. Later on Conlon, Fox, and Zhao[8][9] strengthened this theorem by weakening the necessary pseudorandomness condition. In 2020, Bloom and Sisask[10] proved that any set A such that nA1n diverges must contain arithmetic progressions of length 3; this is the first non-trivial case of another conjecture of Erdős postulating that any such set must in fact contain arbitrarily long arithmetic progressions.

Improving bounds

[edit | edit source]

There has also been work done on improving the bound in Roth's theorem. The bound from the original proof of Roth's theorem showed that

r3([N])cNloglogN

for some constant c. Over the years this bound has been continually lowered by Szemerédi,[11] Heath-Brown,[12] Bourgain,[13][14] and Sanders.[15][16] The current (July 2020) best bound is due to Bloom and Sisask[10] who have shown the existence of an absolute constant c>0 such that

r3([N])N(logN)1+c.

In February 2023 a preprint[17][18] (later published[19]) by Kelley and Meka gave a new bound of:

r3([N])2Ω((logN)1/12)N.

Four days later, Bloom and Sisask published a preprint giving an exposition of the result[20] (later published[21]), simplifying the argument and yielding some additional applications. Several months later, Bloom and Sisask obtained a further improvement to r3([N])exp(c(logN)1/9)N, and stated (without proof) that their techniques can be used to show r3([N])exp(c(logN)5/41)N.[22]

There has also been work done on the other end, constructing the largest set with no 3-term arithmetic progressions. The best construction has barely been improved since 1946 when Behrend[23] improved on the initial construction by Salem and Spencer and proved

r3([N])Nexp(clogN).

Due to no improvements in over 70 years, it is conjectured that Behrend's set is asymptotically very close in size to the largest possible set with no 3-term progressions.[10] If correct, the Kelley-Meka bound will prove this conjecture.

Roth's theorem in finite fields

[edit | edit source]

As a variation, we can consider the analogous problem over finite fields. Consider the finite field 𝔽3n, and let r3(𝔽3n) be the size of the largest subset of 𝔽3n which contains no 3-term arithmetic progression. This problem is actually equivalent to the cap set problem, which asks for the largest subset of 𝔽3n such that no 3 points lie on a line. The cap set problem can be seen as a generalization of the card game Set.

In 1982, Brown and Buhler[24] were the first to show that r3(𝔽3n)=o(3n). In 1995, Roy Mesuhlam[25] used a similar technique to the Fourier-analytic proof of Roth's theorem to show that r3(𝔽3n)=O(3nn). This bound was improved to O(3n/n1+ϵ) in 2012 by Bateman and Katz.[26]

In 2016, Ernie Croot, Vsevolod Lev, Péter Pál Pach, Jordan Ellenberg and Dion Gijswijt developed a new technique based on the polynomial method to prove that r3(𝔽3n)=O(2.756n).[27][28][29]

The best known lower bound is 2.2202n, discovered in December 2023 by Google DeepMind researchers using a large language model (LLM).[30]

[edit | edit source]

Another generalization of Roth's theorem shows that for positive density subsets, there not only exists a 3-term arithmetic progression, but that there exist many 3-APs all with the same common difference.

Roth's theorem with popular differences: For all

ϵ>0

, there exists some

n0=n0(ϵ)

such that for every

n>n0

and

A𝔽3n

with

|A|=α3n,

there exists some

y0

such that

|{x:x,x+y,x+2yA}|(α3ϵ)3n.

If A is chosen randomly from 𝔽3n, then we would expect there to be α33n progressions for each value of y. The popular differences theorem thus states that for each |A| with positive density, there is some y such that the number of 3-APs with common difference y is close to what we would expect.

This theorem was first proven by Green in 2005,[31] who gave a bound of n0=tow((1/ϵ)O(1)), where tow is the tower function. In 2019, Fox and Pham recently improved the bound to n0=tow(O(log1ϵ)).[32]

A corresponding statement is also true in for both 3-APs and 4-APs.[33] However, the claim has been shown to be false for 5-APs.[34]

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  10. ^ a b c Thomas F. Bloom, Olof Sisask, Breaking the logarithmic barrier in Roth's theorem on arithmetic progressions, arXiv:2007.03528, 2020
  11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  13. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  15. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  16. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  17. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  18. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  19. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  20. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  21. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  22. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  23. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  24. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  25. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  26. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  27. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  28. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  29. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  30. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  31. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  32. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  33. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  34. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
[edit | edit source]