Jump to content

Computing the permanent

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Twri (talk | contribs) at 21:53, 17 December 2008 (initial text, by cut-and-paste). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

In mathematics, the computation of the permanent of a matrix is a problem more complex than the computation of the determinant of a matrix despite the apparent similarity of the definitions.

While the determinant can be computed in polynomial time by Gaussian elimination, Gaussian elimination cannot be used to compute the permanent.

It turns out that computing the permanent of a 0-1-matrix (a matrix whose entries are 0 or 1) is already #P-complete (proof).[1][2] Thus, if the permanent can be computed in polynomial time by any method, then FP = #P which is an even stronger statement than P =  NP.

When the entries of A are nonnegative, the permanent can be computed approximately in probabilistic polynomial time, up to an error of εM, where M is the value of the permanent and ε > 0 is arbitrary. Because the permanent is random self-reducible, these results hold out even for average-case inputs. [3]

References

  1. ^ Ben-Dor, Amir and Halevi, Shai. (1993). "Zero-one permanent is #P-complete, a simpler proof". Proceedings of the 2nd Israel Symposium on the Theory and Computing Systems, 108-117.
  2. ^ Valiant, L.G. (1979). "The complexity of computing the permanent". Theoretical Computer Science 8, 189-201.
  3. ^ Jerrum, Sinclair, and Vigoda. (2001). "A polynomial-time approximation algorithm for the permanent of a matrix with non-negative entries". Theory of Computing, 712-721.