is non-decreasing in the progression length
OpenErdos142.r_mono_lengthIf then for every ,
The reason is that a set avoiding progressions of length automatically avoids the longer ones: any non-trivial -term progression contains a non-trivial -term progression with the same first term and common difference, so every -AP-free set is -AP-free, and the family over which the maximum defining is taken is contained in the family defining .
This monotonicity is the elementary reason why lower bounds propagate upward in — Behrend's bound for is inherited by every — and why upper bounds propagate downward. It is used throughout the subject without comment, and having it available in the mission's notation avoids re-deriving it inside longer arguments.
Formalization Note. The hypothesis is required and is not cosmetic. Under the source convention, progressions of length and are trivial, so every set is free of them and , whereas for . Monotonicity therefore fails across the boundary and holds only from onward.
import Mathlib import Definitions.Def_Erdos142Basic
namespace Erdos142 theorem r_mono_length (k l N : ℕ) (hk : 2 ≤ k) (h : k ≤ l) : r k N ≤ r l N := by sorry end Erdos142
Read-back
What the Lean code literally says, in plain math · claude-opus-5
Read-back: Erdos142.r_mono_length
The statement
For all natural numbers , , , if
- , and
- ,
then
All three of , , are ordinary natural numbers (so follows from the two hypotheses, and is unconstrained, including ). There are no other hypotheses: no typeclass assumptions beyond those built into , no positivity or size condition on , and no relation between and or . The quantity is the same on both sides of the inequality; only the first argument changes.
What denotes (expanded from the bundle)
The bundle defines, for natural numbers and ,
where the supremum is the supremum of a set of natural numbers taken in (with the convention that the supremum of an empty or unbounded set of naturals is ), ranges over finite subsets of , is the integer interval from to inclusive (empty when ), is the number of elements of , and is the bundle's predicate IsAPOfLengthFree applied to viewed as a set of naturals and to coerced into .
Unwinding that predicate through the bundle's chain of definitions: for a set and a length ,
- is an arithmetic progression of length with first term and difference (
IsAPOfLengthWith) means both
where is the cardinality of as an element of ( if is infinite), and is added to itself times (ordinary multiplication in ).
- is an arithmetic progression of length (
IsAPOfLength) means there exist making the above hold. Note is only required to be a natural number; it is not required to be nonzero, and is not required to be nonzero. - is free of arithmetic progressions of length (
IsAPOfLengthFree) means
Two features of this last definition are worth stating explicitly, because they are what the code literally says. First, the conclusion does not mention : the predicate is therefore equivalent to "if some subset of is an arithmetic progression of length , then ". Consequently, for the predicate holds vacuously for every set , and for it says exactly that no subset of is an arithmetic progression of length . Since the theorem assumes , both occurrences of the predicate in this theorem fall in the second regime. Second, the subsets range over arbitrary subsets of as a set of naturals, and must be equal to the progression , not merely contain it.
Putting these together, for the condition on in the definition of reads: there do not exist such that the set has exactly elements and is contained in . The cardinality clause is what rules out the degenerate difference: if the listed set is , whose cardinality is for , so such a is never a witness. Since has no negative elements, in every non-degenerate case, so the progressions being excluded are strictly increasing -term progressions.
What the supremum evaluates to
The set of cardinalities being maximised always contains (take , which is a subset of and is progression-free for every length, per the bundle's isAPOfLengthFree_empty), and it is bounded above by (per the bundle's r_le). Hence for every and the supremum is attained: is the largest cardinality of a subset of containing no -term arithmetic progression with distinct terms, and .
Edge cases silently included
- : the interval is empty, the only admissible is , and the assertion becomes .
- : the hypotheses are satisfiable and the conclusion is the trivial .
- (the smallest allowed value): a -term progression with two distinct terms is any pair of distinct elements, so is the largest size of a subset of with no two distinct elements, i.e. for .
- may be arbitrarily large relative to ; nothing forces .
- The hypotheses are jointly satisfiable (e.g. ), so the statement is not vacuous.
What the statement does not cover
- It says nothing for : the hypothesis excludes and , the two cases in which the progression-freeness predicate degenerates to "always true" and would equal .
- It says nothing about infinite length: and are natural numbers, so the value of the length parameter permitted by the bundle's definitions never occurs here.
- It asserts a non-strict inequality only; it does not claim when , nor any quantitative gap, nor any growth or asymptotic behaviour in .
- It says nothing about monotonicity or any other behaviour in , and nothing about the actual size of beyond what the definition entails.
- The bundle also defines an elementary predicate ("there exist and with for all ") and its negation . Neither of these appears in the definition of or in this theorem; is defined solely through the
IsAPOfLengthFreechain expanded above.
Proof status
The declaration is stated with its proof left as sorry; the file asserts the statement without establishing it.