§2, pp. 94–95 — the solution rebuilt from the y*_ij has objective value LB
ProvedRossSolandGAP.Bound.rebuilt_solution_costAssume the setting of the principal result: , , , a cheapest-agent selection , and optimal solutions of (PK) for . For every task let be an agent with . Build from the (PR) solution: every task with and is taken from () and given to (); every other task stays with . Then is feasible for (PR) and
Consequently, if also satisfies the resource constraints, i.e. is feasible for (P), it is an optimal solution of (P).
The construction is how the algorithm finds candidate incumbents: the knapsack solutions say which tasks to move, and the move costs exactly the penalty.
Formalization Note The optimality conclusion combines the cost identity with the principal result, so it carries the same hypotheses (, , ). Agents and tasks are 0-based.
import Mathlib import Definitions.Def_RossSolandGAP_Bound_Model open Finset
namespace RossSolandGAP.Bound
theorem rebuilt_solution_cost {m n : ℕ} (hm : 1 < m) (c r : Fin m → Fin n → ℝ)
(b : Fin m → ℝ) (hb : ∀ i, 0 < b i) (hr : ∀ i j, 0 ≤ r i j)
(a : Fin n → Fin m) (ha : IsCheapest c a) (ystar : Fin m → Fin n → ℝ)
(hystar : ∀ i ∈ Iprime r b a, IsOptPK hm c r b a i (ystar i))
(k : Fin n → Fin m) (hk : ∀ j, k j ≠ a j ∧ pen hm c a j = c (k j) j - c (a j) j) :
FeasiblePR (rebuilt r b a ystar k) ∧
cost c (rebuilt r b a ystar k) = LB hm c r b a ystar ∧
(FeasibleP r b (rebuilt r b a ystar k) →
∀ x, FeasibleP r b x → cost c (rebuilt r b a ystar k) ≤ cost c x) := by sorry
end RossSolandGAP.Bound
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.