Prove2Me
Navigate
DiscoverFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in

Get started

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

Linear Optimization

158 missions · 97 completed

Missions

Open61Completed97All158
Graph TheoryOperations ResearchOptimization·Captain: mikedeng1

Project Scheduling with Time Windows and Scarce Resources VI: Stable, Semistable, Pseudostable and Quasistable Schedules Are Extreme Points of the Feasible RegionTextbook

Motivation

Resource-constrained project scheduling with minimum and maximum time lags is the model behind make-to-order production, process-industry batch planning and large engineering projects. When the objective is the project duration or another regular function (nondecreasing in every start time), an optimum can be found among schedules that cannot be shifted to the left. Many objectives in practice are nonregular: net present value, earliness–tardiness costs, resource levelling and resource investment. For these, delaying an activity can pay, and "shift as far left as possible" no longer identifies a finite set of candidate schedules.

Neumann, Nübel and Schwindt (Math. Methods Oper. Res. 52, 2000) answered this with classes of schedules defined by the absence of pairs of opposite shifts: stable, semistable, pseudostable and quasistable schedules, the mirror image of active, semiactive, pseudoactive and quasiactive schedules. Section 3.2 of Neumann, Schwindt and Zimmermann, Project Scheduling with Time Windows and Scarce Resources (Springer 2003), shows that these classes are exactly the extreme points of the feasible region and of its natural convex pieces. The classification of objective functions in §3.3, and every enumeration scheme of the later chapter, rests on that correspondence.

Setting

A project has activities V={0,1,…,n+1}V=\{0,1,\dots,n+1\}V={0,1,…,n+1} with n≥1n\ge1n≥1. Activity 000 is the project beginning and n+1n+1n+1 the project completion. Activity iii has an integer duration pip_ipi​, with p0=pn+1=0p_0=p_{n+1}=0p0​=pn+1​=0 and pi>0p_i>0pi​>0 otherwise. The project network NNN has node set VVV and arcs ⟨i,j⟩∈E\langle i,j\rangle\in E⟨i,j⟩∈E with integer weights δij\delta_{ij}δij​, each encoding a temporal constraint Sj−Si≥δijS_j-S_i\ge\delta_{ij}Sj​−Si​≥δij​. A prescribed deadline dˉ∈N\bar d\in\mathbb Ndˉ∈N is included as the backward arc ⟨n+1,0⟩\langle n+1,0\rangle⟨n+1,0⟩ of weight −dˉ-\bar d−dˉ. Renewable resources kkk have capacities RkR_kRk​, and activity iii uses rik≤Rkr_{ik}\le R_krik​≤Rk​ units while it runs.

A schedule is a vector S∈Rn+2S\in\mathbb R^{n+2}S∈Rn+2 of start times. The time-feasible region ST\mathcal S_TST​ collects the schedules with S0=0S_0=0S0​=0, S≥0S\ge0S≥0 and Sj−Si≥δijS_j-S_i\ge\delta_{ij}Sj​−Si​≥δij​ on every arc; it is a polyhedron, and a polytope when every activity precedes n+1n+1n+1 as in Remarks 1.1.2. A schedule is resource-feasible if at every time t≥0t\ge0t≥0 the running activities A(S,t)={i∣Si≤t<Si+pi}\mathcal A(S,t)=\{i\mid S_i\le t<S_i+p_i\}A(S,t)={i∣Si​≤t<Si​+pi​} use at most RkR_kRk​ units of every resource. The feasible region is S=ST∩SR\mathcal S=\mathcal S_T\cap\mathcal S_RS=ST​∩SR​. It is in general neither convex nor connected.

A schedule induces the strict order O(S)={(i,j)∣i≠j, Sj≥Si+pi}O(S)=\{(i,j)\mid i\ne j,\ S_j\ge S_i+p_i\}O(S)={(i,j)∣i=j, Sj​≥Si​+pi​}. For a strict order OOO, the order polytope is ST(O)={S∈ST∣Sj≥Si+pi ((i,j)∈O)}\mathcal S_T(O)=\{S\in\mathcal S_T\mid S_j\ge S_i+p_i\ ((i,j)\in O)\}ST​(O)={S∈ST​∣Sj​≥Si​+pi​ ((i,j)∈O)}. The order OOO is feasible if ∅≠ST(O)⊆S\emptyset\ne\mathcal S_T(O)\subseteq\mathcal S∅=ST​(O)⊆S. The schedule polytope of SSS is ST(O(S))\mathcal S_T(O(S))ST​(O(S)).

A shift moves a schedule SSS to S′≠SS'\neq SS′=S. It is global if both are feasible, local if in addition a continuous path inside S\mathcal SS joins them, order-preserving if O(S)⊆O(S′)O(S)\subseteq O(S')O(S)⊆O(S′), and order-monotone if O(S)O(S)O(S) and O(S′)O(S')O(S′) are comparable. Two shifts from SSS to S′S'S′ and S′′S''S′′ are opposite if S′′−S=λ(S′−S)S''-S=\lambda(S'-S)S′′−S=λ(S′−S) with λ<0\lambda<0λ<0. A feasible schedule is stable, semistable, pseudostable or quasistable if no pair of opposite global, local, order-monotone or order-preserving shifts, respectively, starts at it. It is antiactive if no global right-shift starts at it.

Formalization targets

Goal: Theorem 3.2.10

For every feasible schedule SSS:

(a) S antiactive  ⟺  S maximal in S,(b) S stable  ⟺  S∈ext⁡S,(c) S semistable  ⟺  S∈ext⁡CS, CS the component of S containing S,(d) S pseudostable  ⟺  S∈ext⁡ST(O) for all feasible O⊆O(S),(e) S quasistable  ⟺  S∈ext⁡ST(O(S)).\begin{aligned} &\text{(a) } S\text{ antiactive}\iff S\text{ maximal in }\mathcal S, \qquad \text{(b) } S\text{ stable}\iff S\in\operatorname{ext}\mathcal S,\\ &\text{(c) } S\text{ semistable}\iff S\in\operatorname{ext}C_S,\ C_S\text{ the component of }\mathcal S\text{ containing }S,\\ &\text{(d) } S\text{ pseudostable}\iff S\in\operatorname{ext}\mathcal S_T(O)\ \text{for all feasible }O\subseteq O(S),\\ &\text{(e) } S\text{ quasistable}\iff S\in\operatorname{ext}\mathcal S_T(O(S)). \end{aligned}​(a) S antiactive⟺S maximal in S,(b) S stable⟺S∈extS,(c) S semistable⟺S∈extCS​, CS​ the component of S containing S,(d) S pseudostable⟺S∈extST​(O) for all feasible O⊆O(S),(e) S quasistable⟺S∈extST​(O(S)).​

Milestones

  • Lemma 3.2.4: opposite order-preserving or order-monotone shifts can be taken uniform (all moved activities move by one common amount).
  • Lemma 3.2.8: pseudostable schedules are the local extreme points of S\mathcal SS, the points on no segment that lies entirely in S\mathcal SS.
  • Lemma 3.2.9: when SSS is not pseudostable, a segment through SSS can be found inside one order polytope ST(O)\mathcal S_T(O)ST​(O) with O⊆O(S)O\subseteq O(S)O⊆O(S) feasible.
  • Proposition 3.2.13: the quasistable schedules, and every class below them in Fig. 3.2.6, form finite sets.
  • Proposition 3.2.16: every vertex of ST\mathcal S_TST​ is the unique solution of S0=0S_0=0S0​=0, Sj−Si=δijS_j-S_i=\delta_{ij}Sj​−Si​=δij​ on the arcs of a spanning tree of NNN; for the minimal point, an outtree rooted at 000.
  • Theorem 3.2.18: SSS is quasistable iff it is the unique solution of such a tree system in the schedule network N(O(S))N(O(S))N(O(S)).
  • Remark 3.2.7: every activity of a quasistable schedule is tied to another one by a tight duration or time lag, so quasistable schedules are integer-valued.

Significance

The theorem makes four shift-defined classes computable objects: extreme points of explicit polytopes, or of a finite union of them. Together with Proposition 3.2.13, it gives each class of nonregular objective functions in §3.3 a finite candidate set of schedules among which an optimum can be sought (§3.2, p. 207). Theorem 3.2.18 gives the certificate for quasistable schedules: a spanning tree of the schedule network, which the later sections use to enumerate vertices.

The results are proved in the book, except Lemma 3.2.9, whose proof is cited to Neumann, Nübel and Schwindt (2000). As far as a search of the platform shows, none of them has been formalized. A formalization supplies the missing details, among them that connected and path components of S\mathcal SS coincide and the degenerate vertices behind the tree description. It also produces a reusable library of schedule classes on real-valued start times.

Difficulty

Part (b) is close to the definition, since a pair of opposite global shifts is a segment through SSS with feasible endpoints. The content is elsewhere. In (c) the definition speaks of continuous trajectories and the right-hand side of connected components, so the proof needs local path-connectedness of a finite union of polytopes. In (d) the feasible region is not convex: an order-monotone shift keeps SSS and S′S'S′ in a common order polytope, but S′S'S′ and S′′S''S′′ may lie in different ones. The segment through SSS has to be moved into a single order polytope ST(O)\mathcal S_T(O)ST​(O) with O⊆O(S)O\subseteq O(S)O⊆O(S), and that is Lemma 3.2.9. Proposition 3.2.16 and Theorem 3.2.18 need the passage from n+2n+2n+2 linearly independent tight constraints to a spanning tree. They must allow degenerate vertices, where several trees describe the same point, and must represent the nonnegativity constraints Si≥0S_i\ge0Si​≥0 by arcs of the network.

Formalization scope

Activities are Fin (n + 2); start times are real vectors Fin (n + 2) → ℝ with the pointwise order. Durations, capacities and requirements are natural numbers, and time lags integers. The deadline is the arc ⟨n+1,0⟩\langle n+1,0\rangle⟨n+1,0⟩ of weight −dˉ-\bar d−dˉ, which is always present, as §3.1 prescribes. Resource constraints are imposed for every t≥0t\ge0t≥0, not only for 0≤t≤dˉ0\le t\le\bar d0≤t≤dˉ as (3.1.2) writes; the proofs use the first reading. Extreme points are Mathlib's Set.extremePoints ℝ, maximal points are Maximal for the pointwise order, and components are connectedComponentIn. A local shift carries an explicit continuous map from unitInterval into S\mathcal SS. Strict orders are asymmetric, transitive relations on VVV. A spanning tree is an arc set of size n+1n+1n+1 whose underlying simple graph is connected. Its arcs must be arcs of NNN, resp. of N(O(S))N(O(S))N(O(S)), with their network weights, so an arbitrary equation system does not count.

The schedule classes are defined through shifts and nothing else. Defining "stable" as "extreme point", or "pseudostable" as "local extreme point", would make the goal and Lemma 3.2.8 tautologies, and such encodings are ruled out. Proposition 3.2.16 carries the book's standing convention (§1.2, p. 8) that every node is reached from 000 by a walk of nonnegative length. Without it the statement is false.

The definitions duplicate, under this mission's namespace, the model of the book's Chapter 2 missions (order polytopes, shifts, active classes). They are written to be merged with those once published. Contributions on the geometry of finite unions of polytopes, and on spanning-tree bases of difference constraint systems, are reusable beyond this mission.

Selected references

  • K. Neumann, C. Schwindt, J. Zimmermann, Project Scheduling with Time Windows and Scarce Resources, 2nd ed., Springer, 2003, §3.1–3.2. https://doi.org/10.1007/978-3-540-24800-2
  • K. Neumann, H. Nübel, C. Schwindt, Active and stable project scheduling, Mathematical Methods of Operations Research 52 (2000), 441–465. https://doi.org/10.1007/s001860000092
  • M. Bartusch, R. H. Möhring, F. J. Radermacher, Scheduling project networks with resource constraints and time windows, Annals of Operations Research 16 (1988), 199–240. https://doi.org/10.1007/BF02283745
12 thms1 active userReviewed
Graph TheoryOperations ResearchOptimization·Captain: mikedeng1

Project Scheduling with Time Windows and Scarce Resources I: A Time-Feasible Schedule Exists iff the Project Network Has No Cycle of Positive LengthTextbook

Motivation

Project scheduling assigns start times to the activities of a project subject to constraints between them. The classical critical path method (CPM) of Kelley and Walker (1959) and the program evaluation and review technique (PERT) allow only minimum time lags: activity jjj may start no earlier than a given time after activity iii starts. Practice also needs maximum time lags: activity jjj must start no later than a given time after iii. These express deadlines, release dates, time windows and "no wait" couplings. Once maximum time lags are allowed, the project network has cycles and negative arc weights, and even the existence of a schedule is no longer automatic.

This mission is the first of a series on Neumann, Schwindt and Zimmermann, Project Scheduling with Time Windows and Scarce Resources (2nd ed., Springer 2003), a standard reference for resource-constrained project scheduling with general temporal constraints. Chapter 1 contains the temporal part of the theory: feasibility, earliest and latest schedules, floats, and the distance order. Every later chapter adds resource constraints on top of this layer.

Timeline. Roy (1964) introduced the Metra Potential Method, which is scheduling on activity-on-node networks with minimum time lags. Neumann (1975, Sect. 6.4) treated time windows through potentials on networks with arbitrary arc weights. Bartusch, Möhring and Radermacher (1988, Annals of Operations Research 16) developed the general theory of scheduling project networks with resource constraints and time windows, including the feasibility criterion stated below. The book collects these results in Chapter 1.

Setting

A project consists of n≥1n\ge 1n≥1 real activities 1,…,n1,\dots,n1,…,n and two fictitious activities, 000 (project beginning) and n+1n+1n+1 (project completion), so the node set is V={0,1,…,n+1}V=\{0,1,\dots,n+1\}V={0,1,…,n+1}. Each activity iii has an integer duration pip_ipi​, with p0=pn+1=0p_0=p_{n+1}=0p0​=pn+1​=0 and pi>0p_i>0pi​>0 for real activities.

A minimum time lag dijmin⁡d^{\min}_{ij}dijmin​ between two different activities becomes an arc ⟨i,j⟩\langle i,j\rangle⟨i,j⟩ of weight δij=dijmin⁡\delta_{ij}=d^{\min}_{ij}δij​=dijmin​. A maximum time lag dijmax⁡d^{\max}_{ij}dijmax​ becomes a backward arc ⟨j,i⟩\langle j,i\rangle⟨j,i⟩ of weight δji=−dijmax⁡\delta_{ji}=-d^{\max}_{ij}δji​=−dijmax​. There is at most one arc per ordered pair, keeping the tightest lag. The result is the activity-on-node (AoN) network N=(V,E,δ)N=(V,E,\delta)N=(V,E,δ), whose integer weights may be positive, negative or zero and which in general contains cycles. The book establishes that for every node iii there is a path from 000 to iii of nonnegative length and a path from iii to n+1n+1n+1 of length at least pip_ipi​ (p. 8, from Definition 1.1.1 and Remarks 1.1.2). This is the standing assumption of the chapter.

A schedule is a vector S=(S0,…,Sn+1)S=(S_0,\dots,S_{n+1})S=(S0​,…,Sn+1​) of real start times with S0=0S_0=0S0​=0 and Si≥0S_i\ge 0Si​≥0. It is time-feasible if it satisfies the temporal constraints

Sj−Si ≥ δij(⟨i,j⟩∈E),S_j-S_i\ \ge\ \delta_{ij}\qquad(\langle i,j\rangle\in E),Sj​−Si​ ≥ δij​(⟨i,j⟩∈E),

and ST\mathcal S_TST​ is the set of time-feasible schedules. A time-feasible schedule minimizing the project duration Sn+1S_{n+1}Sn+1​ is time-optimal.

The length of a path or cycle is the sum of its arc weights. For an integer L=LSn+1L=LS_{n+1}L=LSn+1​, which is either a prescribed maximum project duration dˉ\bar ddˉ or the shortest project duration, the temporal scheduling network N+N^+N+ adds the backward arc ⟨n+1,0⟩\langle n+1,0\rangle⟨n+1,0⟩ with weight −L-L−L. The distance dijd_{ij}dij​ is the length of a longest path from iii to jjj in N+N^+N+, with dii=0d_{ii}=0dii​=0. The earliest and latest start times are ESi=d0iES_i=d_{0i}ESi​=d0i​ and LSi=−di0LS_i=-d_{i0}LSi​=−di0​, the earliest completion time is ECi=ESi+piEC_i=ES_i+p_iECi​=ESi​+pi​, and the total float is TFi=LSi−ESiTF_i=LS_i-ES_iTFi​=LSi​−ESi​. The distance order ≺D\prec_D≺D​ is defined for i≠ji\ne ji=j by: i≺Dji\prec_D ji≺D​j if dij>0d_{ij}>0dij​>0, or dij=0d_{ij}=0dij​=0 and dji<0d_{ji}<0dji​<0.

Formalization targets

Goal: Theorem 1.3.3 (p. 10)

ST≠∅⟺N contains no cycle of positive length.\mathcal S_T\ne\emptyset\quad\Longleftrightarrow\quad N\ \text{contains no cycle of positive length}.ST​=∅⟺N contains no cycle of positive length.

The statement contains no constants. It is the consistency criterion for the temporal constraints and the entry condition for everything else in the book.

Milestones

  1. Distances, §1.3, p. 11, Eq. (1.3.3). If N+N^+N+ has no cycle of positive length, then ddd satisfies dij≥δijd_{ij}\ge\delta_{ij}dij​≥δij​ on E+E^+E+ and the triangle inequality dij≥dih+dhjd_{ij}\ge d_{ih}+d_{hj}dij​≥dih​+dhj​, and it is the smallest family that does.
  2. Earliest and latest schedules, §1.3, p. 12. Under the same hypothesis and the standing assumption, ES=(d0i)iES=(d_{0i})_iES=(d0i​)i​ is time-feasible and lies below every time-feasible schedule. LS=(−di0)iLS=(-d_{i0})_iLS=(−di0​)i​ is time-feasible, satisfies LSn+1≤LLS_{n+1}\le LLSn+1​≤L, and lies above every time-feasible schedule SSS with Sn+1≤LS_{n+1}\le LSn+1​≤L.
  3. Remark 1.3.2 (p. 10). If ST≠∅\mathcal S_T\ne\emptysetST​=∅, there is an integer-valued time-optimal schedule.
  4. Proposition 1.3.8 (p. 15). For a real activity iii, [LSi,ECi[≠∅[LS_i,EC_i[\ne\emptyset[LSi​,ECi​[=∅ if and only if iii is critical (TFi=0TF_i=0TFi​=0) or near-critical (0<TFi<pi0<TF_i<p_i0<TFi​<pi​). A further item of the mission, not a milestone, states the claim of §1.4, p. 17 (after Definition 1.4.3): if N+N^+N+ has no cycle of positive length, ≺D\prec_D≺D​ is a strict order on VVV.

Significance

The result itself. Theorem 1.3.3 tells when the temporal constraints of a project can be met at all. Milestones 1 and 2 identify the earliest and latest schedules with longest path lengths, which makes temporal scheduling a pair of longest-path computations (a forward pass from 000 and a backward pass to 000). Remark 1.3.2 justifies working in integer time. The distance order and the base time intervals [LSi,ECi[[LS_i,EC_i[[LSi​,ECi​[ are the inputs of the resource-constrained methods in Chapters 2 and 3: priority rules schedule along ≺D\prec_D≺D​, and base time intervals give lower bounds on resource usage.

Formalizing it. These results are classical and proved, but the book does not prove Theorem 1.3.3; it points to Neumann (1975) and Bartusch et al. (1988). To our knowledge they have no machine-checked form in this generality, with arbitrary integer weights, cycles, fictitious start and end nodes, and the backward arc of N+N^+N+. The CPM results for acyclic event networks with nonnegative durations already on Prove2Me are a special case. The definitions of this mission (project, AoN network, schedule, N+N^+N+, distances) are intended as the shared substrate for the later missions of the series, which add renewable and cumulative resources.

Difficulty

The necessity direction of the goal is a telescoping sum around a cycle. The sufficiency direction needs a schedule, and the natural candidate Si=d0iS_i=d_{0i}Si​=d0i​ requires three things: longest path lengths must be well defined, they must be finite, and they must satisfy the temporal constraints. With negative weights and cycles, the maximum over walks is unbounded when a positive cycle exists, and a walk-based definition gives nothing. A path-based definition gives a finite maximum but loses the concatenation property, so the triangle inequality becomes a statement about removing nonpositive cycles from walks. S0=0S_0=0S0​=0 and Si≥0S_i\ge 0Si​≥0 further depend on the standing assumption: without it, an arc ⟨i,0⟩\langle i,0\rangle⟨i,0⟩ with positive weight makes ST\mathcal S_TST​ empty although no cycle is positive. The same combinatorics of walks, paths and cycles is behind milestones 1 and 2 and the distance-order item.

Formalization scope

Nodes are Fin (n + 2): 000 is the project beginning and Fin.last (n + 1) the project completion. The field one_le_n records n≥1n\ge 1n≥1. Durations are natural numbers with p0=pn+1=0p_0=p_{n+1}=0p0​=pn+1​=0 and pi>0p_i>0pi​>0 for real activities. Arc weights are arbitrary integers on a loop-free Finset of ordered pairs, so parallel arcs cannot occur. Start times are real; integrality appears only as Remark 1.3.2.

Walks are functions Fin (m + 1) → Fin (n + 2). A path is an injective walk, and a cycle is a closed walk with at least one arc and distinct nodes apart from the repeated endpoint. Distances are maxima over the finitely many paths, valued in WithBot ℤ with ⊥=−∞\bot=-\infty⊥=−∞ for unreachable pairs. No supremum over an unbounded set is taken. ESiES_iESi​ and LSiLS_iLSi​ convert these to integers with junk value 000 for −∞-\infty−∞, and every milestone that uses them carries the hypotheses under which the distances are finite. The backward arc of N+N^+N+ has weight −L-L−L for an integer parameter LLL. If NNN already contains an arc ⟨n+1,0⟩\langle n+1,0\rangle⟨n+1,0⟩, the two arcs merge into one carrying the larger weight, as in the book's convention for parallel lags. The standing assumption of p. 8 is a named predicate and a hypothesis of the goal and of milestones 2 and 4.

A trivializing formalization is ruled out: weights are signed integers and cycles are allowed, so the no-positive-cycle condition is not vacuous, and the standing assumption is satisfiable by projects with maximum time lags.

A complete development needs cycle removal from closed walks, the Bellman-type characterization of longest paths without positive cycles, and total unimodularity or a direct integrality argument for Remark 1.3.2. The walk, path and distance layer is reusable for any difference-constraint system. Proofs of milestones and lemmas on walk decomposition are welcome.

Selected references

  • K. Neumann, C. Schwindt, J. Zimmermann, Project Scheduling with Time Windows and Scarce Resources, 2nd ed., Springer, 2003. https://doi.org/10.1007/978-3-540-24800-2
  • M. Bartusch, R. H. Möhring, F. J. Radermacher, "Scheduling project networks with resource constraints and time windows", Annals of Operations Research 16 (1988), 201–240. https://doi.org/10.1007/BF02283745
  • K. Neumann, Operations Research Verfahren, Band III, Hanser, 1975, Sect. 6.4.
  • B. Roy, Les problèmes d'ordonnancement: applications et méthodes, Dunod, 1964.
  • J. E. Kelley, M. R. Walker, "Critical-path planning and scheduling", Proceedings of the Eastern Joint Computer Conference, 1959, 160–173. https://doi.org/10.1145/1460299.1460318
  • R. K. Ahuja, T. L. Magnanti, J. B. Orlin, Network Flows, Prentice Hall, 1993, Sect. 5.4 and 5.6.
8 thms1 active userReviewed
Convex OptimizationOperations ResearchOptimization·Captain: mikedeng1

Linear Programming: Foundations and Extensions VI: The Homogeneous Self-Dual Predictor–Corrector MethodTextbook

Motivation

Interior-point methods are the standard polynomial-time algorithms for linear programming, and the path-following method that practitioners implement (Chapter 18 of Vanderbei's Linear Programming: Foundations and Extensions) comes without a complete convergence proof. Chapter 22 of the same book presents a closely related algorithm for which a complete analysis can be written down: the homogeneous self-dual predictor–corrector method. It combines two ideas. The first is the self-dual embedding of Ye, Todd and Mizuno (1994), which folds a linear program and its dual into one auxiliary problem that always has feasible solutions, so no feasible starting point is needed. The second is the predictor–corrector scheme of Mizuno, Todd and Ye (1993), which alternates an affine-scaling step with a centering step while keeping the iterates in a neighbourhood of the central path, and reduces the duality measure by a factor 1−1/(2n)1 - 1/(2\sqrt n)1−1/(2n​) every two iterations. The result is an O(n L)O(\sqrt n\,L)O(n​L) iteration bound, the best known for interior-point methods on linear programs.

Setting

Let AAA be a real n×nn \times nn×n matrix with n≥2n \ge 2n≥2 that is skew symmetric, A=−ATA = -A^TA=−AT. The homogeneous self-dual problem (22.4) is

maximize 0subject to Ax+z=0,x,z≥0.\text{maximize } 0 \quad \text{subject to } Ax + z = 0,\quad x, z \ge 0.maximize 0subject to Ax+z=0,x,z≥0.

For x,z∈Rnx, z \in \mathbb{R}^nx,z∈Rn write X,ZX, ZX,Z for the diagonal matrices with the entries of x,zx, zx,z on the diagonal and eee for the vector of ones. The infeasibility is ρ(x,z)=Ax+z\rho(x, z) = Ax + zρ(x,z)=Ax+z and the noncomplementarity is μ(x,z)=1nxTz\mu(x, z) = \frac1n x^T zμ(x,z)=n1​xTz. For a centering parameter 0≤δ≤10 \le \delta \le 10≤δ≤1, step directions (Δx,Δz)(\Delta x, \Delta z)(Δx,Δz) solve the linear system

AΔx+Δz=−(1−δ)ρ(x,z),ZΔx+XΔz=δμ(x,z)e−XZe.(22.5)–(22.6)A\Delta x + \Delta z = -(1 - \delta)\rho(x, z), \qquad Z\Delta x + X\Delta z = \delta\mu(x, z)e - XZe. \qquad (22.5)\text{–}(22.6)AΔx+Δz=−(1−δ)ρ(x,z),ZΔx+XΔz=δμ(x,z)e−XZe.(22.5)–(22.6)

For 0≤β≤10 \le \beta \le 10≤β≤1 the neighbourhood is

N(β)={(x,z)>0:∥XZe−μ(x,z)e∥≤βμ(x,z)},\mathcal N(\beta) = \{(x, z) > 0 : \|XZe - \mu(x, z)e\| \le \beta\mu(x, z)\},N(β)={(x,z)>0:∥XZe−μ(x,z)e∥≤βμ(x,z)},

with ∥⋅∥\|\cdot\|∥⋅∥ the Euclidean norm and (x,z)>0(x, z) > 0(x,z)>0 meaning that every component is strictly positive. The algorithm starts at x(0)=z(0)=ex^{(0)} = z^{(0)} = ex(0)=z(0)=e and alternates two steps. A predictor step starts from (x,z)∈N(1/4)(x, z) \in \mathcal N(1/4)(x,z)∈N(1/4), uses δ=0\delta = 0δ=0, and takes the step length (22.10) θ=max⁡{t:(x+tΔx,z+tΔz)∈N(1/2)}\theta = \max\{t : (x + t\Delta x, z + t\Delta z) \in \mathcal N(1/2)\}θ=max{t:(x+tΔx,z+tΔz)∈N(1/2)}. A corrector step starts from (x,z)∈N(1/2)(x, z) \in \mathcal N(1/2)(x,z)∈N(1/2), uses δ=1\delta = 1δ=1 and θ=1\theta = 1θ=1.

A general linear program (22.1), max⁡cTx\max c^TxmaxcTx subject to Ax≤bAx \le bAx≤b, x≥0x \ge 0x≥0 with AAA now m×nm \times nm×n, and its dual (22.2), min⁡bTy\min b^TyminbTy subject to ATy≥cA^Ty \ge cATy≥c, y≥0y \ge 0y≥0, are embedded in the homogeneous self-dual problem (22.21):

−ATy+cϕ+z=0,Ax−bϕ+w=0,−cTx+bTy+ψ=0,x,y,ϕ,z,w,ψ≥0.-A^Ty + c\phi + z = 0,\quad Ax - b\phi + w = 0,\quad -c^Tx + b^Ty + \psi = 0,\quad x, y, \phi, z, w, \psi \ge 0.−ATy+cϕ+z=0,Ax−bϕ+w=0,−cTx+bTy+ψ=0,x,y,ϕ,z,w,ψ≥0.

A feasible solution of (22.21) is strictly complementary if xj+zj>0x_j + z_j > 0xj​+zj​>0, yi+wi>0y_i + w_i > 0yi​+wi​>0 and ϕ+ψ>0\phi + \psi > 0ϕ+ψ>0 for all i,ji, ji,j.

Formalization targets

Goal: Theorem 22.5 (p. 330)

In each predictor step, starting from (x,z)∈N(1/4)(x, z) \in \mathcal N(1/4)(x,z)∈N(1/4) with any solution (Δx,Δz)(\Delta x, \Delta z)(Δx,Δz) of (22.5)–(22.6) at δ=0\delta = 0δ=0,

θ≥12n.\theta \ge \frac{1}{2\sqrt n}.θ≥2n​1​.

The formal statement asserts that every t∈[0,1/(2n)]t \in [0, 1/(2\sqrt n)]t∈[0,1/(2n​)] keeps (x+tΔx,z+tΔz)(x + t\Delta x, z + t\Delta z)(x+tΔx,z+tΔz) in N(1/2)\mathcal N(1/2)N(1/2), and that the supremum of the admissible step lengths is at least 1/(2n)1/(2\sqrt n)1/(2n​).

Milestones

  1. Theorem 22.1: (22.4) is feasible, every feasible point is optimal, and zTx=0z^Tx = 0zTx=0 on the feasible set.
  2. Theorem 22.2: ΔzTΔx=0\Delta z^T\Delta x = 0ΔzTΔx=0, ρˉ=(1−θ+θδ)ρ\bar\rho = (1 - \theta + \theta\delta)\rhoρˉ​=(1−θ+θδ)ρ, μˉ=(1−θ+θδ)μ\bar\mu = (1 - \theta + \theta\delta)\muμˉ​=(1−θ+θδ)μ, and XˉZˉe−μˉe=(1−θ)(XZe−μe)+θ2ΔXΔZe\bar X\bar Ze - \bar\mu e = (1 - \theta)(XZe - \mu e) + \theta^2\Delta X\Delta ZeXˉZˉe−μˉ​e=(1−θ)(XZe−μe)+θ2ΔXΔZe.
  3. Lemma 22.4: ∥PQe∥≤12∥r∥2\|PQe\| \le \frac12\|r\|^2∥PQe∥≤21​∥r∥2 for the scaled directions p=X−1/2Z1/2Δxp = X^{-1/2}Z^{1/2}\Delta xp=X−1/2Z1/2Δx, q=X1/2Z−1/2Δzq = X^{1/2}Z^{-1/2}\Delta zq=X1/2Z−1/2Δz, r=p+qr = p + qr=p+q; ∥r∥2=nμ\|r\|^2 = n\mu∥r∥2=nμ when δ=0\delta = 0δ=0; ∥r∥2≤β2μ/(1−β)\|r\|^2 \le \beta^2\mu/(1 - \beta)∥r∥2≤β2μ/(1−β) when δ=1\delta = 1δ=1 and (x,z)∈N(β)(x, z) \in \mathcal N(\beta)(x,z)∈N(β).
  4. Theorem 22.3: a predictor step lands in N(1/2)\mathcal N(1/2)N(1/2) with μˉ=(1−θ)μ\bar\mu = (1 - \theta)\muμˉ​=(1−θ)μ; a corrector step lands in N(1/4)\mathcal N(1/4)N(1/4) with μˉ=μ\bar\mu = \muμˉ​=μ.
  5. Theorem 22.7: there are constants cj>0c_j > 0cj​>0 with xj+zj≥cjx_j + z_j \ge c_jxj​+zj​≥cj​ for every iterate (x,z)∈N(β)(x, z) \in \mathcal N(\beta)(x,z)∈N(β).
  6. Theorem 22.8: a strictly complementary solution of (22.21) with ϕˉ>0\bar\phi > 0ϕˉ​>0 yields optimal solutions xˉ/ϕˉ\bar x/\bar\phixˉ/ϕˉ​, yˉ/ϕˉ\bar y/\bar\phiyˉ​/ϕˉ​ of (22.1)–(22.2); with ϕˉ=0\bar\phi = 0ϕˉ​=0 it certifies that the primal or the dual is infeasible.

Significance

Theorem 22.5 is the quantitative core of the method. Combined with Theorem 22.3 it gives μ(2k)≤(1−12n)k\mu^{(2k)} \le (1 - \frac{1}{2\sqrt n})^kμ(2k)≤(1−2n​1​)k along the iterates, and therefore at most 4Ln4L\sqrt n4Ln​ iterations to bring μ\muμ below 2−L2^{-L}2−L (§22.2.4). Since the infeasibility tracks the noncomplementarity, ρ(k)=μ(k)ρ(0)\rho^{(k)} = \mu^{(k)}\rho^{(0)}ρ(k)=μ(k)ρ(0), both go to zero at that rate. Theorem 22.8 then converts the output into an answer for the original linear program: optimal primal and dual solutions, or a certificate that one of them is infeasible. Theorem 22.7 is the mechanism behind strict complementarity of the limit (Theorem 22.6, stated in the book without proof).

All results are classical and proved in the book. The mission formalizes those proofs. To the best of the curator's knowledge there is no machine-checked convergence analysis of an interior-point method for linear programming in Mathlib or on this platform; the existing platform material on interior-point methods covers a different, short-step path-following method in equality form.

Difficulty

The algebra of Theorem 22.2 is the first obstacle: the orthogonality ΔzTΔx=0\Delta z^T\Delta x = 0ΔzTΔx=0 is not a consequence of (22.5) alone but of skew symmetry combined with both step equations and the definition of μ\muμ, and parts (3)–(4) depend on it. The second is that the book's step length (22.10) is a maximum that need not exist, so a statement about θ\thetaθ must be phrased about the admissible set of step lengths, and membership in N(1/2)\mathcal N(1/2)N(1/2) requires strict positivity of every component along the whole segment, not only the norm bound at its end. The norm bound alone does not control positivity; an argument that ignores this proves membership in a larger set than N(1/2)\mathcal N(1/2)N(1/2). Theorem 22.7 needs a strictly complementary feasible solution of (22.4), whose existence (Theorem 10.6 in the book, the Goldman–Tucker theorem) is itself a substantial result not available in Mathlib.

Formalization scope

Vectors are functions Fin n → ℝ (and Fin m → ℝ), matrices are Matrix (Fin m) (Fin n) ℝ, and all declarations sit in the namespace VanderbeiLP.SelfDual. The committed conventions are:

  • The Euclidean norm is defined explicitly (euclidNorm); Mathlib's default norm on Fin n → ℝ is the sup norm and is not used.
  • μ(x,z)=1nxTz\mu(x, z) = \frac1n x^Tzμ(x,z)=n1​xTz with n≥2n \ge 2n≥2, the standing assumption of §22.2, carried as a hypothesis by every theorem about (22.4) together with AT=−AA^T = -AAT=−A.
  • Step directions are any solution of (22.5)–(22.6); existence and uniqueness of the solution are neither assumed nor claimed.
  • The predictor step length is the supremum of {t∈R:(x+tΔx,z+tΔz)∈N(1/2)}\{t \in \mathbb{R} : (x + t\Delta x, z + t\Delta z) \in \mathcal N(1/2)\}{t∈R:(x+tΔx,z+tΔz)∈N(1/2)}. This set contains 000 and is bounded above by 111 along a predictor direction, so the supremum is never a default value. Theorem 22.3(1) is stated under the hypothesis that the maximum exists, as (22.10) presumes.
  • Theorem 22.7 is stated for points of N(β)\mathcal N(\beta)N(β) with 0≤β<10 \le \beta < 10≤β<1 satisfying ρ(x,z)=μ(x,z)ρ(e,e)\rho(x, z) = \mu(x, z)\rho(e, e)ρ(x,z)=μ(x,z)ρ(e,e), the relation all iterates satisfy. The constants cjc_jcj​ are quantified before (x,z)(x, z)(x,z) and depend only on AAA and β\betaβ. The existence of a strictly complementary solution of (22.4) is not a hypothesis.
  • Theorem 22.8 is for arbitrary m,nm, nm,n and data (A,b,c)(A, b, c)(A,b,c); "optimal" means feasible and attaining the best objective value among feasible points.
  • No explicit constants beyond those printed in the statements (1/41/41/4, 1/21/21/2, 1/(2n)1/(2\sqrt n)1/(2n​), β2/(1−β)\beta^2/(1-\beta)β2/(1−β)) occur; the book leaves no constant implicit in the formalized results.

A trivializing formalization is ruled out: the step length is not a default-valued supremum, N(β)\mathcal N(\beta)N(β) requires strict positivity and uses the Euclidean norm, and the goal is also stated as the segment property its proof establishes.

Theorem 22.6 (convergence of the iterates to a strictly complementary solution) is stated without proof in the book and is not part of this mission; the 4Ln4L\sqrt n4Ln​ iteration count of §22.2.4 is an unnumbered corollary. Both are welcome as follow-up work, as is a proof of Theorem 10.6 for skew-symmetric systems, which Theorem 22.7 needs.

Selected references

  • R. J. Vanderbei, Linear Programming: Foundations and Extensions, 4th ed., International Series in Operations Research & Management Science 196, Springer, 2014, Chapter 22. https://doi.org/10.1007/978-1-4614-7630-6
  • S. Mizuno, M. J. Todd, Y. Ye, On adaptive-step primal–dual interior-point algorithms for linear programming, Mathematics of Operations Research 18(4), 964–981, 1993. https://doi.org/10.1287/moor.18.4.964
  • Y. Ye, M. J. Todd, S. Mizuno, An O(nL)O(\sqrt n L)O(n​L)-iteration homogeneous and self-dual linear programming algorithm, Mathematics of Operations Research 19(1), 53–67, 1994. https://doi.org/10.1287/moor.19.1.53
  • A. J. Goldman, A. W. Tucker, Theory of linear programming, in Linear Inequalities and Related Systems, Annals of Mathematics Studies 38, Princeton University Press, 1956, 53–97. https://doi.org/10.1515/9781400881987-005
10 thms1 active userReviewed
Convex OptimizationOperations ResearchOptimization·Captain: mikedeng1

Linear Programming: Foundations and Extensions V: Convergence Rates of the Path-Following MethodTextbook

Motivation

Interior-point methods are, together with the simplex method, the standard algorithms for linear programming, and the primal–dual path-following method is the form in which they are implemented in most solvers. Unlike the simplex method, it is a one-phase method: it can start from any point whose primal and dual variables are strictly positive, feasible or not, and drives infeasibility and complementarity to zero simultaneously. The question every user of such a method eventually asks is how fast these three measures of non-optimality decrease.

Chapter 18 of R. J. Vanderbei, Linear Programming: Foundations and Extensions (4th ed., Springer 2014, DOI 10.1007/978-1-4614-7630-6) defines the method from scratch (Fig. 18.1, p. 273) and proves a rate statement, Theorem 18.1 (pp. 277–279): as long as the step lengths stay bounded below and the iterates stay bounded, the primal and dual infeasibilities decay geometrically, and so does the complementarity, at a slower rate. This mission formalizes that theorem and the one-step identities and estimates it is built from. It is the fifth mission of a series on the book; the missions are independent of each other.

Setting

Let AAA be a real m×nm \times nm×n matrix, b∈Rmb \in \mathbb{R}^mb∈Rm, c∈Rnc \in \mathbb{R}^nc∈Rn. The primal problem is to maximize cTxc^TxcTx subject to Ax+w=bAx + w = bAx+w=b, x,w≥0x, w \ge 0x,w≥0; the dual is to minimize bTyb^TybTy subject to ATy−z=cA^Ty - z = cATy−z=c, y,z≥0y, z \ge 0y,z≥0. A primal–dual point is a quadruple (x,w,y,z)(x, w, y, z)(x,w,y,z) with x,z∈Rnx, z \in \mathbb{R}^nx,z∈Rn, w,y∈Rmw, y \in \mathbb{R}^mw,y∈Rm; it is strictly positive, (x,w,y,z)>0(x, w, y, z) > 0(x,w,y,z)>0, if every component is. Write X,W,Y,ZX, W, Y, ZX,W,Y,Z for the diagonal matrices of x,w,y,zx, w, y, zx,w,y,z and eee for the all-ones vector. The norms are ∥v∥1=∑j∣vj∣\|v\|_1 = \sum_j |v_j|∥v∥1​=∑j​∣vj​∣ and ∥v∥∞=max⁡j∣vj∣\|v\|_\infty = \max_j |v_j|∥v∥∞​=maxj​∣vj​∣.

At a point (x,w,y,z)(x, w, y, z)(x,w,y,z) the three measures of progress are the primal infeasibility ρ=b−Ax−w\rho = b - Ax - wρ=b−Ax−w, the dual infeasibility σ=c−ATy+z\sigma = c - A^Ty + zσ=c−ATy+z, and the complementarity γ=zTx+yTw\gamma = z^Tx + y^Twγ=zTx+yTw. Fix parameters 0<δ<10 < \delta < 10<δ<1 and 0<r<10 < r < 10<r<1. One iteration of the method, from a strictly positive point, sets μ=δγ/(n+m)\mu = \delta\gamma/(n+m)μ=δγ/(n+m), takes any solution (Δx,Δw,Δy,Δz)(\Delta x, \Delta w, \Delta y, \Delta z)(Δx,Δw,Δy,Δz) of the Newton system

AΔx+Δw=ρ,ATΔy−Δz=σ,ZΔx+XΔz=μe−XZe,WΔy+YΔw=μe−YWe,A\Delta x + \Delta w = \rho, \quad A^T\Delta y - \Delta z = \sigma, \quad Z\Delta x + X\Delta z = \mu e - XZe, \quad W\Delta y + Y\Delta w = \mu e - YWe,AΔx+Δw=ρ,ATΔy−Δz=σ,ZΔx+XΔz=μe−XZe,WΔy+YΔw=μe−YWe,

computes the step length

θ=r(max⁡i,j{∣Δxjxj∣,∣Δwiwi∣,∣Δyiyi∣,∣Δzjzj∣})−1∧1(18.7)\theta = r\left(\max_{i,j}\left\{\left|\tfrac{\Delta x_j}{x_j}\right|, \left|\tfrac{\Delta w_i}{w_i}\right|, \left|\tfrac{\Delta y_i}{y_i}\right|, \left|\tfrac{\Delta z_j}{z_j}\right|\right\}\right)^{-1} \wedge 1 \qquad (18.7)θ=r(i,jmax​{​xj​Δxj​​​,​wi​Δwi​​​,​yi​Δyi​​​,​zj​Δzj​​​})−1∧1(18.7)

(with θ=1\theta = 1θ=1 when all ratios vanish), and moves to (x+θΔx,w+θΔw,y+θΔy,z+θΔz)(x + \theta\Delta x, w + \theta\Delta w, y + \theta\Delta y, z + \theta\Delta z)(x+θΔx,w+θΔw,y+θΔy,z+θΔz). This is Fig. 18.1 with the shorter step (18.7) the book adopts for its analysis. Along a sequence of iterates, superscripts (k)^{(k)}(k) denote the quantities at the kkk-th iterate, and θ(k)\theta^{(k)}θ(k) is the step length computed there.

Formalization targets

Goal: Theorem 18.1 with the explicit constant

If t>0t > 0t>0, MMM is real, and for all k≤Kk \le Kk≤K one has θ(k)≥t\theta^{(k)} \ge tθ(k)≥t, ∥x(k)∥∞≤M\|x^{(k)}\|_\infty \le M∥x(k)∥∞​≤M, ∥y(k)∥∞≤M\|y^{(k)}\|_\infty \le M∥y(k)∥∞​≤M, then for all k≤Kk \le Kk≤K, with t~=t(1−δ)\tilde t = t(1-\delta)t~=t(1−δ),

∥ρ(k)∥1≤(1−t)k∥ρ(0)∥1,∥σ(k)∥1≤(1−t)k∥σ(0)∥1,γ(k)≤(1−t~)k(γ(0)+M(∥ρ(0)∥1+∥σ(0)∥1)δt).\|\rho^{(k)}\|_1 \le (1-t)^k\|\rho^{(0)}\|_1, \qquad \|\sigma^{(k)}\|_1 \le (1-t)^k\|\sigma^{(0)}\|_1, \qquad \gamma^{(k)} \le (1-\tilde t)^k \left(\gamma^{(0)} + \frac{M(\|\rho^{(0)}\|_1 + \|\sigma^{(0)}\|_1)}{\delta t}\right).∥ρ(k)∥1​≤(1−t)k∥ρ(0)∥1​,∥σ(k)∥1​≤(1−t)k∥σ(0)∥1​,γ(k)≤(1−t~)k(γ(0)+δtM(∥ρ(0)∥1​+∥σ(0)∥1​)​).

Milestones

The one-step identities for the infeasibilities, ρ~=(1−θ)ρ\tilde\rho = (1-\theta)\rhoρ~​=(1−θ)ρ (18.8) and σ~=(1−θ)σ\tilde\sigma = (1-\theta)\sigmaσ~=(1−θ)σ (18.9); the one-step complementarity estimate

γ~≤(1−(1−δ)θ)γ+M∥ρ∥1+M∥σ∥1(18.10)\tilde\gamma \le (1 - (1-\delta)\theta)\gamma + M\|\rho\|_1 + M\|\sigma\|_1 \qquad (18.10)γ~​≤(1−(1−δ)θ)γ+M∥ρ∥1​+M∥σ∥1​(18.10)

under ∥x∥∞,∥y∥∞≤M\|x\|_\infty, \|y\|_\infty \le M∥x∥∞​,∥y∥∞​≤M; and the recursion γ(k)≤(1−t~)γ(k−1)+M(1−t)k−1(∥ρ(0)∥1+∥σ(0)∥1)\gamma^{(k)} \le (1-\tilde t)\gamma^{(k-1)} + M(1-t)^{k-1}(\|\rho^{(0)}\|_1 + \|\sigma^{(0)}\|_1)γ(k)≤(1−t~)γ(k−1)+M(1−t)k−1(∥ρ(0)∥1​+∥σ(0)∥1​) (18.11). Two unnumbered statements complete the picture: every iteration has 0<θ≤10 < \theta \le 10<θ≤1 and keeps the point strictly positive, and at any strictly positive point the duality gap satisfies ∣bTy−cTx∣≤γ+∥σ∥1∥x∥∞+∥ρ∥1∥y∥∞|b^Ty - c^Tx| \le \gamma + \|\sigma\|_1\|x\|_\infty + \|\rho\|_1\|y\|_\infty∣bTy−cTx∣≤γ+∥σ∥1​∥x∥∞​+∥ρ∥1​∥y∥∞​ (§18.5.3).

Significance

Theorem 18.1 separates the convergence question for the path-following method into two parts: a rate statement that holds whenever steps stay long and iterates stay bounded, and the remaining question of when those two conditions hold. It also explains an effect seen in practice: the infeasibilities fall by the factor 1−t1 - t1−t per iteration while the complementarity, and hence (by the duality-gap estimate) the gap bTy−cTxb^Ty - c^TxbTy−cTx, falls only by 1−t~1 - \tilde t1−t~. The book stresses that the result is partial, because it does not show that the step lengths remain bounded away from zero; that requires modifications of the method and of the starting point that the book does not carry out.

All statements here are proved in the book. The mission's contribution is a machine-checked version, with the constant of the complementarity bound made explicit. Neither Mathlib nor the platform contains a formal proof of this theorem or a formalization of the infeasible-start primal–dual iteration it concerns; the platform's existing path-following result concerns a different, feasible-start short-step method in equality form.

Difficulty

The infeasibility identities are linear and follow from the first two Newton equations. The complementarity is where the Newton system linearizes a bilinear equation, so the new complementarity contains a second-order term θ2(ΔyTρ−σTΔx)\theta^2(\Delta y^T\rho - \sigma^T\Delta x)θ2(ΔyTρ−σTΔx) that has no sign. Bounding it requires relating the size of the step θΔ\theta\DeltaθΔ to the size of the current iterate through the specific form of the step-length rule (18.7); the rule (18.6) of Fig. 18.1, with signed ratios, does not give such a bound. The multi-step estimate then couples two geometric sequences with different rates, and keeping the constant independent of the horizon KKK is what makes the statement non-trivial.

Formalization scope

Vectors are Fin n → ℝ and Fin m → ℝ, AAA is a Matrix (Fin m) (Fin n) ℝ, and points and step directions are a structure PDPoint m n with fields x w y z. The sup-norm is ⨆ j, |v j| (the maximum; 0 for an empty vector). The step length is written with the explicit case θ=1\theta = 1θ=1 when all ratios vanish, since Lean's r / 0 = 0 would otherwise give θ=0\theta = 0θ=0. An iteration is a relation between the current point, a step direction and the next point: the current point is strictly positive, the direction is some solution of the Newton system (uniqueness, which the book asserts under a full-rank assumption, is not assumed), and the next point is current + θ⋅+\ \theta \cdot+ θ⋅ direction. The hypotheses 0<δ<10 < \delta < 10<δ<1, 0<r<10 < r < 10<r<1 (pp. 272–273) are stated in every theorem; MMM is an arbitrary real number and KKK a natural number. As in the book, the hypotheses of Theorem 18.1 range over k≤Kk \le Kk≤K, so the iteration from index KKK is part of the data.

Explicit constants. The book's Theorem 18.1 asserts only "there exists a constant Mˉ<∞\bar M < \inftyMˉ<∞". Because KKK is fixed, that existential is satisfied trivially by max⁡k≤Kγ(k)/(1−t~)k\max_{k \le K}\gamma^{(k)}/(1-\tilde t)^kmaxk≤K​γ(k)/(1−t~)k, and a statement with ∃Mˉ\exists \bar M∃Mˉ would be empty. The goal therefore uses the constant the book's proof establishes (p. 279, last display): Mˉ=γ(0)+M(∥ρ(0)∥1+∥σ(0)∥1)/(δt)\bar M = \gamma^{(0)} + M(\|\rho^{(0)}\|_1 + \|\sigma^{(0)}\|_1)/(\delta t)Mˉ=γ(0)+M(∥ρ(0)∥1​+∥σ(0)∥1​)/(δt). Eq. (18.11) is stated with the book's M~=M(∥ρ(0)∥1+∥σ(0)∥1)\tilde M = M(\|\rho^{(0)}\|_1 + \|\sigma^{(0)}\|_1)M~=M(∥ρ(0)∥1​+∥σ(0)∥1​) written out.

The formalization needs only finite sums, dot products and matrix–vector products from Mathlib; the definitions of the iteration are reusable for other analyses of the same method (Chapters 19–22 of the book). Contributions are welcome for each milestone separately.

Selected references

  • R. J. Vanderbei, Linear Programming: Foundations and Extensions, 4th ed., International Series in Operations Research & Management Science 196, Springer, 2014, Chapter 18, pp. 269–283. https://doi.org/10.1007/978-1-4614-7630-6
  • S. J. Wright, Primal-Dual Interior-Point Methods, SIAM, 1997. https://doi.org/10.1137/1.9781611971453
6 thms1 active userReviewed
Convex OptimizationOperations ResearchOptimization·Captain: mikedeng1

Linear Programming: Foundations and Extensions IV: Existence of the Central PathTextbook

Motivation

Interior-point methods solve linear programs by moving through the interior of the feasible region instead of along its edges, as the simplex method does. The methods used in practice are path-following methods: they track a curve, the central path, that runs through the interior of the feasible region and ends at an optimal solution. Before any such method can be analysed, the curve has to exist. This mission formalizes Chapter 17 of R. J. Vanderbei, Linear Programming: Foundations and Extensions (4th ed., Springer 2014), which defines the central path through the logarithmic barrier problem and proves that it exists exactly when the primal and the dual problem both have strictly positive feasible points.

The chapter's results have a short history. Barrier methods for nonlinear programming go back to Fiacco and McCormick (1968). Interest in interior-point methods for linear programming began with Karmarkar (1984), whose projective algorithm does not mention a central path; the connection between Karmarkar's method and the primal–dual central path was found by Megiddo (1989), with central points traced back to Huard (1967) and an extended study of the path by Bayer and Lagarias (1989). The chapter is the textbook entry point to this line of work and the foundation for the path-following algorithm of Chapter 18.

Setting

Let AAA be a real m×nm \times nm×n matrix, b∈Rmb \in \mathbb{R}^mb∈Rm and c∈Rnc \in \mathbb{R}^nc∈Rn. The primal linear program is to maximize cTxc^T xcTx subject to Ax≤bAx \le bAx≤b, x≥0x \ge 0x≥0; its dual is to minimize bTyb^T ybTy subject to ATy≥cA^T y \ge cATy≥c, y≥0y \ge 0y≥0. With slack variables w∈Rmw \in \mathbb{R}^mw∈Rm and z∈Rnz \in \mathbb{R}^nz∈Rn they read (17.1)

Ax+w=b, x,w≥0andATy−z=c, y,z≥0.Ax + w = b,\ x, w \ge 0 \qquad\text{and}\qquad A^T y - z = c,\ y, z \ge 0.Ax+w=b, x,w≥0andATy−z=c, y,z≥0.

For a vector ξ\xiξ, ξ>0\xi > 0ξ>0 means that every component is strictly positive. The primal feasible region has nonempty interior when some (xˉ,wˉ)(\bar x, \bar w)(xˉ,wˉ) satisfies Axˉ+wˉ=bA\bar x + \bar w = bAxˉ+wˉ=b with xˉ>0\bar x > 0xˉ>0, wˉ>0\bar w > 0wˉ>0; the dual feasible region has nonempty interior when some (yˉ,zˉ)(\bar y, \bar z)(yˉ​,zˉ) satisfies ATyˉ−zˉ=cA^T \bar y - \bar z = cATyˉ​−zˉ=c with yˉ>0\bar y > 0yˉ​>0, zˉ>0\bar z > 0zˉ>0.

For a parameter μ>0\mu > 0μ>0, the barrier function (17.7) is

f(x,w)=cTx+μ∑j=1nlog⁡xj+μ∑i=1mlog⁡wi,f(x, w) = c^T x + \mu \sum_{j=1}^n \log x_j + \mu \sum_{i=1}^m \log w_i ,f(x,w)=cTx+μj=1∑n​logxj​+μi=1∑m​logwi​,

and the barrier problem (17.2) is to maximize f(x,w)f(x, w)f(x,w) subject to Ax+w=bAx + w = bAx+w=b, over the domain x>0x > 0x>0, w>0w > 0w>0 where the logarithms are finite. A solution of the barrier problem is a point of that domain at which fff attains its maximum over the domain.

Writing X,Z,Y,WX, Z, Y, WX,Z,Y,W for the diagonal matrices carrying x,z,y,wx, z, y, wx,z,y,w and eee for the all-ones vector, the primal–dual central-path system (17.6) is

Ax+w=b,ATy−z=c,XZe=μe,YWe=μe,Ax + w = b, \qquad A^T y - z = c, \qquad XZe = \mu e, \qquad YWe = \mu e,Ax+w=b,ATy−z=c,XZe=μe,YWe=μe,

with x,w,y,z>0x, w, y, z > 0x,w,y,z>0. The last two equations say xjzj=μx_j z_j = \muxj​zj​=μ and yiwi=μy_i w_i = \muyi​wi​=μ for all jjj and iii. The set of its solutions (xμ,wμ,yμ,zμ)(x_\mu, w_\mu, y_\mu, z_\mu)(xμ​,wμ​,yμ​,zμ​), μ>0\mu > 0μ>0, is the primal–dual central path.

The chapter also uses one fact from nonlinear programming: for the problem "maximize f(x)f(x)f(x) subject to gi(x)=0g_i(x) = 0gi​(x)=0, i=1,…,mi = 1, \dots, mi=1,…,m", a critical point is a feasible x∗x^*x∗ with ∇f(x∗)=∑iyi∇gi(x∗)\nabla f(x^*) = \sum_i y_i \nabla g_i(x^*)∇f(x∗)=∑i​yi​∇gi​(x∗) for some Lagrange multipliers yiy_iyi​ (17.3), and Hf(x∗)H_f(x^*)Hf​(x∗) is the Hessian of fff at x∗x^*x∗.

Formalization targets

Goal: Theorem 17.2 (p. 265)

For each fixed μ>0\mu > 0μ>0,

∃ (x,w) solving the barrier problem  ⟺  (∃ xˉ,wˉ>0:Axˉ+wˉ=b)∧(∃ yˉ,zˉ>0:ATyˉ−zˉ=c).\exists\, (x, w) \text{ solving the barrier problem} \iff \big(\exists\, \bar x, \bar w > 0 : A\bar x + \bar w = b\big) \wedge \big(\exists\, \bar y, \bar z > 0 : A^T\bar y - \bar z = c\big).∃(x,w) solving the barrier problem⟺(∃xˉ,wˉ>0:Axˉ+wˉ=b)∧(∃yˉ​,zˉ>0:ATyˉ​−zˉ=c).

Both directions are part of the goal. The statement fixes no constants and no rate; it asserts only when the barrier problem is solvable.

Milestones

  1. Theorem 17.1 (p. 261), second-order sufficiency under linear constraints: if the constraints are linear, a critical point x∗x^*x∗ with ξTHf(x∗)ξ<0\xi^T H_f(x^*)\xi < 0ξTHf​(x∗)ξ<0 for every ξ≠0\xi \ne 0ξ=0 satisfying ξT∇gi(x∗)=0\xi^T \nabla g_i(x^*) = 0ξT∇gi​(x∗)=0 for all iii is a local maximum on the feasible set.
  2. Exercise 10.7 (p. 150): if the primal is feasible and its feasible set {x:Ax≤b, x≥0}\{x : Ax \le b,\ x \ge 0\}{x:Ax≤b, x≥0} is bounded, then there are y>0y > 0y>0, z>0z > 0z>0 with ATy−z=cA^T y - z = cATy−z=c.
  3. Corollary 17.3 (p. 266): if the primal feasible set (or the dual feasible set) has nonempty interior and is bounded, then for each μ>0\mu > 0μ>0 the system (17.6) has exactly one solution with x,w,y,z>0x, w, y, z > 0x,w,y,z>0.

The corollary is stronger than the goal in one direction (it adds uniqueness and the dual variables) and weaker in another (it assumes boundedness).

Significance

The result itself. Theorem 17.2 gives an exact criterion for the barrier problem to be solvable for a fixed μ\muμ, and Corollary 17.3 turns it into the statement that the central path is a well-defined curve μ↦(xμ,wμ,yμ,zμ)\mu \mapsto (x_\mu, w_\mu, y_\mu, z_\mu)μ↦(xμ​,wμ​,yμ​,zμ​) for all μ>0\mu > 0μ>0. Every path-following method, including the one analysed in Chapter 18 of the same book, targets points on this curve; without existence and uniqueness the "target" of an iteration is undefined. The system (17.6) is also the starting point of the primal–dual Newton step.

Formalizing it. These results are classical and proved in the book; none is formalized in the Ax≤bAx \le bAx≤b, x≥0x \ge 0x≥0 form used here. The platform has the converse fact in the standard form Ax=bAx = bAx=b, x≥0x \ge 0x≥0 (a solution of the central-path conditions minimizes the barrier, Introduction to Linear Optimization), but not existence. A formal proof of Theorem 17.2 and Corollary 17.3 produces a reusable existence theorem for the central path that downstream missions on path-following and self-dual methods can import.

Difficulty

The "if" direction of Theorem 17.2 is an existence claim on a set that is neither closed nor bounded: the domain x>0x > 0x>0, w>0w > 0w>0 is open, and the feasible region itself may be unbounded, so the obvious appeal to "a continuous function on a compact set attains its maximum" does not apply directly. The example "maximize 000 subject to x≥0x \ge 0x≥0" (p. 264), whose barrier μlog⁡x\mu \log xμlogx has no maximum, shows that the dual hypothesis cannot be dropped. The "only if" direction, which the book calls trivial and does not prove, needs first-order conditions at a maximizer over a relatively open set.

Theorem 17.1 needs a second-order Taylor expansion with a remainder that is o(∥ξ∥2)o(\|\xi\|^2)o(∥ξ∥2) uniformly along the constraint subspace, not along individual lines. Exercise 10.7 is a theorem of the alternative and is not a consequence of weak duality alone. Uniqueness in Corollary 17.3 requires the positivity of the solution: the equations xjzj=μx_j z_j = \muxj​zj​=μ, yiwi=μy_i w_i = \muyi​wi​=μ admit sign-flipped solutions.

Formalization scope

Vectors are Fin n → ℝ and Fin m → ℝ; AAA is a Matrix (Fin m) (Fin n) ℝ. The book's primal–dual pair in Ax≤bAx \le bAx≤b, x≥0x \ge 0x≥0 form with slacks is used throughout; there are no explicit constants in this chapter.

Conventions committed to:

  • "Nonempty interior" means a feasible point with every component strictly positive, as the proof of Theorem 17.2 says. The topological interior of {(x,w):Ax+w=b, x,w≥0}\{(x, w) : Ax + w = b,\ x, w \ge 0\}{(x,w):Ax+w=b, x,w≥0} in Rn+m\mathbb{R}^{n+m}Rn+m is empty whenever m≥1m \ge 1m≥1; reading the theorem that way would make its right-hand side always false for m≥1m \ge 1m≥1, and that reading is ruled out.
  • The barrier problem is posed over x>0x > 0x>0, w>0w > 0w>0 explicitly; Real.log returns 000 at nonpositive arguments and is never evaluated there.
  • Solutions of (17.6) are required to be strictly positive, as in Exercise 17.3 (p. 267).
  • "Bounded" is Bornology.IsBounded of the feasible set in Rn\mathbb{R}^nRn (resp. Rm\mathbb{R}^mRm).
  • In Theorem 17.1 the constraints are Gx=βGx = \betaGx=β; fff is differentiable near x∗x^*x∗ with derivative differentiable at x∗x^*x∗, and ξTHf(x∗)ξ\xi^T H_f(x^*) \xiξTHf​(x∗)ξ is the second Fréchet derivative applied to (ξ,ξ)(\xi, \xi)(ξ,ξ). The local maximum is relative to the feasible set.

Infrastructure a complete development needs: attainment of maxima on compact sets (IsCompact.exists_isMaxOn in Mathlib), first-order conditions on relatively open sets, a theorem of the alternative for Exercise 10.7, and concavity facts about the logarithm. A second-order sufficient condition under affine constraints is not in Mathlib and is reusable beyond linear programming. Proofs of any milestone, including the "only if" half of the goal separately, are welcome contributions.

Selected references

  • R. J. Vanderbei, Linear Programming: Foundations and Extensions, 4th ed., International Series in Operations Research & Management Science 196, Springer, 2014, Chapter 17 and Exercise 10.7. https://doi.org/10.1007/978-1-4614-7630-6
  • A. V. Fiacco and G. P. McCormick, Nonlinear Programming: Sequential Unconstrained Minimization Techniques, Wiley, 1968. https://doi.org/10.1137/1.9781611971316
  • N. Karmarkar, A new polynomial-time algorithm for linear programming, Combinatorica 4 (1984), 373–395. https://doi.org/10.1007/BF02579150
  • N. Megiddo, Pathways to the optimal set in linear programming, in Progress in Mathematical Programming, Springer, 1989, 131–158. https://doi.org/10.1007/978-1-4613-9617-8_8
  • D. A. Bayer and J. C. Lagarias, The nonlinear geometry of linear programming I, II, Transactions of the AMS 314 (1989), 499–526 and 527–581. https://doi.org/10.1090/S0002-9947-1989-1005525-6
5 thms1 active userReviewed
CombinatoricsGraph TheoryOperations Research+1·Captain: mikedeng1

Linear Programming: Foundations and Extensions III: Network Flows, the Integrality Theorem and König's TheoremTextbook

Motivation

Minimum-cost network flow problems are the largest special class of linear programs met in practice: transportation, distribution, assignment, communication and electric networks, facility location and financial planning all reduce to moving material along the arcs of a directed network from supply nodes to demand nodes at least cost. Chapter 14 of R. J. Vanderbei's Linear Programming: Foundations and Extensions (4th ed., Springer 2014, DOI 10.1007/978-1-4614-7630-6) develops the network simplex method, and closes with two structural facts that explain why this class is special: simplex bases are spanning trees of the network, and a network problem with integer supplies has integer basic solutions. Vanderbei then uses integrality to prove a classical theorem of combinatorics, König's theorem on regular bipartite graphs. Chapter 15, §5 treats the maximum-flow problem on the same objects and proves the Max-Flow Min-Cut Theorem.

The combinatorial results are older than linear programming. D. König proved in 1916 that every regular bipartite graph has a perfect matching (Math. Ann. 77). The Max-Flow Min-Cut Theorem is due to Ford and Fulkerson (1956, Canad. J. Math. 8) and, independently, Elias, Feinstein and Shannon (1956). The integrality of network bases is the total unimodularity of incidence matrices, known since the 1950s (Hoffman and Kruskal, 1956).

Setting

A network (N,A)(N,A)(N,A) has a finite set NNN of mmm nodes and a set of directed arcs A⊆{(i,j):i,j∈N, i≠j}A\subseteq\{(i,j): i,j\in N,\ i\ne j\}A⊆{(i,j):i,j∈N, i=j}. Node iii carries a supply bib_ibi​ (negative values are demands) with ∑ibi=0\sum_i b_i=0∑i​bi​=0, and arc (i,j)(i,j)(i,j) carries a cost cijc_{ij}cij​. The flow xijx_{ij}xij​ on arc (i,j)(i,j)(i,j) is the decision variable. The node–arc incidence matrix AAA has in the column of (i,j)(i,j)(i,j) an entry +1+1+1 in row jjj, −1-1−1 in row iii, and 000 elsewhere. The network flow problem (14.1) is

minimize cTxsubject toAx=−b, x≥0.\text{minimize } c^{T}x\quad\text{subject to}\quad Ax=-b,\ x\ge 0 .minimize cTxsubject toAx=−b, x≥0.

A flow satisfying Ax=−bAx=-bAx=−b is balanced; a balanced flow with x≥0x\ge0x≥0 is feasible. Paths ignore arc directions; the network is connected if every two nodes are joined by a path, which is assumed throughout Chapter 14. A spanning tree is a set of arcs that, on all of NNN and without directions, is connected and has no cycle. Fixing a root node rrr and deleting its row gives the matrix A~\tilde AA~. A set TTT of arcs is a basis if its columns form an invertible square submatrix of A~\tilde AA~, and a basic feasible solution is a feasible flow vanishing off some basis.

For maximum flow, a source sss, a sink ttt and finite upper bounds uiju_{ij}uij​ are given; all bi=0b_i=0bi​=0 and an extra arc (t,s)(t,s)(t,s) of infinite capacity is added. A feasible flow satisfies 0≤xij≤uij0\le x_{ij}\le u_{ij}0≤xij​≤uij​, xts≥0x_{ts}\ge0xts​≥0 and flow balance. A cut is a node set CCC with s∈Cs\in Cs∈C, t∉Ct\notin Ct∈/C, and its capacity is κ(C)=∑(i,j)∈A, i∈C, j∉Cuij\kappa(C)=\sum_{(i,j)\in A,\ i\in C,\ j\notin C}u_{ij}κ(C)=∑(i,j)∈A, i∈C, j∈/C​uij​.

Formalization targets

Goal: König's Theorem (Theorem 14.3, p. 216)

If nnn girls and nnn boys are such that every girl knows exactly k≥1k\ge1k≥1 boys and every boy knows exactly kkk girls (knowing being symmetric), then there is a bijection σ\sigmaσ from girls to boys with

girl i knows boy σ(i)for all i.\text{girl } i \text{ knows boy } \sigma(i)\qquad\text{for all } i .girl i knows boy σ(i)for all i.

Milestones

  1. Theorem 14.1 (p. 205): for a connected network, a set TTT of arcs indexes a basis of A~\tilde AA~ if and only if TTT is a spanning tree.
  2. Theorem 14.2, Integrality Theorem (p. 216): with integer supplies, every basic feasible solution is integral,
xij∈Zfor all (i,j)∈A.x_{ij}\in\mathbb Z\qquad\text{for all }(i,j)\in A .xij​∈Zfor all (i,j)∈A.
  1. Eq. (15.8) (p. 234): xts≤κ(C)x_{ts}\le\kappa(C)xts​≤κ(C) for every feasible flow and every cut.
  2. Theorem 15.1, Max-Flow Min-Cut (p. 234):
max⁡{xts}=min⁡Cκ(C),\max\{x_{ts}\}=\min_C \kappa(C),max{xts​}=Cmin​κ(C),

both extrema attained.

The goal is independent of the network definitions in its statement; the milestones are the book's route to it (14.1, 14.2) and the chapter's other duality theorem on the same objects (15.8, 15.1).

Significance

König's theorem is the base case of matching theory: it gives perfect matchings in regular bipartite graphs, hence edge colourings of bipartite graphs with Δ\DeltaΔ colours, and via Birkhoff–von Neumann-type arguments the decomposition of doubly stochastic matrices. The Integrality Theorem is the reason assignment, transportation and shortest-path problems can be solved as linear programs without an integrality constraint. Theorem 14.1 is the correspondence the network simplex method is built on. Max-Flow Min-Cut is the prototype of combinatorial min–max theorems.

All four theorems are classical and proved. This mission adds machine-checked versions in the book's own formulation: the incidence matrix with Vanderbei's sign convention Ax=−bAx=-bAx=−b, bases as square submatrices of A~\tilde AA~ with a chosen root, and maximum flow as a circulation through an added return arc. The platform already has network integrality, a tree-solution characterisation and max-flow min-cut in the Bertsimas–Tsitsiklis formulation and a Keller–Trotter max-flow statement; none is stated in this form, and Mathlib has Hall's marriage theorem but no regular-bipartite corollary.

Difficulty

The combinatorial content is small; the difficulty is in the passage between matrices and graphs. Theorem 14.1 needs both directions: the book shows that a spanning tree gives a triangularisable, hence invertible, submatrix and leaves the converse (independent columns form a spanning tree) as an exercise, which requires showing that any cycle, including a pair of antiparallel arcs, yields a linearly dependent set of columns and that m−1m-1m−1 acyclic arcs span. The book's proof of König's theorem applies the Integrality Theorem to the girl–boy network, which need not be connected, while Chapter 14 assumes connectedness throughout: the statement of 14.2 does not apply to it verbatim. The step "a feasible problem has a basic optimal solution" is also used and is not stated in the chapter.

Formalization scope

  • Nodes are a Fintype with decidable equality; arcs are a Finset (N × N), so parallel arcs are excluded as in the book, and IsNetwork excludes loops. Flows are real functions on ordered pairs; only their values on arcs matter.
  • "Connected" is preconnectedness of the undirected simple graph of the arcs; a spanning tree is an arc set whose undirected graph is a tree and in which no two arcs join the same pair of nodes.
  • A basis is m−1m-1m−1 linearly independent columns of the (m−1)(m-1)(m−1)-row matrix A~\tilde AA~, the same as an invertible square submatrix. The root rrr is arbitrary, as in the book ("say, the last one").
  • Integer data means integer supplies; costs do not enter Theorem 14.2, since a basic optimal solution is a basic feasible solution.
  • In König's theorem both sides are Fin n, knowing is one relation between girls and boys, and k≥1k\ge1k≥1 is a hypothesis: the book's proof divides by kkk, and for k=0<nk=0<nk=0<n the claim is false. No connectedness is assumed.
  • For maximum flow, the return arc (t,s)(t,s)(t,s) is a separate variable; s≠ts\ne ts=t and uij≥0u_{ij}\ge0uij​≥0 are hypotheses that the book leaves implicit. Maximum and minimum are stated with attainment.
  • No statement involves a constant the book leaves implicit.

A formalization of the goal as a matching of size nnn in some larger graph, or with the degree conditions on one side only, would be a different theorem; the conclusion is a bijection between exactly the nnn girls and the nnn boys using only acquainted pairs.

Useful infrastructure, reusable beyond this mission: the incidence matrix and its total unimodularity, the undirected graph of an arc set. Proofs of König's theorem through Hall's theorem (Mathlib Finset.all_card_le_biUnion_card_iff_exists_injective) are welcome alongside the book's route.

Selected references

  • R. J. Vanderbei, Linear Programming: Foundations and Extensions, 4th ed., Springer, 2014. DOI 10.1007/978-1-4614-7630-6
  • D. König, Über Graphen und ihre Anwendung auf Determinantentheorie und Mengenlehre, Math. Ann. 77 (1916), 453–465. DOI 10.1007/BF01456961
  • L. R. Ford and D. R. Fulkerson, Maximal flow through a network, Canad. J. Math. 8 (1956), 399–404. DOI 10.4153/CJM-1956-045-5
  • A. J. Hoffman and J. B. Kruskal, Integral boundary points of convex polyhedra, in Linear Inequalities and Related Systems, Ann. of Math. Studies 38, Princeton University Press, 1956, 223–246.
7 thms1 active userReviewed
Stochastic Systems·Captain: mikedeng1

Stochastic Linear Programming 01: Distribution of Random LP Optimal ValuesTextbook

Motivation

A stochastic linear program is a linear optimization problem whose coefficients depend on a random parameter. Even when the model is feasible and bounded almost surely, its optimal value is itself a random quantity. Knowing only its expectation can hide the probability of unusually favorable or unfavorable outcomes; its full distribution supports threshold probabilities, quantiles, and later risk-sensitive decisions. Chapter II of Peter Kall's Stochastic Linear Programming develops a finite-dimensional method for determining that distribution when the constraint matrix, right-hand side, and objective coefficients depend affinely on the same random vector. Theorem 8, printed p. 29 / PDF35, is the chapter's general distribution formula. This mission asks for that known theorem to be proved in Lean from its reviewed statement.

Setting

Fix a finite parameter vector t∈Rrt\in\mathbb R^rt∈Rr. An affine random linear program supplies a matrix A(t)∈Rm×nA(t)\in\mathbb R^{m\times n}A(t)∈Rm×n, a right-hand side b(t)∈Rmb(t)\in\mathbb R^mb(t)∈Rm, and costs c(t)∈Rnc(t)\in\mathbb R^nc(t)∈Rn, each affine in ttt. Its optimal value is the extended-real infimum

γ(t)=inf⁡{c(t)⊤x:A(t)x=b(t), x≥0}.\gamma(t)=\inf\{c(t)^\top x:A(t)x=b(t),\ x\ge 0\}.γ(t)=inf{c(t)⊤x:A(t)x=b(t), x≥0}.

The parameter has a probability law μ\muμ, supported almost surely on a measurable set TTT, with a nonnegative extended-real density fff relative to Lebesgue measure. The extended-real value records infeasibility as +∞+\infty+∞ and unboundedness as −∞-\infty−∞; the target distribution deliberately restricts to the finite-value event −∞<γ(t)≤ξ-\infty<\gamma(t)\le\xi−∞<γ(t)≤ξ.

A candidate basis is an increasing selection σ:Fin⁡(m)→Fin⁡(n)\sigma:\operatorname{Fin}(m)\to\operatorname{Fin}(n)σ:Fin(m)→Fin(n). Its basis matrix Bσ(t)B_\sigma(t)Bσ​(t) consists of the selected columns of A(t)A(t)A(t). Kall enumerates exactly those candidate bases whose determinant is nonzero at some point of TTT. For each one, its raw optimality region consists of the parameters for which Bσ(t)−1b(t)≥0B_\sigma(t)^{-1}b(t)\ge0Bσ​(t)−1b(t)≥0 and the reduced costs c(t)⊤−cB(t)⊤Bσ(t)−1A(t)c(t)^\top-c_B(t)^\top B_\sigma(t)^{-1}A(t)c(t)⊤−cB​(t)⊤Bσ​(t)−1A(t) are nonnegative. Matrix inversion is totalized to zero at singular matrices, matching the source convention. The ordered basis regions remove every earlier raw region, so overlapping optimal bases are assigned to the first enumerated basis. On a basis region the associated value is

γσ(t)=cB(t)⊤Bσ(t)−1b(t).\gamma_\sigma(t)=c_B(t)^\top B_\sigma(t)^{-1}b(t).γσ​(t)=cB​(t)⊤Bσ​(t)−1b(t).

Assumption A1 is explicit in Lean: the density and support clauses above, both almost-sure feasibility/boundedness implications from Theorem 4, and the existence of one full-row-rank column minor at a point of TTT. The basis enumeration is injective and exhaustive for the almost nonsingular increasing selections.

Formalization targets

Theorem 8: distribution by basis regions

For the ordered regions BiB_iBi​, the theorem states

μ ⁣(⋃iBi)=∑iμ(Bi)=1.\mu\!\left(\bigcup_i B_i\right)=\sum_i\mu(B_i)=1.μ(i⋃​Bi​)=i∑​μ(Bi​)=1.

For every real threshold ξ\xiξ, it further identifies the finite optimal-value distribution by

μ{t∈T:−∞<γ(t)≤ξ}=∑i∫{t∈Bi:γi(t)≤ξ}f(t) dt.\mu\{t\in T:-\infty<\gamma(t)\le\xi\} =\sum_i\int_{\{t\in B_i:\gamma_i(t)\le\xi\}} f(t)\,dt.μ{t∈T:−∞<γ(t)≤ξ}=i∑​∫{t∈Bi​:γi​(t)≤ξ}​f(t)dt.

The normalization and distribution identity are the two clauses of the same source theorem and remain one goal. Determinant facts, special stochastic models, and examples elsewhere in the chapter are context rather than additional mission targets.

Significance

The result turns the distribution of a random optimization value into a finite sum of ordinary density integrals over explicitly described parameter regions. It connects parametric linear programming geometry with probabilistic questions about the optimum and provides the chapter's foundation for studying particular stochastic models and derived distributional quantities. Without the coverage and normalization clauses, the integral expression could omit positive-probability parameter regimes; without the finite-value event, extended-real exceptional outcomes would be conflated with a real-valued distribution function.

The theorem is established in the 1976 source, but the staged Lean declaration contains a proof placeholder. Completing it would produce a machine-checked account of the basis-region decomposition under the source's full hypotheses. The reusable content includes the affine model, basis matrix, raw-region inequalities, ordered disjointification, basis value, and the referenced extended-real linear-program value.

Difficulty

The natural pointwise argument chooses an optimal basis and substitutes its basic solution. That alone does not prove a measurable probability decomposition: several bases may be optimal at the same parameter, bases may become singular on exceptional sets, and the optimal value may be infinite. The ordered subtraction of earlier regions resolves overlap only after one proves exhaustive coverage under A1. The final equality must also connect the extended-real infimum to the real basis value on each region and justify the density integrals on the threshold sets. Treating the raw regions as automatically disjoint or silently assuming every parameter has a unique nonsingular optimizer would bypass the central issues.

Formalization scope

All dimensions and basis lists are finite. The law is a probability measure on Fin⁡(r)→R\operatorname{Fin}(r)\to\mathbb RFin(r)→R, represented as volume.withDensity f; TTT is measurable and carries the law almost surely. The density is ENNReal-valued and the displayed integrals are nonnegative lintegrals. No integrability or finite-moment hypothesis is imposed on the optimal value. LPValue is an existing referenced platform definition using EReal.sInf; the book-local declarations remain in the shared Kall1976 namespace. Mathlib's nonsingular inverse supplies the source's zero value at singular matrices.

The formal target must retain both almost-sure implications, the one-point full-rank condition, increasing and exhaustive basis enumeration, region ordering, probability-one normalization, the strict lower bound by −∞-\infty−∞, and the weak upper threshold ≤ξ\le\xi≤ξ. Removing any of these clauses would change the reviewed theorem rather than simplify its proof. Contributions may develop measurable-region, finite-basis coverage, LP optimality, and density-integration lemmas, provided they preserve these conventions.

Selected references

  • Peter Kall, Stochastic Linear Programming, Springer, 1976, Chapter II §1: Theorem 4 printed p. 25 / PDF31; model (5) printed p. 27 / PDF33; Assumption A1 printed p. 28 / PDF34; Theorem 8 printed p. 29 / PDF35. DOI.
3 thms1 active userReviewed
🏆Completed
OptimizationTheoretical Computer Science·Captain: moutei

Primal-Dual Online Algorithms I: Fractional Ski RentalTextbook

Motivation

An online algorithm must commit to decisions before it knows the rest of its input, and it is judged by competitive analysis: the ratio between its cost and the cost of an optimal solution computed with full knowledge of the input. A recurring obstacle in this area is that each problem seems to need its own ad hoc potential-function argument. Buchbinder's thesis develops a single method that replaces those arguments — formulate the offline problem as a covering linear program, let the online algorithm raise the dual variables of its packing dual, and read the competitive ratio off the ratio between the primal and dual increments. The same recipe then yields algorithms for online set cover, weighted caching, ad-auction revenue, routing, and load balancing.

This mission formalizes the chapter where the method is introduced on its smallest example, the ski-rental problem. A customer needs skis for an unknown number of days: renting costs 111 per day and buying costs BBB once. The customer must decide, each morning, whether to rent again or buy, without knowing how many ski days remain. Despite its size the problem is the canonical rent-or-buy dilemma, and it has two classical tight results: a deterministic 222-competitive algorithm, and a randomized algorithm whose competitive ratio tends to e/(e−1)e/(e-1)e/(e−1), due to Karlin, Manasse, McGeoch and Owicki (1994). The primal-dual derivation of both is the content of Chapter 3.

Setting

An instance is a pair (B,k)(B, k)(B,k): the purchase price BBB, a positive integer, and the number k≥0k \ge 0k≥0 of ski days, which the online algorithm does not know. An offline solution either buys at once, paying BBB, or rents on every day, paying kkk; so the offline optimum is

OPT(B,k)  =  min⁡(B,k).\mathrm{OPT}(B,k) \;=\; \min(B, k).OPT(B,k)=min(B,k).

Chapter 3 casts this as a linear program (Figure 3.1, p. 18). The primal is a covering program with one buy variable xxx and one rent variable zjz_jzj​ per day jjj:

minimize   Bx+∑j=1kzjsubject tox+zj≥1  for each day j.\text{minimize } \; B x + \sum_{j=1}^{k} z_j \quad \text{subject to} \quad x + z_j \ge 1 \ \text{ for each day } j.minimize Bx+j=1∑k​zj​subject tox+zj​≥1  for each day j.

Its dual is a packing program with one variable yjy_jyj​ per day:

maximize   ∑j=1kyjsubject to∑j=1kyj≤B,0≤yj≤1.\text{maximize } \; \sum_{j=1}^{k} y_j \quad \text{subject to} \quad \sum_{j=1}^{k} y_j \le B, \qquad 0 \le y_j \le 1 .maximize j=1∑k​yj​subject toj=1∑k​yj​≤B,0≤yj​≤1.

The online structure enters in a single way: a new ski day appends a new covering constraint to the primal and a new variable to the dual, and previously raised primal variables may never be decreased. That monotonicity is what "previous decisions cannot be regretted" means formally.

The fractional primal-dual algorithm maintains xxx, initially 000. On each new day, while x<1x < 1x<1 it sets zj←1−xz_j \leftarrow 1 - xzj​←1−x, then raises

x  ←  x(1+1B)+1cB,x \;\leftarrow\; x\left(1 + \tfrac{1}{B}\right) + \tfrac{1}{cB},x←x(1+B1​)+cB1​,

and sets yj←1y_j \leftarrow 1yj​←1; once xxx has reached 111 it does nothing further. The free parameter ccc is then pinned to the value that makes xxx reach exactly 111 after BBB days,

c  =  (1+1B)B−1.c \;=\; \left(1 + \tfrac{1}{B}\right)^{B} - 1 .c=(1+B1​)B−1.

Formalization targets

Goal — the fractional algorithm's competitive ratio at finite BBB

B xk+∑j=0k−1zj  ≤  (1+1(1+1B)B−1)⋅min⁡(B,k)for every B≥1, k≥0.B\,x_k + \sum_{j=0}^{k-1} z_j \;\le\; \left(1 + \frac{1}{\left(1 + \frac{1}{B}\right)^{B} - 1}\right) \cdot \min(B, k) \qquad \text{for every } B \ge 1, \ k \ge 0 .Bxk​+j=0∑k−1​zj​≤(1+(1+B1​)B−11​)⋅min(B,k)for every B≥1, k≥0.

The coefficient is the exact finite-BBB ratio 1+1/c1 + 1/c1+1/c, left in closed form rather than replaced by a constant. This is deliberate: (1+1B)B\left(1+\frac1B\right)^B(1+B1​)B increases to eee, so c<e−1c < e - 1c<e−1 and therefore 1+1/c>e/(e−1)1 + 1/c > e/(e-1)1+1/c>e/(e−1) for every finite BBB. A goal asserting e/(e−1)e/(e-1)e/(e−1)-competitiveness at finite BBB would be false, and a goal asserting some rounded constant would be invalidated by any sharpening. The closed-form coefficient is the weakest statement that is stable under improvement.

Asymptotic companion — where e/(e−1)e/(e-1)e/(e−1) actually lives

lim⁡B→∞(1+1(1+1B)B−1)  =  ee−1  ≈  1.5819767.\lim_{B \to \infty} \left(1 + \frac{1}{\left(1 + \frac{1}{B}\right)^{B} - 1}\right) \;=\; \frac{e}{e-1} \;\approx\; 1.5819767 .B→∞lim​(1+(1+B1​)B−11​)=e−1e​≈1.5819767.

The classical constant is recorded here, as a limit of the coefficient sequence, and nowhere else.

Parallel target — the deterministic algorithm

detCost(B,k)  ≤  2⋅min⁡(B,k),detCost(B,k)={kk<B2Bk≥B\mathrm{detCost}(B,k) \;\le\; 2 \cdot \min(B,k), \qquad \mathrm{detCost}(B,k) = \begin{cases} k & k < B \\ 2B & k \ge B\end{cases}detCost(B,k)≤2⋅min(B,k),detCost(B,k)={k2B​k<Bk≥B​

Chapter 3's other result, independent of the fractional development.

Significance

The ski-rental bounds themselves are classical and tight, and nothing here is mathematically open. What the chapter contributes, and what this mission captures, is the derivation: it is the template instantiated by every later chapter of the thesis, so the artifacts built here — a covering/packing LP pair, its weak-duality instance, a monotone online variable with a closed-form growth law, and the primal-to-dual increment ratio as the source of the competitive factor — are the vocabulary in which the rest of the series will be stated.

On status: the mathematics is proved, published, and standard. It is not, to the best of a search of Mathlib at revision 0df444a, formalized — that revision contains no competitive-analysis or online-algorithm framework, no ski-rental development, and no general linear-programming weak-duality theorem. So the work this mission asks for is formalization of a known proof, not new mathematics, and the reusable output is infrastructure that does not currently exist in the library.

Difficulty

The offline problem is trivial, and a newcomer's first move — prove min⁡(B,k)\min(B,k)min(B,k) is the optimum and stop — solves the wrong problem. The content is entirely in the online constraint. Three specific places where the obvious argument stalls:

The optimum is never observed. The algorithm's cost must be compared against min⁡(B,k)\min(B,k)min(B,k) without kkk being available to it. The comparison is routed through the dual instead: the dual objective the algorithm accumulates is a lower bound on every feasible primal solution, hence on the optimum, and the algorithm's own primal cost is a fixed multiple of that dual objective.

The growth law is piecewise. The update fires only while x<1x < 1x<1. Summing the per-day increments therefore does not telescope uniformly: days before xxx reaches 111 contribute 1+1/c1 + 1/c1+1/c each and later days contribute nothing, and the index at which the switch happens is exactly BBB — which is a theorem about the recurrence, not an assumption.

The constant is forced, not chosen. c=(1+1/B)B−1c = (1+1/B)^B - 1c=(1+1/B)B−1 is not a free tuning parameter; it is the unique value for which the geometric sequence xj=((1+1/B)j−1)/cx_j = \bigl((1+1/B)^j - 1\bigr)/cxj​=((1+1/B)j−1)/c hits 111 at j=Bj = Bj=B, which is in turn what makes the dual solution feasible (∑jyj≤B\sum_j y_j \le B∑j​yj​≤B). Dual feasibility and the choice of ccc are the same fact.

Formalization scope

Conventions this development commits to. The purchase price is a natural number BBB with 0<B0 < B0<B, because Chapter 3 uses BBB simultaneously as a price, as a day index ("buy skis on the BBBth day"), and as the exponent in (1+1/B)B(1+1/B)^B(1+1/B)B; costs are real numbers, with BBB and kkk coerced. Days are indexed from 000, so day j+1j+1j+1 of the prose is index jjj, and Fin k indexes the kkk days. Real division is total, so 1/0=01/0 = 01/0=0; the hypothesis 0<B0 < B0<B is what keeps every reciprocal in the development genuine, and without it ccc would evaluate to 000 and the recurrence would collapse to the constant zero sequence. The algorithm's x < 1 guard is part of the formalized definition, not an informal aside: without it the cost would keep growing past day BBB.

A documented discrepancy in the source. The prose on p. 17 relaxes the integer program by letting xxx and each zjz_jzj​ range over [0,1][0,1][0,1]; Figure 3.1 on p. 18 prints only x≥0x \ge 0x≥0, zj≥0z_j \ge 0zj​≥0. This mission takes the prose version, 0≤x≤10 \le x \le 10≤x≤1 and 0≤zj≤10 \le z_j \le 10≤zj​≤1, as the canonical fractional program, and also records the nonnegativity-only region exactly as printed. Two separate theorems establish that both have least value min⁡(B,k)\min(B,k)min(B,k), so the discrepancy is resolved inside the mission rather than silently chosen. Solvers should note which of the two predicates a given statement uses.

Ruling out a trivializing formalization. The offline optimum is defined independently, as min⁡(B,k)\min(B,k)min(B,k), and is not derived from the algorithm's own behaviour; a separate theorem certifies that this value really is the least attainable objective value of the canonical program, so the goal cannot be satisfied by redefining the benchmark. The goal inequality is also tight — both sides are equal to (1+1/c)(1+1/c)(1+1/c) times the number of days on which x<1x < 1x<1 — so it cannot be weakened into vacuity without becoming false.

Infrastructure, and what is reusable. The development needs only Mathlib big operators over Fin k, basic real analysis for the limit, and IsLeast. Two items are explicitly infrastructure rather than ski-rental content: the specialized weak-duality theorem for this covering/packing pair, and the Figure 3.1 optimum. Both are candidates for generalization by the later mission on Chapter 2's general linear-programming duality, and a solver who proves the general form there should expect this instance to be derivable from it rather than duplicated.

Out of scope here. The final paragraph of p. 19 rounds the fractional solution into a randomized algorithm by sampling a threshold α∈[0,1]\alpha \in [0,1]α∈[0,1] uniformly and buying on the day whose increment of xxx contains α\alphaα. That step needs a probability space and an expectation argument, and is deferred to the immediate follow-up mission, Primal-Dual Online Algorithms II: Randomized Rounding for Ski Rental. Contributions here should not anticipate it.

Selected references

  • Niv Buchbinder, Designing Competitive Online Algorithms via a Primal-Dual Approach, PhD thesis, Tel Aviv University, 2008. Chapter 3, pp. 17–19. https://www.tau.ac.il/~nivb/download/phd-thsis.pdf
  • Niv Buchbinder and Joseph (Seffi) Naor, The Design of Competitive Online Algorithms via a Primal-Dual Approach, Foundations and Trends in Theoretical Computer Science 3(2–3), 2009. https://doi.org/10.1561/0400000024
  • Anna R. Karlin, Mark S. Manasse, Lyle A. McGeoch and Susan Owicki, Competitive randomized algorithms for nonuniform problems, Algorithmica 11(6), 1994, 542–571. https://doi.org/10.1007/BF01294260
  • Allan Borodin and Ran El-Yaniv, Online Computation and Competitive Analysis, Cambridge University Press, 1998.
9 thms1 active userReviewed
PreviousPage 7 of 7Next

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