Theorem 2
Lax496464.Theorem2 · concepts/Lax496464/Theorem2.lean · lax-496464
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Theorem
Just-in-time scheduling in a two-stage flexible flow shop is solved in time, where is the threshold, the number of jobs and the number of second-stage machines: the table of Section 3 has columns and rows, and recursion (1) fills each entry from two earlier ones.
The answer is read off the table at the smallest indices: a set of weight compatible with them and preprocessable from the instant is exactly a feasible solution of weight .
Concept map
Evidence
In the paper
- page 4 of this submission's paper
Lean source view on GitHub
| 1 | import Lax496464.DynamicProgram |
| 2 | import Lax496464.Problems |
| 3 | |
| 4 | /-! |
| 5 | --- |
| 6 | title: Theorem 2 |
| 7 | type: theorem |
| 8 | --- |
| 9 | Just-in-time scheduling in a two-stage flexible flow shop is solved in |
| 10 | time, where is the threshold, the number of jobs and the |
| 11 | number of second-stage machines: the table of Section 3 has columns and rows, |
| 12 | and recursion (1) fills each entry from two earlier ones. |
| 13 | |
| 14 | The answer is read off the table at the smallest indices: a set of weight |
| 15 | compatible with them and preprocessable from the instant is exactly a feasible |
| 16 | solution of weight . |
| 17 | |
| 18 | # Formalization Notes |
| 19 | |
| 20 | Two statements: the read-off, which is a combinatorial fact about the table, and the |
| 21 | running time, which is a claim about a program. |
| 22 | |
| 23 | The read-off is what connects the recursion to the problem. Compatibility with the |
| 24 | smallest indices is schedulability on machines and no more, and a budget of is |
| 25 | the first-stage machine starting at the beginning of time, so the two ends of the table |
| 26 | meet the definition of a feasible set. Without it the recursion would compute something |
| 27 | about a table and nothing about the shop. |
| 28 | |
| 29 | The running time is stated with explicit constants rather than asymptotically, and with |
| 30 | the s the product needs to stay meaningful at the extremes: a threshold of zero, a |
| 31 | shop with no machines, and a shop with no jobs each drive the bare product to zero or |
| 32 | one, and no program answers in no instructions. The two forms agree up to the constant as |
| 33 | soon as there is a job and a machine. |
| 34 | |
| 35 | The fitting condition carries a clause beyond the usual one, that the table itself fits |
| 36 | into memory. The table is indexed by a set of thresholds and a weight, and a machine |
| 37 | whose memory holds cells cannot address more than that; a statement that omitted it |
| 38 | would claim a running time the machine has no room to achieve. |
| 39 | |
| 40 | The sorting term is the cost of putting the jobs into earliest-start-time order, which |
| 41 | Section 3 assumes done. It is the only place the input's own length enters the bound. |
| 42 | |
| 43 | The domain also asks that every processing time be positive, . This is the paper's |
| 44 | standing assumption for the recursions behind the algorithms — a job with has an |
| 45 | empty second operation, and the characterization of the feasible sets, on which everything |
| 46 | rests, is stated for jobs that have a genuine one — but the paper does not repeat it in each |
| 47 | claim, and a statement about a program that reads an arbitrary word has to. |
| 48 | -/ |
| 49 | |
| 50 | namespace Lax496464.Theorem2 |
| 51 | |
| 52 | open Lax496464.FlowShop Lax496464.FlowShop.Instance |
| 53 | open Lax496464.EstOrder Lax496464.DynamicProgram |
| 54 | open Lax496464.WordEncoding Lax496464.Problems Lax496464.ParameterizedComplexity |
| 55 | open Lax808846.Ram Lax808846.RamComputes |
| 56 | |
| 57 | /-- **The read-off.** A set of weight `W'` compatible with the `m` smallest indices that |
| 58 | can be preprocessed from a nonnegative instant is exactly a feasible set of weight `W'`. -/ |
| 59 | axiom achievable_readoff (I : Instance) (hest : EstOrdered I) (W' : ℕ) : |
| 60 | (∃ P' : ℤ, 0 ≤ P' ∧ Achievable I (firstM I) W' P') ↔ |
| 61 | ∃ Z : Finset I.Job, Feasible I Z ∧ weight I Z = W' |
| 62 | |
| 63 | open Classical in |
| 64 | /-- **Theorem 2.** One word RAM program decides the problem within |
| 65 | `c · (W+1) · (n+1)^m` instructions, plus the cost of sorting, at every word length |
| 66 | admitting the instance and its table. -/ |
| 67 | axiom theorem2_time : |
| 68 | ∃ (prog : Program) (c : ℕ), ∀ w : ℕ, |
| 69 | ComputesInTime w prog |
| 70 | {x | x ∈ DecisionInstances ∧ Fits c w x ∧ |
| 71 | c * (threshold x + 1) * (jobCount x + 1) ^ machineCount x ≤ 2 ^ w ∧ |
| 72 | (∀ j < jobCount x, 0 < procTime x j)} |
| 73 | (fun x => if Yes x then [1] else [0]) |
| 74 | (fun x => c * (threshold x + 1) * (jobCount x + 1) ^ machineCount x + |
| 75 | c * sortCost x) |
| 76 | |
| 77 | end Lax496464.Theorem2 |
| 78 |
Formalization Notes
Two statements: the read-off, which is a combinatorial fact about the table, and the running time, which is a claim about a program.
The read-off is what connects the recursion to the problem. Compatibility with the smallest indices is schedulability on machines and no more, and a budget of is the first-stage machine starting at the beginning of time, so the two ends of the table meet the definition of a feasible set. Without it the recursion would compute something about a table and nothing about the shop.
The running time is stated with explicit constants rather than asymptotically, and with the s the product needs to stay meaningful at the extremes: a threshold of zero, a shop with no machines, and a shop with no jobs each drive the bare product to zero or one, and no program answers in no instructions. The two forms agree up to the constant as soon as there is a job and a machine.
The fitting condition carries a clause beyond the usual one, that the table itself fits into memory. The table is indexed by a set of thresholds and a weight, and a machine whose memory holds cells cannot address more than that; a statement that omitted it would claim a running time the machine has no room to achieve.
The sorting term is the cost of putting the jobs into earliest-start-time order, which Section 3 assumes done. It is the only place the input's own length enters the bound.
The domain also asks that every processing time be positive, . This is the paper's standing assumption for the recursions behind the algorithms — a job with has an empty second operation, and the characterization of the feasible sets, on which everything rests, is stated for jobs that have a genuine one — but the paper does not repeat it in each claim, and a statement about a program that reads an arbitrary word has to.
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments