The Polynomially Bounded Perfect Matching Problem Is in NC2

  • Manindra Agrawal
  • Thanh Minh Hoang
  • Thomas Thierauf
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4393)


The perfect matching problem is known to be in P, in randomized NC, and it is hard for NL. Whether the perfect matching problem is in NC is one of the most prominent open questions in complexity theory regarding parallel computations.

Grigoriev and Karpinski [GK87] studied the perfect matching problem for bipartite graphs with polynomially bounded permanent. They showed that for such bipartite graphs the problem of deciding the existence of a perfect matchings is in NC 2, and counting and enumerating all perfect matchings is in NC 3. For general graphs with a polynomially bounded number of perfect matchings, they show both problems to be in NC 3.

In this paper we extend and improve these results. We show that for any graph that has a polynomially bounded number of perfect matchings, we can construct all perfect matchings in NC 2. We extend the result to weighted graphs.


Bipartite Graph Perfect Match Weighted Graph Chordal Graph Counting Problem 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [ABO99]
    Allender, E., Beals, R., Ogihara, M.: The complexity of matrix rank and feasible systems of linear equations. Computational Complexity 8, 99–126 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  2. [ARZ99]
    Allender, E., Reinhardt, K., Zhou, S.: Isolating, matching, and counting: uniform and nonuniform upper bounds. Journal of Computer and System Sciences 59, 164–181 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  3. [Ber84]
    Berkowitz, S.: On computing the determinant in small parallel time using a small number of processors. Information Processing Letters 18, 147–150 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  4. [CDL01]
    Chiu, A., Davida, G., Litow, B.: Division in logspace-uniform NC 1. RAIRO Theoretical Informatics and Applications 35, 259–276 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  5. [Coo85]
    Cook, S.: A taxonomy of problems with fast parallel algorithms. Information and Control 64, 2–22 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  6. [Dam91]
    Damm, C.: DET = L(#L). Technical Report Informatik-Preprint 8, Fachbereich Informatik der Humboldt-Universität zu Berlin (1991)Google Scholar
  7. [DHK93]
    Dahlhaus, E., Hajnal, P., Karpinski, M.: On the parallel complexity of hamiltonian cycles and matching problem in dense graphs. Journal of Algorithms 15, 367–384 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  8. [DK86]
    Dahlhaus, E., Karpinski, M.: The matching problem for strongly chordal graphs is in NC. Technical Report 855-CS, University of Bonn (1986)Google Scholar
  9. [Edm65]
    Edmonds, J.: Maximum matching and a polyhedron with 0-1 vertices. Journal of Research National Bureau of Standards 69, 125–130 (1965)zbMATHMathSciNetGoogle Scholar
  10. [GK87]
    Grigoriev, D., Karpinski, M.: The matching problem for bipartite graphs with polynomially bounded permanent is in NC. In: 28th Annual IEEE Symposium on Foundations of Computer Science (FOCS), pp. 166–172. IEEE Computer Society Press, Los Alamitos (1987)Google Scholar
  11. [HMT06]
    Hoang, T.M., Mahajan, M., Thierauf, T.: On the Bipartite Unique Perfect Matching Problem. In: Bugliesi, M., et al. (eds.) ICALP 2006. LNCS, vol. 4051, pp. 453–464. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. [Kas67]
    Kastelyn, P.W.: Graph theory and crystal physics. In: Harary, F. (ed.) Graph Theory and Theoretical Physics, pp. 43–110. Academic Press, London (1967)Google Scholar
  13. [KR98]
    Karpinski, M., Rytter, W.: Fast Parallel Algorithms for Graph Matching Problems. Oxford University Press, Oxford (1998)zbMATHGoogle Scholar
  14. [LPV81]
    Lev, G., Pippenger, M., Valiant, L.: A fast parallel algorithm for routing in permutation networks. IEEE Transactions on Computers 30, 93–100 (1981)zbMATHMathSciNetGoogle Scholar
  15. [MSV99]
    Mahajan, M., Subramanya, P., Vinay, V.: A combinatorial algorithm for pfaffians. In: Asano, T., et al. (eds.) COCOON 1999. LNCS, vol. 1627, pp. 134–143. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  16. [MVV87]
    Mulmuley, K., Vazirani, U., Vazirani, V.: Matching is as easy as matrix inversion. In: 19th ACM Symposium on Theory of Computing, pp. 345–354. ACM Press, New York (1987)Google Scholar
  17. [Tod91]
    Toda, S.: Counting problems computationally equivalent to the determinant. Technical Report CSIM 91-07, Dept. of Computer Science and Information Mathematics, University of Electro-Communications, Chofu-shi, Tokyo 182, Japan (1991)Google Scholar
  18. [Val92]
    Valiant, L.: Why is boolean complexity theory difficult. In: Paterson, M.S. (ed.) Boolean Function Complexity. London Mathematical Society Lecture Notes Series, vol. 169, Cambridge University Press, Cambridge (1992)Google Scholar
  19. [Vaz89]
    Vazirani, V.: NC algorithms for computing the number of perfect matchings in K 3,3-free graphs and related problems. Information and computation 80(2), 152–164 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  20. [Vin91]
    Vinay, V.: Counting auxiliary pushdown automata and semi-unbounded arithmetic circuits. In: 6th IEEE Conference on Structure in Complexity Theory, pp. 270–284. IEEE Computer Society Press, Los Alamitos (1991)CrossRefGoogle Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Manindra Agrawal
    • 1
  • Thanh Minh Hoang
    • 2
  • Thomas Thierauf
    • 3
  1. 1.IIT KanpurIndia
  2. 2.Ulm UniversityGermany
  3. 3.Aalen UniversityGermany

Personalised recommendations