Corollary 2
Lax496464.Corollary2 · concepts/Lax496464/Corollary2.lean · lax-496464
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Theorem
The same table read the other way round solves the problem in time, where is the total preprocessing time: instead of recording, for each weight, the latest instant at which the first stage may begin, record for each instant the largest weight attainable from it. The recursion is the same and so is its correctness; only the axis the table is indexed along changes.
This is the better of the two bounds whenever the preprocessing times are small and the weights are not.
Concept map
In the paper
- page 4 of this submission's paper
Lean source view on GitHub
| 1 | import Lax496464.Problems |
| 2 | |
| 3 | /-! |
| 4 | --- |
| 5 | title: Corollary 2 |
| 6 | type: theorem |
| 7 | --- |
| 8 | The same table read the other way round solves the problem in time, |
| 9 | where is the total preprocessing time: instead of recording, for each |
| 10 | weight, the latest instant at which the first stage may begin, record for each instant |
| 11 | the largest weight attainable from it. The recursion is the same and so is its |
| 12 | correctness; only the axis the table is indexed along changes. |
| 13 | |
| 14 | This is the better of the two bounds whenever the preprocessing times are small and the |
| 15 | weights are not. |
| 16 | |
| 17 | # Formalization Notes |
| 18 | |
| 19 | No new combinatorial statement is needed. The dual table is the same predicate with its |
| 20 | two numerical arguments exchanged, so the correctness of recursion (1) is the correctness |
| 21 | of both programs, and only the running time is stated here. |
| 22 | |
| 23 | The instants the table runs over are the partial sums of preprocessing times, of which |
| 24 | there are at most ; that is what makes , rather than the largest due date, the |
| 25 | quantity in the bound. |
| 26 | |
| 27 | The domain also asks that every processing time be positive, . This is the paper's |
| 28 | standing assumption for the recursions behind the algorithms — a job with has an |
| 29 | empty second operation, and the characterization of the feasible sets, on which everything |
| 30 | rests, is stated for jobs that have a genuine one — but the paper does not repeat it in each |
| 31 | claim, and a statement about a program that reads an arbitrary word has to. |
| 32 | -/ |
| 33 | |
| 34 | namespace Lax496464.Corollary2 |
| 35 | |
| 36 | open Lax496464.WordEncoding Lax496464.Problems Lax496464.ParameterizedComplexity |
| 37 | open Lax808846.Ram Lax808846.RamComputes |
| 38 | |
| 39 | open Classical in |
| 40 | /-- **Corollary 2.** The dual program decides the problem within `c · (P+1) · (n+1)^m` |
| 41 | instructions, plus the cost of sorting. -/ |
| 42 | axiom corollary2_time : |
| 43 | ∃ (prog : Program) (c : ℕ), ∀ w : ℕ, |
| 44 | ComputesInTime w prog |
| 45 | {x | x ∈ DecisionInstances ∧ Fits c w x ∧ |
| 46 | c * (preSum x + 1) * (jobCount x + 1) ^ machineCount x ≤ 2 ^ w ∧ |
| 47 | (∀ j < jobCount x, 0 < procTime x j)} |
| 48 | (fun x => if Yes x then [1] else [0]) |
| 49 | (fun x => c * (preSum x + 1) * (jobCount x + 1) ^ machineCount x + |
| 50 | c * sortCost x) |
| 51 | |
| 52 | end Lax496464.Corollary2 |
| 53 |
Formalization Notes
No new combinatorial statement is needed. The dual table is the same predicate with its two numerical arguments exchanged, so the correctness of recursion (1) is the correctness of both programs, and only the running time is stated here.
The instants the table runs over are the partial sums of preprocessing times, of which there are at most ; that is what makes , rather than the largest due date, the quantity in 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