Motivation
In 1975 P. Brucker, J. K. Lenstra and A. H. G. Rinnooy Kan classified a large part of deterministic machine scheduling by computational complexity, using the then new theory of NP-completeness of Cook and Karp. Their report, Complexity of Machine Scheduling Problems (Mathematisch Centrum, Amsterdam, 1975; published in Annals of Discrete Mathematics 1, 1977), gives for many problems either a polynomial algorithm or a polynomial reduction from a known NP-complete problem. It drew the boundary between easy and hard scheduling problems that later surveys and the standard three-field classification build on.
This mission covers four reductions of the report's Theorem 4 that concern shops with several machines. A flow shop processes every job on machines M1,…,Mm in this order; a job shop lets each job follow its own route. For two machines and no further constraints, the flow shop is solved by Johnson's rule (Johnson, 1954) and the job shop with at most two operations per job by Jackson's extension of it (1956). The four reductions show that these positive results stop exactly where one more feature is added: one job with a nonzero release date, tree-shaped precedence constraints, a third operation per job, or a third machine.
Setting
A general shop instance has jobs J1,…,Jn and machines M1,…,Mm. Job Jj consists of mj operations; its r-th operation runs on machine μjr for pjr∈N time units, and the tuple μj is the job's machine order (a machine may occur more than once). Each job has a release date rj, and some pairs of jobs carry a precedence constraint Jj<Jk.
A schedule gives every operation a start time. It is feasible if no operation of Jj starts before rj; the operations of each job run in the order μj, each after the previous one completes; two operations on the same machine never overlap; and Jj<Jk implies Cj≤Bk, where Cj is the completion time of Jj and Bk the starting time of Jk. The makespan is Cmax=maxjCj.
In the report's notation n∣m∣ℓ,λ∣Cmax, ℓ=F means a flow shop and ℓ=G a job shop; λ may contain rn≥0 (only the last job has a release date), tree (the precedence graph is a branching: no directed cycle, and either every indegree or every outdegree is at most one) and mj≤m∗ (at most m∗ operations per job). The recognition version of a problem asks, for an instance and a number y, whether a feasible schedule with Cmax≤y exists.
KNAPSACK asks, for positive integers a1,…,at and b, whether some S⊆T={1,…,t} has ∑j∈Saj=b. A problem P′ is reducible to P (P′∝P) if every instance of P′ can be transformed in polynomial time into an instance of P with the same answer.
Formalization targets
Goal: Theorem 4(g)–(j)
KNAPSACK ∝ n∣2∣F,rn≥0∣Cmax,n∣2∣F,tree∣Cmax,n∣2∣G,mj≤3∣Cmax,n∣3∣G,mj≤2∣Cmax.
Each part is a polynomial-time many-one reduction between languages of binary strings. The other six parts of Theorem 4 (single-machine problems) belong to other missions of this series.
Milestones: the four equivalences
For positive a1,…,at,b with 0<b<A=∑j∈Taj, and for each of the paper's four constructions with its threshold y,
∃S⊆T: j∈S∑aj=b⟺the constructed instance has a feasible schedule with Cmax≤y,
with y=A+1 for (i), y=2A for (j), y=t(A+1) for (g) and y=t(A+1)+1 for (h). The milestones are stated directly about the printed constructions, in the order (i), (j), (g), (h) of the report.
Significance
With the NP-completeness of KNAPSACK (Karp, 1972), the goal makes the four problems NP-complete. As the report notes, (i) and (j) together with the elementary reductions of its Theorem 1 make the general job shop n∣m∣G∣Cmax NP-complete for every fixed m≥2. Parts (g) and (h) show that Johnson's two-machine algorithm admits neither release dates nor precedence constraints in general. Because KNAPSACK can be solved in pseudo-polynomial time, these results establish NP-hardness in the ordinary sense only; strong NP-hardness of some of these problems came later (Garey, Johnson and Sethi, 1976, for the three-machine flow shop).
The results are proved in the report; no machine-checked proof of any of them is known to exist. A formalization adds explicit constructions and complete equivalence proofs where the report is brief: in (h) it proves one inequality and states that the rest "is analogous to that of reduction (g)", and the forward directions are given by figures. It also produces a reusable formal model of general shops with integral start times, release dates, precedence and repeated machines.
Difficulty
Polynomial-time computability of the constructions is routine in principle but laborious in Cook's Turing-machine model, which is the setting of the goal: binary arithmetic for A, taj and t(A−b), and parsing of the KNAPSACK code.
The mathematical difficulty is the reverse direction of each equivalence. The report's arguments are phrased in terms of "a processing order on M1" and treat the jobs before and after an extra job as two blocks. A formal proof must derive such an order from arbitrary start times and must handle every interleaving, including idle time and the case where the extra job's operations do not fit the printed pattern. In (j) the printed bound for the case c<0 contains a minimum of two quantities whose justification is left to the reader. In (h) the printed case uses taj≥t, so the positivity of the data matters, and the remaining cases are only said to be analogous to (g).
Formalization scope
Jobs are Fin n and machines Fin m, both 0-based. A job's operations form a list of (machine, processing time) pairs, so machine orders may repeat machines, as μn=(M2,M1,M2) in (i) does. Start times are natural numbers. The report computes schedules from processing orders on integer data, the makespan is a regular criterion, and release dates and precedence survive shifting operations left, so integral start times lose no value. Cmax≤y is stated as Cj≤y for every j; no maximum over an empty set is formed. Precedence Jj<Jk is between jobs: every operation of Jk starts no earlier than Cj. A branching is an acyclic precedence graph in which every indegree is at most one or every outdegree is at most one; the report's "either … or" is read for the whole graph. Job-shop classes require at least one operation per job. A flow-shop job has exactly the operations (M1,M2), with times allowed to be zero.
The following readings of the report are made explicit. "Reducible" is Karp reducibility, CookPvsNP.PolyReducible from the published definitions CookPvsNP_defs. The languages are over the four-letter alphabet with binary numbers of the published definition ProjSchedTW.Complexity.Encoding. Its subsetSumLang allows zero sizes, while the report's KNAPSACK is over positive integers, so KNAPSACK is defined locally with positivity in the language. "We may assume that 0<b<A" becomes a hypothesis of every equivalence; the goal's reduction must still handle the other inputs. The printed "value Cmax=y" of the forward directions is read as "≤y", as Section 2 defines the recognition version. The remark that (h) is analogous to (g) becomes the full equivalence for (h). An instance outside the problem's class is not in its language. NP-membership is not part of the goal.
The formal two-stage flow-shop models of Johnson's paper (JohnsonFlowShop.TwoStage.IsFeasible) and the job-shop model of Jansen, Solis-Oba and Sviridenko (JobShopLTAS.Core.Instance) use real start times and have neither release dates nor precedence. They were consulted, but the model here is local.
Ruled out as trivializing: a goal without the polynomial-time condition (the bare equivalence of yes-instances), a target language that accepts instances outside the class, and equivalences about some instance rather than the printed construction.
Contributions are welcome on any milestone, on a general lemma that turns a feasible schedule into a processing order per machine, and on polynomial-time computability of list arithmetic in the Turing-machine model, which every reduction of this series needs.
Selected references
- P. Brucker, J. K. Lenstra, A. H. G. Rinnooy Kan, Complexity of Machine Scheduling Problems, Mathematisch Centrum Report BW 43/75, Amsterdam, 1975; Annals of Discrete Mathematics 1 (1977) 343–362. https://doi.org/10.1016/S0167-5060(08)70743-X
- R. M. Karp, Reducibility among combinatorial problems, in Complexity of Computer Computations, Plenum, 1972, 85–103. https://doi.org/10.1007/978-1-4684-2001-2_9
- S. M. Johnson, Optimal two- and three-stage production schedules with setup times included, Naval Research Logistics Quarterly 1 (1954) 61–68. https://doi.org/10.1002/nav.3800010110
- J. R. Jackson, An extension of Johnson's results on job lot scheduling, Naval Research Logistics Quarterly 3 (1956) 201–203. https://doi.org/10.1002/nav.3800030307
- M. R. Garey, D. S. Johnson, R. Sethi, The complexity of flowshop and jobshop scheduling, Mathematics of Operations Research 1 (1976) 117–129. https://doi.org/10.1287/moor.1.2.117
- S. A. Cook, The P versus NP problem, Clay Mathematics Institute. https://www.claymath.org/wp-content/uploads/2022/06/pvsnp.pdf