Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Regrouping at size floor zero, assuming the conditional future mass is non-increasing

Proved
KServer.chunk_combining_zero_floor_antitone

by Zexuan Liu · Sep 7, 2026 · Mathlib c5ea003 (Lean v4.30.0)

chunk-systemk-serveronline-algorithms

Let CCC be a chunk system with online escapes whose sizes lie in [0,cB][0,c_B][0,cB​] — size floor zero — with trivial initial information, no empty chunk, a pointwise Doob jump bound jbjbjb on the martingale of its total, and one further regularity property: its conditional future mass

Fh=E[∑j≥hcj ∣ Fh]F_h=\mathbb E\Bigl[\sum_{j\ge h}c_j\ \Bigm|\ \mathcal F_h\Bigr]Fh​=E[j≥h∑​cj​ ​ Fh​]

is non-increasing along every branch.

Statement. Writing μ\muμ for the expected total divided by MMM, the chunks regroup into a system with exactly MMM chunks whose sizes all lie in any window containing [μ−(cB+jb), μ+(cB+jb)][\mu-(c_B+jb),\ \mu+(c_B+jb)][μ−(cB​+jb), μ+(cB​+jb)], with the same expected total, escape price p′≥pe+μ+cB+jbp'\ge p_e+\mu+c_B+jbp′≥pe​+μ+cB​+jb, trivial initial information and no empty chunk.

Relation to the existing regrouping lemma. KServer.chunk_combining_strong proves the same conclusion under a positive size floor cAc_AcA​ together with jb≤cAjb\le c_Ajb≤cA​. Those two hypotheses are exactly what makes the conditional future mass non-increasing, by ChunkSystemB.condFuture_antitone; so the present statement is a strict generalization, obtained by keeping only the consequence that the proof uses and dropping the floor entirely.

Why the floor has to go. The level steps of the Ω(log⁡2k)\Omega(\log^2k)Ω(log2k) construction, KServer.level_step_sturdy and KServer.level_step_full, both consume and produce systems with size floor 000 — the race genuinely creates chunks of size zero — and a floor cannot be raised afterwards, since KServer.ChunkSystemB.adjust only lowers one. So the regrouping that carries the induction from one level to the next has to accept floor zero, and chunk_combining_strong cannot.

What this statement settles, and what it leaves open. Its proof shows that the whole of the positive-floor argument survives at floor zero once monotonicity of FFF is assumed separately: the target levels and the boundary stopping times only need the expected total to be nonnegative, which holds because the sizes are; the boundaries still increase strictly, from the slack cB+jb<μc_B+jb<\mucB​+jb<μ alone; and the last boundary is pinned to the final chunk by definition, the last window then having conditional size in [μ−(cB+jb),μ][\mu-(c_B+jb),\mu][μ−(cB​+jb),μ]. Monotonicity of FFF is used in exactly one place, the escape-price charging, where the conditional future mass at the moment the escape rule fires is compared with its value at the start of the window.

That single use is also the reason this statement does not yet close the recursion. A system produced by a level step need not have FFF non-increasing: revealing a coin of the race can raise the expected remaining mass by more than the chunk just consumed. Removing the hypothesis therefore requires redoing the charging in the manner of the source, which charges the escape price to the subchunk during which the algorithm escapes and a fake cost conditioned at the window start to each subsequent subchunk, never evaluating the conditional future mass at the firing time. KServer.chunk_combining_zero_floor is that hypothesis-free statement.

Preamble
import Mathlib
import Definitions.Def_KServer_model
import Definitions.Def_KServer_evader
import Definitions.Def_KServer_evader_bail
import Definitions.Def_KServer_chunk_system_b
import Definitions.Def_KServer_chunk_cond
Formal statement
namespace KServer

theorem chunk_combining_zero_floor_antitone {X : Type*} [MetricSpace X] {s t : X}
    {cB T pe : ℝ} {mL : ℕ}
    (C : ChunkSystemB X s t 0 cB T pe mL)
    (h0 : ∀ ω ω' : C.Ω, C.hist 0 ω = C.hist 0 ω')
    (hch : ∀ (ω : C.Ω) (i : Fin C.m), C.chunk ω i ≠ [])
    {jbS : ℝ} (hjb : C.DoobJumpBound jbS) (hjb0 : 0 ≤ jbS)
    (hanti : ∀ (h h' : ℕ) (ω : C.Ω), h ≤ h' → C.condFuture h' ω ≤ C.condFuture h ω)
    (hcB : 0 ≤ cB)
    {M : ℕ} (hM0 : 0 < M) {cLo' cHi' p' : ℝ}
    (hlo0 : 0 < cLo')
    (hlo : cLo' ≤ (∑ ω, C.P ω * ∑ i, C.size ω i) / M - (cB + jbS))
    (hhi : (∑ ω, C.P ω * ∑ i, C.size ω i) / M + (cB + jbS) ≤ cHi')
    (hp : pe + ((∑ ω, C.P ω * ∑ i, C.size ω i) / M + (cB + jbS)) ≤ p') :
    ∃ C' : ChunkSystemB X s t cLo' cHi' T p' M,
      C'.m = M ∧ (∀ ω₁ ω₂ : C'.Ω, C'.hist 0 ω₁ = C'.hist 0 ω₂) ∧
      (∀ (ω : C'.Ω) (i : Fin C'.m), C'.chunk ω i ≠ []) := by sorry

end KServer
Source
S. Bubeck, C. Coester, Y. Rabani, The randomized k-server conjecture is false!, STOC 2023, https://arxiv.org/abs/2211.05753, Lemma 15 (pp. 19-21). Generalization of the platform theorem KServer.chunk_combining_strong, replacing its positive size floor and the condition jb <= floor by the consequence of those two that the argument actually uses.

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