# Question 25058: The Slack Equality Representation Preserves Feasibility in Both Directions

[Return to catalogue page 126](https://ocme.evemisslab.com/en/questions/page/126/)

[← Question derivation index](https://ocme.evemisslab.com/en/questions/) · [Original question batch](https://ocme.evemisslab.com/en/practice/batch-20261015-advance-20261114-r06-linear-program-standard-form-foundations/#q-20261015-advance-20261114-r06-linear-program-standard-form-0033)

This teaching derivation has second-context AI mathematical and bilingual semantic review, limited to the model and assumptions stated in this question. It has no human review or new Lean proof and does not promote the original question or MKO to Canonical truth.

R0049-25058 · q-20261015-advance-20261114-r06-linear-program-standard-form-0033



## Original question and givens

Use the one fixed convention maximize c^T*x, subject to A*x≤b and x≥0, with A=[[8, 1], [1, 8]], b=[11, 11], c=[9, 1]. Require a nonempty rectangular exact rational matrix and matching vectors. Coefficients and b may have either sign; variable nonnegativity is a constraint, not an assumption that every supplied point is feasible. Supplied candidate x=[1, 1]. Give (x, Ax, b, slack, x_nonnegative, inequalities_hold, slack_nonnegative, feasible, feasibility_equivalence_holds, objective_value, certificate).


- G001 — Use the one fixed convention maximize c^T*x, subject to A*x≤b and x≥0, with A=[[8, 1], [1, 8]], b=[11, 11], c=[9, 1]. Require a nonempty rectangular exact rational matrix and matching vectors. Coefficients and b may have either sign; variable nonnegativity is a constraint, not an assumption that every supplied point is feasible. Supplied candidate x=[1, 1]. Give (x, Ax, b, slack, x_nonnegative, inequalities_hold, slack_nonnegative, feasible, feasibility_equivalence_holds, objective_value, certificate).





## Definition and scope

Use the original question domain, assumptions and cited MKO definitions. This item has second-context mathematical and bilingual review, with the model, answer and every arithmetic step independently recomputed from the original parameters; the source question remains a candidate.


- [mko-linear-program-standard-form](https://ocme.evemisslab.com/en/mko/mko-linear-program-standard-form/)





## Step-by-step derivation

S001 · impliesBefore

source roles = [lp-standard-slack-conversion]

After

derived = [[x, Ax, b, slack, x_nonnegative, inequalities_hold, slack_nonnegative, feasible, feasibility_equivalence_holds, objective_value, certificate]]

Conditions: none

List the full source field order without JavaScript.LP boundary modes all have6 fields but select different roles from the original mode,not answer shape.

Step identifiers and dependenciesRule: source_ordered_fields_without_JS · Uses: G001





S002 · impliesBefore

source roles = [[[8, 1], [1, 8]], [11, 11], [9, 1]]

After

derived = [2, 2, maximize cTx subject Ax<=b,x>=0, Yes]

Conditions: none

Check rectangular rows and b/c dimensions.This is one declared standard-form convention,not the only textbook convention.A,b,c may have either sign;qualified dimensions do not prove feasibility.

Step identifiers and dependenciesRule: LP_fixed_max_le_nonnegative_signature_NOT_feasibility · Uses: G001, S001





S003 · calculationBefore

LP ORIGINAL constraint row0 product0 := mul(8, 1)

After

LP ORIGINAL constraint row0 product0 = 8

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S002





S004 · calculationBefore

LP ORIGINAL constraint row0 cumulative0 := sum(0, 8)

After

LP ORIGINAL constraint row0 cumulative0 = 8

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S003





S005 · calculationBefore

LP ORIGINAL constraint row0 product1 := mul(1, 1)

After

LP ORIGINAL constraint row0 product1 = 1

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S004





S006 · calculationBefore

LP ORIGINAL constraint row0 cumulative1 := sum(8, 1)

After

LP ORIGINAL constraint row0 cumulative1 = 9

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S005





S007 · calculationBefore

LP ORIGINAL constraint row1 product0 := mul(1, 1)

After

LP ORIGINAL constraint row1 product0 = 1

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S006





S008 · calculationBefore

LP ORIGINAL constraint row1 cumulative0 := sum(0, 1)

After

LP ORIGINAL constraint row1 cumulative0 = 1

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S007





S009 · calculationBefore

LP ORIGINAL constraint row1 product1 := mul(8, 1)

After

LP ORIGINAL constraint row1 product1 = 8

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S008





S010 · calculationBefore

LP ORIGINAL constraint row1 cumulative1 := sum(1, 8)

After

LP ORIGINAL constraint row1 cumulative1 = 9

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S009





S011 · calculationBefore

LP UNIQUE slack row0 := sub(11, 9)

After

LP UNIQUE slack row0 = 2

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S010





S012 · calculationBefore

LP UNIQUE slack row1 := sub(11, 9)

After

LP UNIQUE slack row1 = 2

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S011





S013 · calculationBefore

LP ORIGINAL objective product0 := mul(9, 1)

After

LP ORIGINAL objective product0 = 9

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S012





S014 · calculationBefore

LP ORIGINAL objective cumulative0 := sum(0, 9)

After

LP ORIGINAL objective cumulative0 = 9

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S013





S015 · calculationBefore

LP ORIGINAL objective product1 := mul(1, 1)

After

LP ORIGINAL objective product1 = 1

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S014





S016 · calculationBefore

LP ORIGINAL objective cumulative1 := sum(9, 1)

After

LP ORIGINAL objective cumulative1 = 10

Conditions: none

Substitute original roles and established intermediates exactly,without rounding or substituting a single observation.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S015





S017 · impliesBefore

source roles = [[1, 1], [9, 9], [11, 11], [2, 2], [9, 1]]

After

derived = [Yes, Yes, Yes, Yes, Yes, 10]

Conditions: none

Each row Ax<=b is equivalent to b−Ax>=0,but x>=0 is a separate conjunct.The maps x->(x,b−Ax) and projection are inverses because Ax+s=b uniquely determines s.Zero slack-objective coefficients preserve cTx.The equivalence flag can be True for an infeasible point;it is not optimality.

Step identifiers and dependenciesRule: LP_ALL_point_checks_and_GENERAL_unique_slack_bijection · Uses: G001, S016









## Reverse checks


- S017 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S016 · premise_and_result_audit — Recompute LP ORIGINAL objective cumulative1 with exact rational arithmetic, not rounded decimals.
- S015 · premise_and_result_audit — Recompute LP ORIGINAL objective product1 with exact rational arithmetic, not rounded decimals.
- S014 · premise_and_result_audit — Recompute LP ORIGINAL objective cumulative0 with exact rational arithmetic, not rounded decimals.
- S013 · premise_and_result_audit — Recompute LP ORIGINAL objective product0 with exact rational arithmetic, not rounded decimals.
- S012 · premise_and_result_audit — Recompute LP UNIQUE slack row1 with exact rational arithmetic, not rounded decimals.
- S011 · premise_and_result_audit — Recompute LP UNIQUE slack row0 with exact rational arithmetic, not rounded decimals.
- S010 · premise_and_result_audit — Recompute LP ORIGINAL constraint row1 cumulative1 with exact rational arithmetic, not rounded decimals.
- S009 · premise_and_result_audit — Recompute LP ORIGINAL constraint row1 product1 with exact rational arithmetic, not rounded decimals.
- S008 · premise_and_result_audit — Recompute LP ORIGINAL constraint row1 cumulative0 with exact rational arithmetic, not rounded decimals.
- S007 · premise_and_result_audit — Recompute LP ORIGINAL constraint row1 product0 with exact rational arithmetic, not rounded decimals.
- S006 · premise_and_result_audit — Recompute LP ORIGINAL constraint row0 cumulative1 with exact rational arithmetic, not rounded decimals.
- S005 · premise_and_result_audit — Recompute LP ORIGINAL constraint row0 product1 with exact rational arithmetic, not rounded decimals.
- S004 · premise_and_result_audit — Recompute LP ORIGINAL constraint row0 cumulative0 with exact rational arithmetic, not rounded decimals.
- S003 · premise_and_result_audit — Recompute LP ORIGINAL constraint row0 product0 with exact rational arithmetic, not rounded decimals.
- S002 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S001 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.





## Result

([1, 1], [9, 9], [11, 11], [2, 2], Yes, Yes, Yes, Yes, Yes, 10, x_maps_to_(x,b-Ax)_and_every_nonnegative_slack_equality_point_maps_back_bijectively)

The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.





## This question review and source binding

Review date: 2026-10-26

Original questions, answers, step expressions, numeric ASTs and historical records are retained. Source candidate labels remain historical and are not overwritten as formal proof.

Source hashes and review receipts
- input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
- original question SHA-256: 782558a1b2e40fefe99217a23f9754cd8d5160b40f8a256a0f2978e8427823ec
- candidate record SHA-256: aec33c7390ccf6c3287874aa762c0493158ae1d8ec4cde57dab5db4fad8822eb
- semantic review receipt SHA-256: 6212b8b0b3b273f3a514e26ebd17d7e81219c56a8f47e40047ee2b6bf01d1ba3
- question-first witness SHA-256: f32a23d5e1b66c7794c60def58741bcdfacff24f3cdfc9bc48109c8f71543cf3
- Lean: NOT_RUN · human review: NOT_PERFORMED

[Same-source full JSON](https://ocme.evemisslab.com/data/question-derivations/questions/q-20261015-advance-20261114-r06-linear-program-standard-form-0033.json)




