Documentation

Mathlib.Combinatorics.Additive.Corner.Roth

The corners theorem and Roth's theorem #

This file proves the corners theorem and Roth's theorem on arithmetic progressions of length three.

References #

noncomputable def cornersTheoremBound (ε : ) :

An explicit form for the constant in the corners theorem.

Note that this depends on SzemerediRegularity.bound, which is a tower-type exponential. This means cornersTheoremBound is in practice absolutely tiny.

Equations
Instances For
    theorem corners_theorem {G : Type u_1} [AddCommGroup G] [Fintype G] (ε : ) (hε : 0 < ε) (hG : cornersTheoremBound ε Fintype.card G) (A : Finset (G × G)) (hAε : ε * (Fintype.card G) ^ 2 A.card) :

    The corners theorem for finite abelian groups.

    The maximum density of a corner-free set in G × G goes to zero as |G| tends to infinity.

    theorem corners_theorem_nat {n : } {ε : } (hε : 0 < ε) (hn : cornersTheoremBound (ε / 9) n) (A : Finset ( × )) (hAn : A Finset.range n ×ˢ Finset.range n) (hAε : ε * n ^ 2 A.card) :

    The corners theorem for .

    The maximum density of a corner-free set in {1, ..., n} × {1, ..., n} goes to zero as n tends to infinity.

    theorem roth_3ap_theorem {G : Type u_1} [AddCommGroup G] [Fintype G] (ε : ) (hε : 0 < ε) (hG : cornersTheoremBound ε Fintype.card G) (A : Finset G) (hAε : ε * (Fintype.card G) A.card) :

    Roth's theorem for finite abelian groups.

    The maximum density of a 3AP-free set in G goes to zero as |G| tends to infinity.

    theorem roth_3ap_theorem_nat {n : } (ε : ) (hε : 0 < ε) (hG : cornersTheoremBound (ε / 3) n) (A : Finset ) (hAn : A Finset.range n) (hAε : ε * n A.card) :

    Roth's theorem for .

    The maximum density of a 3AP-free set in {1, ..., n} goes to zero as n tends to infinity.

    theorem rothNumberNat_isLittleO_id :
    (fun (N : ) => (rothNumberNat N)) =o[Filter.atTop] fun (N : ) => N

    Roth's theorem for as an asymptotic statement.

    The maximum density of a 3AP-free set in {1, ..., n} goes to zero as n tends to infinity.