×

The complexity of counting stable marriages. (English) Zbl 0611.68015

In an instance of size n of the stable marriage problem, each of n men and n women ranks the members of the opposite sex in order to preference. A stable matching is a complete matching of men and women such that no man and woman who are not partners both prefer each other to their actual partners under the matching. It is well known that the least one stable matching exists for every stable marriage instance, so that the decision version of the problem always has a ”yes” answer. Furthermore, efficient algorithms are known for the determination of such a stable matching, so that the search version of the problem is polynomially solvable. However, by exploring the structure of the set of stable matchings for any particular instance of the problem, and exploiting its relationship with the set of antichains of an associated partially ordered set, we prove that the enumeration version of the problem - determining the number of stable matchings - is #P-complete, and therefore cannot be solved in polynomial time if \(P\neq NP\).

MSC:

68Q25 Analysis of algorithms and problem complexity
05A05 Permutations, words, matrices
Full Text: DOI

Online Encyclopedia of Integer Sequences:

a(0) = 1, a(1) = 2; thereafter a(n) = 3*a(n-1)^2 - 2*a(n-2)^4.