Vinogradov-type lemma with coprimality (source Lemma 3.4, interval form)
ProvedTaoFivePrimes.vinogradov_lemma_if_form_coprimeLemma 3.4 in the form the Type I argument consumes, with the coprimality hypothesis restored.
Let , let and , let be an integer coprime to , and let with . Then for all real and all ,
with at a vanishing phase and elsewhere.
This is the source's Lemma 3.4, stated over the integer interval . It differs from the platform's TaoFivePrimes.vinogradov_lemma_if_form (which is false as stated — see the Accepted disproof) only by the added hypothesis ; that hypothesis is part of the classical statement, since the source writes with a reduced fraction, and it is exactly what prevents the phase from being constant modulo .
The proof is the source's: subdivide the range into consecutive blocks of length and apply the block estimate on each. The subdivision half is already formalised and proved as TaoFivePrimes.vinogradov_lemma_if_form_from_block; this node is the assembly of that with the corrected block estimate TaoFivePrimes.vinogradov_block_coprime.
Formalization note. The hypotheses and are needed: for the left side has one term per integer in the interval while the right side only counts blocks of length . The convention at the zeros of the sine is made explicit by an if, since Lean's real division returns there.
import Mathlib open Finset
theorem TaoFivePrimes.vinogradov_lemma_if_form_coprime
(B : ℝ) (hB : 0 ≤ B) (q : ℕ) (hq : 0 < q)
(A' alpha' beta' theta' u v : ℝ) (a' : ℤ) (hA' : 0 ≤ A')
(ha'q : Nat.Coprime a'.natAbs q)
(halpha' : alpha' = (a' : ℝ) / q + beta') (hbeta' : |beta'| ≤ 1 / (q : ℝ) ^ 2)
(huv : u < v) :
(∑ n ∈ Finset.Ioc ⌊u⌋ ⌊v⌋,
(if Real.sin (Real.pi * alpha' * (n : ℝ) + theta') = 0 then A'
else min A' (B / |Real.sin (Real.pi * alpha' * (n : ℝ) + theta')|)))
≤ ((⌊(v - u) / (q : ℝ)⌋ : ℤ) + 1)
* (2 * A' + (2 / Real.pi) * B * (q : ℝ) * Real.log (4 * q)) := by
sorry