Tao Lemma 3.4: the Vinogradov-type lemma for sums of reciprocal-sine weights
ProvedTaoFivePrimes.vinogradov_lemmaLet with . Then for any , any and any phase ,
Here is an integer, a positive integer, and the notation means ; the sum runs over the integers of the half-open interval .
This is the Vinogradov-type lemma that converts a rational approximation to into a bound for a sum of the reciprocal-sine weights that arise when Lemma 3.1 is applied term by term along an interval. It is the tool that lets a bound of the shape , obtained frequency by frequency, be summed over a whole range of at a total cost proportional to the number of length- blocks the range meets; it is what turns the pointwise estimates of Section 3 into the Type I sums of Section 5, and it is the input to the odd-restricted Corollary 3.5.
Quoted input The estimate for a single block of consecutive integers,
is quoted by the source from Deshouillers–Effinger–te Riele–Zinoviev, and appears here as a hypothesis; the content formalized is the source's own reduction of the general interval to that case, together with the normalization in . The source notes that the cited lemma is stated without the phase shift , but that its proof is unchanged in the presence of one.
Formalization Note The interval endpoints are real and the interval is half-open, so its integers are . The phase is carried as a real number rather than an element of , which is harmless because has period . Where the quotient evaluates to under the ambient division convention rather than to ; since the assertion is an upper bound for the sum, this only weakens the left-hand side and the statement remains a faithful consequence of the source's.
import Mathlib open Finset
theorem TaoFivePrimes.vinogradov_lemma (alpha beta : ℝ) (a : ℤ) (q : ℕ) (hq : 0 < q)
(halpha : alpha = (a : ℝ) / q + beta) (hbeta : |beta| ≤ 1 / (q : ℝ) ^ 2)
(A B : ℝ) (hA : 0 < A) (hB : 0 < B) (theta x y : ℝ) (hxy : x < y)
(hblock : ∀ (A' theta' : ℝ), 0 < A' → ∀ m : ℤ,
(∑ n ∈ Finset.Ioc m (m + (q : ℤ)),
min A' (1 / |Real.sin (Real.pi * (alpha * (n : ℝ)) + theta')|))
≤ 2 * A' + (2 / Real.pi) * (q : ℝ) * Real.log (4 * q)) :
(∑ n ∈ Finset.Ioc ⌊x⌋ ⌊y⌋,
min A (B / |Real.sin (Real.pi * (alpha * (n : ℝ)) + theta)|))
≤ ((⌊(y - x) / (q : ℝ)⌋ : ℝ) + 1)
* (2 * A + (2 / Real.pi) * B * (q : ℝ) * Real.log (4 * q)) := by sorry