Strongly NP-complete

From Wikipedia, the free encyclopedia

In computational complexity, strong NP-completeness is a property of computational problems that is a special case of NP-completeness. A general computational problem may have numerical parameters. For example, the input to the Bin packing problem is a list of objects of specific sizes and a size for the bins that must contain the objects -- these object sizes and bin size are numerical parameters.

A problem is said to be NP-hard or NP-complete in the strong sense (strongly NP-complete or NP-hard), if it remains so even when all of its numerical parameters are bounded by a polynomial in the length of the input.

Normally numerical parameters to a problem are given in binary notation, so a problem of input size n might contain parameters whose size is exponential in n. If we redefine the problem to have the parameters given in unary notation, then the parameters must be bounded by the input size. Thus strong NP-completeness or NP-hardness may also be defined as the NP-completeness or NP-hardness of this unary version of the problem.

For example, Bin packing is strongly NP-complete while the Knapsack problem is only weakly NP-complete. Thus the version of Bin packing where the object and bin sizes are integers bounded by a polynomial remains NP-complete, while the corresponding version of the Knapsack problem can be solved in polynomial time by dynamic programming.

Unless P=NP, there is no fully polynomial-time approximation scheme (or FPTAS) for the strongly NP-complete problems. [1]

[edit] See also

[edit] References

  1. ^ M. R. Garey and D. S. Johnson. Computers and Intractability: a Guide to the Theory of NP-Completeness. W.H. Freeman, New York, 1979.