The k-server to evader reduction on k+1 points (online direction)
ProvedKServer.server_to_evader_reductionLet be a metric space with exactly points, with minimum positive distance and diameter at most , and let satisfy . From every lazy simple deterministic -server algorithm on (injective configurations, no motion on covered requests, single-server moves — as supplied by exists_lazy_injective_algorithm) one can extract a deterministic evader (MSS) algorithm starting at the hole of 's initial configuration, with
where encodes each set request as passes through .
Role
This is the online half of the folklore reduction for -point spaces (Bubeck–Coester–Rabani, STOC 2023, Proposition 2.6): a lower bound against every deterministic evader algorithm transfers, through this theorem, to a lower bound against every deterministic -server algorithm on the encoded sequences — the key step in carrying the construction from MSS to the -server problem.
Proof idea
A lazy simple configuration on points leaves exactly one hole uncovered. Requests away from the hole are covered and free; a request at the hole moves it, at a cost equal to its displacement. Hence during one pass through a hole outside is necessarily hit (it cannot move until its own point is requested), paying at least ; once the hole enters it is never touched again by the block. After passes the hole is in , or the block has paid — enough to pay for teleporting the evader into . The evader is therefore defined as the hole, adjusted into the last requested set when necessary; its per-block movement is at most the hole's displacement (dominated by the block cost) plus two adjustments (each dominated by the cost of the block that caused them), giving the factor .
Formalization note
The hole is the unique point outside the configuration's range, by a counting argument; the potential in the induction is the evader cost plus twice the standing adjustment distance.
import Mathlib import Definitions.Def_KServer_model import Definitions.Def_KServer_evader import Definitions.Def_KServer_evader_encoding
namespace KServer
theorem server_to_evader_reduction (k : ℕ) (M : Type*) [MetricSpace M] [Fintype M]
(hcard : Fintype.card M = k + 1)
(δ Δ : ℝ) (hδ0 : 0 < δ) (hδ : ∀ x y : M, x ≠ y → δ ≤ dist x y)
(hΔ : ∀ x y : M, dist x y ≤ Δ) (R : ℕ) (hR : Δ ≤ R * δ)
(B : OnlineAlgorithm k M)
(hBinj : ∀ l : List M, Function.Injective (B.conf l))
(hlazy : ∀ (l : List M) (r : M), (∃ i, B.conf l i = r) → B.conf (l ++ [r]) = B.conf l)
(hlazy2 : ∀ (l : List M) (r : M), ∃ i : Fin k,
B.conf (l ++ [r]) = Function.update (B.conf l) i r) :
∃ E : EvaderAlgorithm M,
(E.pos [] ∉ Set.range (B.conf [])) ∧
∀ σ : List (Set M), E.cost σ ≤ 4 * B.cost (encSeq M R σ) := by sorry
end KServer