Proof of Theorem 5.1, second case — a one-item-each allocation is a 2√m-approximation
ProvedComplementFreeCA.ValueQuery.case_two_one_item_eachLet be normalized, monotone, complement-free valuations on bundles of and let be an allocation. With large and small bidders as in the first case (, resp. ), suppose the small bidders carry strictly more welfare:
Then there is an allocation with pairwise disjoint bundles and for every such that
This is the second case of the proof of Theorem 5.1: giving each small bidder its most valuable item of yields an allocation of the second kind the algorithm considers, worth at least .
Formalization Note The paper's chain uses strict inequalities and divides by ; both fail when some or all values vanish, so the conclusion is stated with and without division. The case hypothesis keeps the page's strict inequality.
import Mathlib import Definitions.Def_ComplementFreeCA_ValueQuery_Basic open Finset
namespace ComplementFreeCA.ValueQuery
/-- Proof of Theorem 5.1, second case (p. 12): if the bidders whose bundle has fewer than `√m`
items carry strictly more welfare than the others, some allocation giving every bidder at most one
item has welfare at least `|OPT|/(2√m)`. -/
theorem case_two_one_item_each {n m : ℕ} (v : Fin n → Finset (Fin m) → ℝ)
(hv : ∀ i, IsCFValuation (v i)) (O : Fin n → Finset (Fin m)) (hO : IsAllocation O)
(hcase : ∑ i ∈ univ.filter (fun i => Real.sqrt m ≤ ((O i).card : ℝ)), v i (O i) <
∑ i ∈ univ.filter (fun i => ((O i).card : ℝ) < Real.sqrt m), v i (O i)) :
∃ A : Fin n → Finset (Fin m), IsAllocation A ∧ (∀ i, (A i).card ≤ 1) ∧
welfare v O ≤ 2 * Real.sqrt m * welfare v A := by sorry
end ComplementFreeCA.ValueQuery
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.