Lemma 2.2 — at most sets suffice to keep from increasing
ProvedOnlineSetCover.Unweighted.lemma_2_2Consider an iteration of the unweighted online set-cover algorithm in which a weight augmentation is performed. Let the instance have elements, let the current set weights be positive, let be the current cover, and let be the arriving element, with . Let be the minimal integer with , and let be the weights after multiplying by for every . Then there is a family with such that
That is, the algorithm can always complete step 2(c): the potential after the iteration is at most the potential before it . This is what makes the algorithm well defined and keeps the potential nonincreasing throughout the run.
Formalization Note The paper's "at most sets" is read as with the natural logarithm: the proof repeats a random choice times and uses , which needs the natural logarithm and a number of repetitions at least . The lemma is stated for any state with positive weights (the algorithm maintains ), not only for reachable ones.
import Mathlib import Definitions.Def_OnlinePrimalDual_OnlineSetCover_SetCoverInstance import Definitions.Def_OnlinePrimalDual_OnlineSetCover_elementWeight import Definitions.Def_OnlineSetCover_Unweighted_Algorithm open OnlinePrimalDual.OnlineSetCover
namespace OnlineSetCover.Unweighted
/-- Lemma 2.2 (Alon et al. 2009, p. 364): in an iteration with a weight augmentation (the
arriving element `j` has `w_j < 1`, `k` is the minimal integer with `2^k w_j > 1`, and every set
containing `j` has its weight multiplied by `2^k`), there is a family `F` of at most `⌈4 ln n⌉`
sets containing `j` such that the potential after the iteration, with cover `𝒞 ∪ F` and the
augmented weights, is at most the potential before it. Weights are positive, as the algorithm
maintains. -/
theorem lemma_2_2 {E T : Type*} [Fintype E] [Fintype T] [DecidableEq T]
(inst : SetCoverInstance E T) (w : T → ℝ) (hw : ∀ S, 0 < w S)
(cover : Finset T) (j : E) (k : ℕ)
(hlt : elementWeight inst w j < 1)
(hk : IsAugExponent (elementWeight inst w j) k) :
∃ F : Finset T, F ⊆ inst.elemSets j ∧ F.card ≤ setCap (Fintype.card E) ∧
potential inst (augment inst w j k) (cover ∪ F) ≤ potential inst w cover := by sorry
end OnlineSetCover.Unweighted
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.