GrahamScaled #
Scaling and relabeling of instances, and the sufficiency half of Dósa's theorem: every positive
multiple of Graham's instance in any order attains the bound. Helpers carry the prefix gs_.
theorem
GrahamLPT.gs_optMakespan_comp
{m n : ℕ}
[NeZero m]
(p : Fin n → ℝ)
(π : Equiv.Perm (Fin n))
:
Relabeling the jobs by a permutation preserves the optimal makespan.
theorem
GrahamLPT.lpt_eq_bound_of_graham
{m n : ℕ}
[NeZero m]
(p : Fin n → ℝ)
(a : ℝ)
(ha : 0 < a)
(e : Fin n ≃ Fin (2 * m + 1))
(he : ∀ (j : Fin n), p j = a * grahamJobs m (e j))
(σ : Fin n → Fin m)
(hσ : IsLPTSchedule p σ)
:
Every positive multiple of Graham's instance, in any order, attains the bound: every LPT
schedule σ satisfies
3m · C(σ) = (4m − 1) · optMakespan.