Quasi-polynomial time

From testwiki
Jump to navigation Jump to search

Template:Short description Template:Distinguish In computational complexity theory and the analysis of algorithms, an algorithm is said to take quasi-polynomial time if its time complexity is quasi-polynomially bounded. That is, there should exist a constant c such that the worst-case running time of the algorithm, on inputs of Template:Nowrap has an upper bound of the form 2O((log⁡n)c).

The decision problems with quasi-polynomial time algorithms are natural candidates for being NP-intermediate, neither having polynomial time nor likely to be NP-hard.

Complexity class

The complexity class QP consists of all problems that have quasi-polynomial time algorithms. It can be defined in terms of DTIME as follows.Template:R

𝖰𝖯=⋃c∈ℕ𝖣𝖳𝖨𝖬𝖤(2(log⁡n)c)

Examples

An early example of a quasi-polynomial time algorithm was the Adleman–Pomerance–Rumely primality test.Template:R However, the problem of testing whether a number is a prime number has subsequently been shown to have a polynomial time algorithm, the AKS primality test.Template:R

In some cases, quasi-polynomial time bounds can be proven to be optimal under the exponential time hypothesis or a related computational hardness assumption. For instance, this is true for the following problems:

  • Finding the largest disjoint subset of a collection of unit disks in the hyperbolic plane can be solved in time nO(log⁡n), and requires time nΩ(log⁡n) under the exponential time hypothesis.Template:R
  • Finding a graph with the fewest vertices that does not appear as an induced subgraph of a given graph can be solved in time nO(log⁡n), and requires time nΩ(log⁡n) under the exponential time hypothesis.Template:R
  • Finding the smallest dominating set in a tournament. This is a subset of the vertices of the tournament that has at least one directed edge to all other vertices. It can be solved in time nO(log⁡n), and requires time nΩ(log⁡n) under the exponential time hypothesis.Template:R
  • Computing the Vapnik–Chervonenkis dimension of a family of sets. This is the size of the largest set S (not necessarily in the family) that is shattered by the family, meaning that each subset of S can be formed by intersecting S with a member of the family. It can be solved in time nO(log⁡n),Template:R and requires time n(log⁡n)1/3−o(1) under the exponential time hypothesis.Template:R

Other problems for which the best known algorithm takes quasi-polynomial time include:

  • The planted clique problem, of determining whether a random graph has been modified by adding edges between all pairs of a subset of its vertices.Template:R
  • Monotone dualization, several equivalent problems of converting logical formulas between conjunctive and disjunctive normal form, listing all minimal hitting sets of a family of sets, or listing all minimal set covers of a family of sets, with time complexity measured in the combined input and output size.Template:R
  • Parity games, involving token-passing along the edges of a colored directed graph.Template:R The paper giving a quasi-polynomial algorithm for these games won the 2021 Nerode Prize.Template:R
  • 3-coloring circle graphs. These are the intersection graphs of chords of a circle. Finding their optimal colorings, in general, is NP-hard, as is testing whether they can be colored with four colors, but colorings with three colors can be found in time nO(log⁡n).Template:R

Problems for which a quasi-polynomial time algorithm has been announced but not fully published include:

In approximation algorithms

Quasi-polynomial time has also been used to study approximation algorithms. In particular, a quasi-polynomial-time approximation scheme (QPTAS) is a variant of a polynomial-time approximation scheme whose running time is quasi-polynomial rather than polynomial. Problems with a QPTAS include minimum-weight triangulation,Template:R finding the maximum clique on the intersection graph of disks,Template:R and determining the probability that a hypergraph becomes disconnected when some of its edges fail with given independent probabilities.Template:R

More strongly, the problem of finding an approximate Nash equilibrium has a QPTAS, but cannot have a PTAS under the exponential time hypothesis.Template:R

References

  1. ↑ Template:Citation Cite error: <ref> tag with name "aks" defined in <references> is not used in prior text.
  2. ↑ Template:Citation Cite error: <ref> tag with name "apr" defined in <references> is not used in prior text.
  3. ↑ Template:Citation Cite error: <ref> tag with name "circle" defined in <references> is not used in prior text.
  4. ↑ Template:Citation Cite error: <ref> tag with name "disk-clique" defined in <references> is not used in prior text.
  5. ↑ Template:Citation Cite error: <ref> tag with name "graphiso" defined in <references> is not used in prior text.
  6. ↑ Template:Citation Cite error: <ref> tag with name "hyperind" defined in <references> is not used in prior text.
  7. ↑ Template:Citation Cite error: <ref> tag with name "missing" defined in <references> is not used in prior text.
  8. ↑ Template:Citation Cite error: <ref> tag with name "mondual" defined in <references> is not used in prior text.
  9. ↑ Template:Citation Cite error: <ref> tag with name "mwt" defined in <references> is not used in prior text.
  10. ↑ Template:Citation Cite error: <ref> tag with name "nash" defined in <references> is not used in prior text.
  11. ↑ Template:Citation Cite error: <ref> tag with name "nerode" defined in <references> is not used in prior text.
  12. ↑ Template:Citation Cite error: <ref> tag with name "parity" defined in <references> is not used in prior text.
  13. ↑ Template:Citation Cite error: <ref> tag with name "planted" defined in <references> is not used in prior text.
  14. ↑ Template:Citation. This paper predates the formulation of the exponential time hypothesis, but proves that a solution to the minimum dominating set in a tournament could be used to solve Boolean satisfiability with m clauses and O(log2m) variables, which requires time exponential in the number of variables according to the exponential time hypothesis. Cite error: <ref> tag with name "tourdom" defined in <references> is not used in prior text.
  15. ↑ Template:Citation Cite error: <ref> tag with name "unknot" defined in <references> is not used in prior text.
  16. ↑ Template:Citation Cite error: <ref> tag with name "unreliability" defined in <references> is not used in prior text.
  17. ↑ Template:Citation Cite error: <ref> tag with name "vcdim" defined in <references> is not used in prior text.
  18. ↑ Template:Citation Cite error: <ref> tag with name "vc-hard" defined in <references> is not used in prior text.
  19. ↑ Template:ComplexityZoo Cite error: <ref> tag with name "zoo" defined in <references> is not used in prior text.