Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

p. 63, proof of Theorem 1 — an interchange according to (II) gives a value of F smaller than or the same as before

Proved
JohnsonFlowShop.TwoStage.interchange_F_le

by mikedeng1 · Sep 28, 2026 · Mathlib 0df444a (Lean v4.33.1)

flow-shopjohnson-rulep2o-batch-p200bp2o-gran-per-chapterp2o-plan-paperp2o-v1scheduling

Let n≥1n \ge 1n≥1, let A,BA, BA,B be real processing times, and let σ\sigmaσ be an order, σ(k)\sigma(k)σ(k) being the item in position kkk. Fix a position jjj with j+1≤n−1j + 1 \le n-1j+1≤n−1, and let σ′\sigma'σ′ be σ\sigmaσ with the items in positions jjj and j+1j+1j+1 interchanged. If the items in positions j,j+1j, j+1j,j+1 of σ\sigmaσ are in an order allowed by relation (II),

min⁡(Aσ(j),Bσ(j+1))≤min⁡(Aσ(j+1),Bσ(j)),\min\bigl(A_{\sigma(j)}, B_{\sigma(j+1)}\bigr) \le \min\bigl(A_{\sigma(j+1)}, B_{\sigma(j)}\bigr),min(Aσ(j)​,Bσ(j+1)​)≤min(Aσ(j+1)​,Bσ(j)​),

then

F(σ)≤F(σ′).F(\sigma) \le F(\sigma').F(σ)≤F(σ′).

Read from σ′\sigma'σ′ to σ\sigmaσ: interchanging two consecutive items into the order that (II) allows gives a value of F=max⁡uKuF = \max_u K_uF=maxu​Ku​ smaller than or the same as before. This is the step by which Johnson passes from an arbitrary sequence S0S_0S0​ to S∗S^*S∗.

Formalization Note σ′=σ∘(j j+1)\sigma' = \sigma \circ (j\ j{+}1)σ′=σ∘(j j+1) swaps positions; FFF requires n≥1n \ge 1n≥1 ([NeZero n]). No positivity is needed.

Preamble
import Mathlib
import Definitions.Def_JohnsonFlowShop_Shared_K
import Definitions.Def_JohnsonFlowShop_TwoStage_F
Formal statement
namespace JohnsonFlowShop.TwoStage

/-- p. 63 (proof of Theorem 1): if the items in positions `j` and `j + 1` of `σ` are in an order
allowed by (II), `min (A (σ j), B (σ (j+1))) ≤ min (A (σ (j+1)), B (σ j))`, then interchanging
them does not decrease `F`: `F(σ) ≤ F(σ')`. Equivalently, interchanging an adjacent pair into
the order (II) prefers gives a value of `F` smaller than or the same as before. -/
theorem interchange_F_le {n : ℕ} [NeZero n] (A B : Fin n → ℝ) (σ : Equiv.Perm (Fin n))
    (j : ℕ) (hj : j + 1 < n)
    (hII : min (A (σ ⟨j, by omega⟩)) (B (σ ⟨j + 1, hj⟩)) ≤
      min (A (σ ⟨j + 1, hj⟩)) (B (σ ⟨j, by omega⟩))) :
    F A B σ ≤ F A B (σ * Equiv.swap ⟨j, by omega⟩ ⟨j + 1, hj⟩) := by sorry

end JohnsonFlowShop.TwoStage
Source
Johnson, Optimal Two- and Three-Stage Production Schedules with Setup Times Included, NRLQ 1(1) 1954, p. 63, Theorem 1 ("each interchange will give a value of F smaller than or the same as before")
Human review
  • Endorsed by Shuze Chen · Oct 1, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Oct 1, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me