X-Nico

unusual facts about polynomial time



Conjunctive normal form

3-SAT is NP-complete (like any other k-SAT problem with k>2) while 2-SAT is known to have solutions in polynomial time.


see also

András Frank

Using the LLL-algorithm, Frank, and his student, Éva Tardos developed a general method, which could transform some polynomial time algorithms into strongly polynomial.

Co-NP

The AKS primality test, published in 2002, proves that primality testing also lies in P, while factorization may or may not have a polynomial-time algorithm.

Complexity of constraint satisfaction

More precisely, the problem is polynomial-time if the graph is 2-colorable, that is, it is bipartite, and is NP-complete otherwise.

Context-free language

Efficient polynomial-time algorithms for the membership problem are the CYK algorithm and Earley's Algorithm.

Decision problem

However, this reduction is more liberal than the standard reduction used in computational complexity (sometimes called polynomial-time many-one reduction); for example, the complexity of the characteristic functions of an NP-complete problem and its co-NP-complete complement is exactly the same even though the underlying decision problems may not be considered equivalent in some typical models of computation.

FKT algorithm

The FKT algorithm, named after Fisher, Kasteleyn, and Temperley, counts the number of perfect matchings in a planar graph in polynomial time.

Full configuration interaction

This is because exact solution of the full CI determinant is NP-complete, so the existence of a polynomial time algorithm is unlikely.

Oracle machine

When a language L is complete for some class B, then AL=AB provided that machines in A can execute reductions used in the completeness definition of class B. In particular, since SAT is NP-complete with respect to polynomial time reductions, PSAT=PNP.

Sharp-P-complete

Jerrum, Valiant, and Vazirani showed that every #P-complete problem either has an FPRAS, or is essentially impossible to approximate; if there is any polynomial-time algorithm which consistently produces an approximation of a #P-complete problem which is within a polynomial ratio in the size of the input of the exact answer, then that algorithm can be used to construct an FPRAS.