Jump to content

Pseudo-polynomial transformation: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Mjcz (talk | contribs)
fix style
Mjcz (talk | contribs)
add categories
Line 53: Line 53:
<!-- Inline citations added to your article will automatically display here. See https://en.wikipedia.org/wiki/WP:REFB for instructions on how to add citations. -->
<!-- Inline citations added to your article will automatically display here. See https://en.wikipedia.org/wiki/WP:REFB for instructions on how to add citations. -->
{{reflist}}
{{reflist}}

[[Category:Strongly NP-complete problems]]
[[Category:Complexity classes]]
[[Category:Computational complexity theory]]

Revision as of 17:23, 9 August 2018

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. [1]

Definitons

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 .

Pseudo-polynomial transformation

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

  1. can be computed in time polynomial in two variables and

Intuitively, (1) allows 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

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

  1. ^ Garey, M. R.; Johnson, D. S. (1979). Victor Klee (ed.). Computers and Intractability: A Guide to the Theory of NP-Completeness. A Series of Books in the Mathematical Sciences. San Francisco, Calif.: W. H. Freeman and Co. pp. 101–102. ISBN 0-7167-1045-5. MR 0519066. {{cite book}}: Invalid |ref=harv (help)