0

Suppose we have a bipartite graph with $N$ vertices on either side. In the full bipartite graph, the number of edges is $N^2$ and the number of possible matchings (i.e. assignments) is $N!$.

Now suppose a few known edges ($O(1)$ edges) are missing from the full bipartite graph.

How can we find the number of matchings?

Is there a closed formula?

akhil
  • 11
  • 5

1 Answers1

1

The problem is #P-hard, which means it is believed that there is no efficient algorithm for this problem.

See Counting and finding all perfect/maximum matchings in general graphs and Number of Matchings in a Bipartite.

When the number of missing edges is small, e.g., a fixed constant, there are algorithms whose running time is polynomial in $N$ (but exponential in the number of missing edges), via the inclusion-exclusion principle.

D.W.
  • 167,959
  • 22
  • 232
  • 500