Upper bounds by adding constraints
The opening example asks for an upper bound on the objective value of every feasible solution to the primal LP.
A nonnegative combination of the three constraints gives a valid upper bound whenever its left-hand-side coefficients dominate the objective coefficients.
When is the certificate valid?
The weights y1, y2, y3 must satisfy two requirements.
x1 + x2 + 2x3 ≤ 12y1 + 10y2 − y3
for every feasible x.
Interactive Build an upper-bound certificate
Move the y-weights to combine constraints. Move x to test a primal solution. The certificate is useful only when y is dual feasible and x is primal feasible.
Constraint weights
checkingClick “Next bound” to replay the certificate improvements from the chapter.
Primal test point
checkingDual feasible region, projected to y₁–y₂
y₃ handled separatelyFor fixed y₁ and y₂, increasing y₃ lowers the bound, but y₃ cannot exceed 3y₁ + 4y₂ − 2. The optimal certificate is (1/3, 1/3, 1/3).
The best certificate is itself an LP
To find the best upper bound obtainable by this method, minimize the bound value subject to the certificate-validity constraints.
Why the inequality is convincing
The dual constraints are exactly the restrictions needed to make the weighted sum of primal constraints dominate the primal objective. Once those conditions hold, the upper bound requires no trust in the simplex pivots that found the solution.
At y = (1/3, 1/3, 1/3), the bound is 7. At x = (1, 4, 1), the primal objective is also 7. Equal lower and upper bounds certify optimality.
A certificate hiding in the final dictionary
The chapter revisits the LP from the simplex handout.
The final dictionary has objective row
The negative coefficients of the slack variables x4, x6, x7 produce the certificate weights y = (3/2, 0, 1, 1/2).
The bound from those weights
The weighted right-hand sides give 6 + 6 + 2 = 14. Since the simplex solution also has objective value 14, optimality follows.
Interactive Check the simplex certificate
Use the sliders to test primal points and dual certificates for the simplex-handout LP. At the optimal pair, every complementary-slackness product is zero and the primal and dual values match.
Primal variables
checkingDual weights
checkingPrimal–dual gap
Complementary slackness check
At optimality, every product yi·slacki and xj·surplusj is zero.
Max-≤ primal and min-≥ dual
Rows become variables; columns become constraints
Each primal constraint receives a dual variable. Each primal variable becomes a dual constraint. The coefficient matrix is transposed.
This is exactly what the certificate argument does: the dual variables are the multipliers used to add the primal constraints.
Interactive Make the dual by transposing the data
Edit the coefficients of a three-constraint, three-variable maximization LP of the form Ax ≤ b, x ≥ 0. The dual updates immediately.
