computation

Definition

Many-One Reduction (Language Variant)

For languages or problems , we say many-one reduces to (i.e. ) iff there exists a computable total function such that for all :

The function is the reduction (mapping).

Many-One Reduction (Problem Variant)

Let be a function from the set of instances of problem to a set of instances of problem , i.e.:

If we solve for with a decider for problem , then the result for instance already provides the correct result for instance of problem . If so, and are called equivalent. For decision problems and , it means that is a positive instance of iff is a positive instance of

The function must be (efficiently) computable. In the case of a resource constrained on polynomial time, then is called Karp reduction.

Difference to Turing Reduction

Many-one reductions are functional translations: one computable map with . One “single-shot” encoding.