Lemma II.1 — along the run of Algorithm 1
ProvedDoubleGreedyUSM.Deterministic.lemma_II_1Let be a finite ground set, a submodular function, i.e. for all , and an enumeration of (each element exactly once). Run Algorithm 1 (DeterministicUSM) in this order, producing the states , and let
be the two marginal gains the algorithm compares in iteration . Then for every ,
In words, in every iteration at least one of the two options (adding to , removing from ) does not decrease the value of its solution. The lemma is used in the proof of Lemma II.2.
Formalization Note The element is l[i - 1] and the state before iteration is state f l (i - 1). Nonnegativity of is not needed and is not assumed. The paper's submodularity sentence in the introduction ("for every and ") is a slip, since for it would force monotonicity; the formalization uses the equivalent lattice form of the paper's footnote 1, via the referenced definition NonmonotoneSubmod.Shared.Submodular.
import Mathlib import Definitions.Def_NonmonotoneSubmod_Shared_Submodular import Definitions.Def_NonmonotoneSubmod_Shared_OPT import Definitions.Def_DoubleGreedyUSM_Deterministic_Algorithm1
namespace DoubleGreedyUSM.Deterministic
theorem lemma_II_1 {X : Type} [Fintype X] [DecidableEq X] (f : Finset X → ℝ)
(hf : NonmonotoneSubmod.Shared.Submodular f) (l : List X) (hl : l.Nodup)
(hcov : ∀ x, x ∈ l) :
∀ i (h1 : 1 ≤ i) (h2 : i ≤ l.length),
addGain f (state f l (i - 1)) (l[i - 1]'(by omega)) +
removeGain f (state f l (i - 1)) (l[i - 1]'(by omega)) ≥ 0 := by sorry
end DoubleGreedyUSM.Deterministic
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.