Failure of strictness forces an inserted boundary blocker
ProvedLonelyRunner.FastestBoundary.boundary_blockerformalizationlonely-runnerlrc-shared-repair-20261007number-theory
Write for distance to the nearest integer. For finite sets , let . A strict time means a real such that for every . Let and . Assume , , , , , and . If no strict time exists for , then some satisfies .
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.FastestBoundary
/-- If no strict time exists, some other insertion blocks every failed boundary.
There is no separation or cardinality hypothesis. -/
theorem LonelyRunner.FastestBoundary.boundary_blocker {n r m b : ℕ} {a c : ℤ} {R W : Finset ℕ}
(hn : 5 ≤ n) (hrR : r ∈ R) (hlarge : n ≤ 2*r) (hrn : r < n)
(hm : 2 ≤ m) (hab : n-r ≤ b) (hfail : b < m*(n-r))
(hu : a*(b:ℤ)-c*(r:ℤ)=1)
(hno : ¬ SeparatedMulti.HasStrictTime n R W) :
∃ q ∈ W.erase (m*r),
ndist ((q:ℝ)*((a:ℝ)/r-1/((n:ℝ)*m*r))) ≤ 1/n := by sorry
Source
Wade Hunter, lonely-runner research repository, https://github.com/huntrontrakkr/lonely-runner; local source snapshot 9b5f51aa235e321a3ec794c9bf60358933a8e6dc, lean/LonelyRunner/FastestBoundary.lean, lines 134–184, declaration LonelyRunner.FastestBoundary.boundary_blocker. AI-assisted formalization. The snapshot identifier records the submitted local source; it is not a claim that this commit is publicly hosted.