The envelope minimizer can be taken to contain the last request
ProvedKServer.workFnU_mcshane_requestLet a -server instance in (all distances ) end with the request , and view it in the antipodal extension . By the McShane envelope theorem the extension work function at any configuration --- antipodal coordinates allowed --- is the attained minimum
over configurations of original points. This theorem sharpens the attainment: the minimiser can moreover be taken to contain the last request,
Why
Take any envelope minimiser . Because is the last request, resolves: some server satisfies . Replacing by changes the matching cost to in one coordinate only, and by the triangle inequality the increase is at most the that resolution just saved. So is again a minimiser, and it contains .
Role
This is the exact form in which the tree analysis of Coester and Koutsoupias consumes the envelope. Their Lemma 26 opens by writing, for the all-antipodes configuration,
with the original tree vertices and present --- both facts unstated there, and both supplied by this theorem. Having the in is what lets the four-point condition of the tree metric, valid only for original points, act on them in the ensuing case analysis; having present is what the case analysis pivots on. The same expansion, at other antipodal configurations, recurs throughout their multi-ray and circle arguments.
Formalization note
The extension is antipodalExtension on with original points embedded by Sum.inl; is the movement cost of the embedded configuration, and is workFnU. No finiteness of is assumed. The membership of is recorded as an index with ; combined with permutation invariance of the work function the minimiser can then be normalised to any desired position of .
import Mathlib import Definitions.Def_KServer_workfunctionU import Definitions.Def_KServer_antipodal_extension
namespace KServer
theorem workFnU_mcshane_request (k : ℕ) (hk : 1 ≤ k) (M : Type) [MetricSpace M] (Δ : ℝ)
(hΔ0 : 0 < Δ) (hΔ : ∀ x y : M, dist x y ≤ Δ)
(C₀ : Config k M) (σ : List M) (r : M) (Z : Config k (M ⊕ M)) :
∃ X : Config k M, (∃ j, X j = r) ∧
@workFnU k (M ⊕ M) (antipodalExtension M Δ hΔ0 hΔ)
(fun i => Sum.inl (C₀ i)) ((σ ++ [r]).map Sum.inl) Z
= workFnU C₀ (σ ++ [r]) X
+ @moveCost k (M ⊕ M) (antipodalExtension M Δ hΔ0 hΔ) (fun i => Sum.inl (X i)) Z := by sorry
end KServer