Proposition 4.1 — on the bit family the best deterministic competitive ratio is
ProvedOnlineSetCover.LowerBound.proposition_4_1Let , , , and let where is the set of elements of whose th bit is on. Then the competitive ratio of the best deterministic online algorithm for the online set cover problem is . Precisely:
- ;
- for every valid deterministic online algorithm there is a nonempty arrival sequence such that some single set of contains every element of (so ) and
- there is a valid deterministic online algorithm such that for every arrival sequence and every offline cover of , .
Parts 2 and 3 together say the optimal deterministic competitive ratio on this instance is exactly . The adversary of part 2 is also the one-block step of the lower bound for the block family of Section 4.
Formalization Note The parameter is and , so needs no logarithm. The hypothesis is the paper's implicit one (it indexes ); for the family is empty and part 2 fails. Element lies in no ; validity asks nothing for it, and part 2's sequence avoids it because one set covers it. Algorithms may add several sets per arrival. Part 2 states and cost , which is how the paper's proof establishes the ratio.
import Mathlib import Definitions.Def_OnlineSetCover_LowerBound_Game import Definitions.Def_OnlineSetCover_LowerBound_BitFamily
namespace OnlineSetCover.LowerBound
/-- Proposition 4.1 (Alon et al. 2009, p. 368). On `X = {0, …, 2^k − 1}` with the family
`F = {F_1, …, F_k}` of bit sets, (1) `|F| = k`; (2) against every valid deterministic online
algorithm the adversary has a nonempty arrival sequence that one set of `F` covers (so
`OPT = 1`) while the algorithm chooses at least `k = k · OPT` sets; (3) some valid deterministic
online algorithm chooses at most `k · |C|` sets on every arrival sequence and every offline
cover `C` of it, i.e. has competitive ratio at most `k`. -/
theorem proposition_4_1 (k : ℕ) (hk : 0 < k) :
(bitFamily k).card = k ∧
(∀ A : OnlineAlg (Fin (2 ^ k)), IsValid (bitFamily k) A →
∃ σ : List (Fin (2 ^ k)), σ ≠ [] ∧
(∃ S ∈ bitFamily k, ∀ x ∈ σ, x ∈ S) ∧ k ≤ cost A σ) ∧
(∃ A : OnlineAlg (Fin (2 ^ k)), IsValid (bitFamily k) A ∧
∀ (σ : List (Fin (2 ^ k))) (C : Finset (Finset (Fin (2 ^ k)))),
IsCoverOf (bitFamily k) C σ → cost A σ ≤ k * C.card) := by sorry
end OnlineSetCover.LowerBound
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.