Function used in computational complexity theory
In computational complexity theory, a pseudo-polynomial transformation is a function which maps instances of one strongly NP-complete problem into another and is computable in pseudo-polynomial time.
Definitions
Maximal numerical parameter
Some computational problems are parameterized by numbers whose magnitude exponentially exceed size of the input. For example, the problem of testing whether a number n is prime can be solved by naively checking candidate factors from 2 to
in
divisions, therefore exponentially more than the input size
. Suppose that
is an encoding of a computational problem
over alphabet
, then

is a function that maps
, being the encoding of an instance
of the problem
, to the maximal numerical parameter of
.
Suppose that
and
are decision problems,
and
are their encodings over correspondingly
and
alphabets.
A pseudo-polynomial transformation from
to
is a function
such that

can be computed in time polynomial in two variables
and 
![{\displaystyle \exists Q_{A}\in \mathbb {N} [X]\quad \forall w\in \Sigma _{1}\quad |w|\leq Q_{A}(|f(w)|)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/cc1b7ba4de0cacca094ad5eda8aff9f4e00126b1)
![{\displaystyle \exists Q_{B}\in \mathbb {N} [X,Y]\quad \forall w\in \Sigma _{1}\quad \operatorname {Num} _{\Pi _{2}}(f(w))\leq Q_{B}(\operatorname {Num} _{\Pi _{1}}(w),|w|)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/80af1b4f5a4163f7be52b806ccac6b9bf546903e)
Intuitively, (1) allows one to reason about instances of
in terms of instances of
(and back), (2) ensures that deciding
using the transformation and a pseudo-polynomial decider for
is pseudo-polynomial itself, (3) enforces that
grows fast enough so that
must have a pseudo-polynomial decider, and (4) enforces that a subproblem of
that testifies its strong NP-completeness (i.e. all instances have numerical parameters bounded by a polynomial in input size and the subproblem is NP-complete itself) is mapped to a subproblem of
whose instances also have numerical parameters bounded by a polynomial in input size.
Proving strong NP-completeness
The following lemma allows to derive strong NP-completeness from existence of a transformation:
- If
is a strongly NP-complete decision problem,
is a decision problem in NP, and there exists a pseudo-polynomial transformation from
to
, then
is strongly NP-complete
Proof of the lemma
Suppose that
is a strongly NP-complete decision problem encoded by
over
alphabet and
is a decision problem in NP encoded by
over
alphabet.
Let
be a pseudo-polynomial transformation from
to
with
,
as specified in the definition.
From the definition of strong NP-completeness there exists a polynomial
such that
is NP-complete.
For
and any
there is
![{\displaystyle {\begin{aligned}\operatorname {Num} _{\Pi _{2}}(f(w))&\leq Q_{B}(\operatorname {Num} _{\Pi _{1}}(w),|w|)&&{\text{(definition of }}f{\text{)}}\\[4pt]&\leq Q_{B}(P(w),|w|)&&{\text{(property of }}L_{1/P}{\text{)}}\\[4pt]&\leq Q_{B}(P(Q_{A}(|f(w)|)),Q_{A}(|f(w)|))&&{\text{(definition of }}f{\text{)}}\\[4pt]&\leq {\widehat {P}}(|f(w)|)&&{\text{(definition of }}{\widehat {P}}{\text{)}}\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/86dcfb38bbeb30d37f9bfd628dc8af25cb9efc9c)
Therefore,

Since
is NP-complete and
is computable in polynomial time,
is NP-complete.
From this and the definition of strong NP-completeness it follows that
is strongly NP-complete.
References