Definition
Gap-Preserving Reduction
A gap-preserving reduction is a polynomial-time instance map that sends the two promised optimum ranges of a source optimisation problem into two separated optimum ranges of a target problem .
Fix positive threshold functions and factor functions . The thresholds must be computable and comparable in polynomial time. Write .
Minimisation to maximisation
With and , require, for every ,
Factors are evaluated at their respective instance sizes. A nontrivial multiplicative gap has on the minimisation side and on the maximisation side.
What Is Preserved?
Think of the source task as distinguishing two kinds of instance: those with a small optimum and those with a much larger optimum. The reduction lets us make this distinction by examining a different optimisation problem instead.
Follow the two cases separately
Use the concrete thresholds , , , and . Thus and .
The same polynomial-time procedure transforms every source instance into a target instance . It does not first compute or decide which case holds. Instead, we prove that its outputs satisfy these conditional guarantees:
- Whenever , the output has .
- Whenever , the output has .
The reduction preserves which promised case holds, not the numerical value of the optimum or the numerical width of the gap. The source’s low-optimum case becomes the target’s high-optimum case because the objective changes from minimisation to maximisation. “Yes” labels the chosen case; it does not mean the same inequality direction in both problems.
If , neither premise holds. The definition places no extra optimum requirement on in this intermediate range. The reduction must still run and produce a valid target instance.
Unlike a L-reduction, this definition does not require a backward conversion of arbitrary feasible solutions. To transfer gap hardness, the target algorithm’s returned value can be enough to distinguish the two source cases.
Other Objective Directions
For each source and target, choose the corresponding pair of ranges:
| Objective | Yes range | No range |
|---|---|---|
| Minimise | , with | |
| Maximise | , with |
A gap-preserving reduction maps the source yes range into the target yes range and the source no range into the target no range. This specifies minimisation-to-minimisation, maximisation-to-maximisation, and maximisation-to-minimisation without changing the underlying idea.
Transferring the Ability to Distinguish
For the minimisation-to-maximisation case, suppose a target algorithm guarantees a feasible value .
Source yes-instance
If , preservation gives . Therefore
Source no-instance
If , preservation gives . Feasibility gives
Thus testing distinguishes the source’s two promised cases. This becomes an NP-hardness result only when distinguishing those source cases is already NP-hard—for example, through a gap-introducing reduction. The existence of alone does not establish hardness.
The gap keeps approximate answers distinguishable
Continue with and . We cannot necessarily compute the target optimum , but we can inspect the value of the solution returned by a hypothetical -approximation.
In the yes-case, the guarantee gives . In the no-case, even an optimal solution has value below , so every feasible output satisfies .
We only use this test on source instances satisfying one of the two promises. An input in the intermediate source range need not be classified meaningfully. The numerical thresholds illustrate the mechanism, not a construction between particular optimisation problems.
Composition
The composition theorem combines a SAT-to- gap-introducing reduction with a compatible -to- gap-preserving reduction. The source thresholds must match: the first reduction must output instances in the ranges that the second reduction promises to preserve.
Example
Different gaps can encode the same two answers
Suppose the source minimisation promise is or . A gap-preserving map could guarantee target maximisation optima or , respectively. Here and .
A target -approximation returns at least on source yes-instances; every feasible target value is below on source no-instances. Comparing the returned value with distinguishes the source cases.
If , neither source promise holds. The definition does not say on which side of the target algorithm’s output must fall. These numerical thresholds illustrate the guarantees; they do not construct a reduction between particular problems.