Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

A complete primitive cover forces an active half-phase blocker

Proved
LonelyRunner.CollectiveBoundaryForcing.second_fastest_forces_parity

by Whunt003 · Oct 7, 2026 · Mathlib 0df444a (Lean v4.33.1)

formalizationlonely-runnerlrc-shared-repair-20261007number-theory

Write d(x)=∣x−round⁡(x)∣d(x)=|x-\operatorname{round}(x)|d(x)=∣x−round(x)∣ for distance to the nearest integer. For finite sets R,W⊆NR,W\subseteq\mathbb NR,W⊆N, let S(n,R,W)={v∈N:0<v<n, v∉R}∪WS(n,R,W)=\{v\in\mathbb N:0<v<n,\ v\notin R\}\cup WS(n,R,W)={v∈N:0<v<n, v∈/R}∪W. A strict time means a real ttt such that d(vt)>1/nd(vt)>1/nd(vt)>1/n for every v∈S(n,R,W)v\in S(n,R,W)v∈S(n,R,W). Write Ur={0≤b<r:gcd⁡(r,b)=1}U_r=\{0\le b<r:\gcd(r,b)=1\}Ur​={0≤b<r:gcd(r,b)=1}, Fn,r={n−r≤b<n:gcd⁡(r,b)=1}F_{n,r}=\{n-r\le b<n:\gcd(r,b)=1\}Fn,r​={n−r≤b<n:gcd(r,b)=1}, and B(n,r,m,q,b)B(n,r,m,q,b)B(n,r,m,q,b) for the existence of an integer DDD with ∣nmD−q∣≤mr|nmD-q|\le mr∣nmD−q∣≤mr and r∣Db−qr\mid Db-qr∣Db−q. Let n,r,m,Q,ℓ∈Nn,r,m,Q,\ell\in\mathbb Nn,r,m,Q,ℓ∈N, P=mrP=mrP=mr, and WWW be positive. Assume n≥5n\ge5n≥5, r∈Rr\in Rr∈R, r<n≤2rr<n\le2rr<n≤2r, m≥2m\ge2m≥2, n≤m(n−r)n\le m(n-r)n≤m(n−r), P,Q∈WP,Q\in WP,Q∈W, P<QP<QP<Q, every member of W∖{P,Q}W\setminus\{P,Q\}W∖{P,Q} is less than PPP, and PPP is the unique member of WWW divisible by rrr. If ℓ≥3\ell\ge3ℓ≥3, ∣W∣≤ℓ|W|\le\ell∣W∣≤ℓ, φ(r)≥2ℓ−2\varphi(r)\ge2\ell-2φ(r)≥2ℓ−2, and no strict time exists, then r∣2Qr\mid2Qr∣2Q and some b∈Fn,rb\in F_{n,r}b∈Fn,r​ satisfies B(n,r,m,Q,b)B(n,r,m,Q,b)B(n,r,m,Q,b).

Preamble
import Mathlib
import Mathlib.Data.ZMod.Units
import Mathlib.GroupTheory.Index
import Mathlib.RingTheory.Coprime.Lemmas
import Mathlib.RingTheory.Int.Basic
import Definitions.Def_LRC_SharedRepair_Defs
Formal statement
open LonelyRunner
open LonelyRunner.CollectiveBoundaryForcing
open CollectiveBoundary CollectiveUnits

/-- With at most `ell` insertions, a unique second-fastest repair can cover a
full primitive period only when its faster insertion has half-integer phase.
The returned primitive boundary also certifies that this fast band is active. -/
theorem LonelyRunner.CollectiveBoundaryForcing.second_fastest_forces_parity {n r m Q ell : ℕ} {R W : Finset ℕ}
    (hn : 5 ≤ n) (hrR : r ∈ R) (hlarge : n ≤ 2*r) (hrn : r < n)
    (hm : 2 ≤ m) (hfull : n ≤ m*(n-r))
    (hP : m*r ∈ W) (hQ : Q ∈ W) (hpq : m*r < Q)
    (hWpos : ∀ q ∈ W, 0 < q)
    (hslow : ∀ q ∈ (W.erase (m*r)).erase Q, q < m*r)
    (hunique : ∀ q ∈ W.erase (m*r), ¬r ∣ q)
    (hell : 3 ≤ ell) (hcard : W.card ≤ ell)
    (hphi : 2*ell-2 ≤ r.totient)
    (hno : ¬ SeparatedMulti.HasStrictTime n R W) :
    (r ∣ 2*Q) ∧ ∃ b ∈ primitiveFlanks n r,
      Blocks (n:ℤ) r m Q b := by sorry
Source
Wade Hunter, lonely-runner research repository, https://github.com/huntrontrakkr/lonely-runner; local source snapshot 9b5f51aa235e321a3ec794c9bf60358933a8e6dc, lean/LonelyRunner/CollectiveBoundaryForcing.lean, lines 26–131, declaration LonelyRunner.CollectiveBoundaryForcing.second_fastest_forces_parity. AI-assisted formalization. The snapshot identifier records the submitted local source; it is not a claim that this commit is publicly hosted.

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me