An Efficient Implicit OBDD-Based Algorithm for Maximal Matchings

  • Beate Bollig
  • Tobias Pröger
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7183)


The maximal matching problem, i.e., the computation of a matching that is not a proper subset of another matching, is a fundamental optimization problem and algorithms for maximal matchings have been used as submodules for problems like maximal node-disjoint paths or maximum flow. Since in some applications graphs become larger and larger, a research branch has emerged which is concerned with the design and analysis of implicit algorithms for classical graph problems. Input graphs are given as characteristic Boolean functions of their edge sets and problems have to be solved by functional operations. As OBDDs, which are closely related to deterministic finite automata, are a well-known data structure for Boolean functions, OBDD-based algorithms are used as a heuristic approach to handle very large graphs. Here, an implicit OBDD-based maximal matching algorithm is presented that uses only a polylogarithmic number of functional operations with respect to the number of vertices of the input graph.


Boolean Function Directed Path Directed Edge Boolean Variable Input Graph 
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. 1.
    Bollig, B.: Exponential space complexity for OBDD-based reachability analysis. Information Processing Letters 110, 924–927 (2010)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Bollig, B.: Exponential Space Complexity for Symbolic Maximum Flow Algorithms in 0-1 Networks. In: Hliněný, P., Kučera, A. (eds.) MFCS 2010. LNCS, vol. 6281, pp. 186–197. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  3. 3.
    Bollig, B.: On Symbolic OBDD-Based Algorithms for the Minimum Spanning Tree Problem. In: Wu, W., Daescu, O. (eds.) COCOA 2010, Part II. LNCS, vol. 6509, pp. 16–30. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  4. 4.
    Bollig, B., Pröger, T.: An efficient implicit OBDD-based algorithm for maximal matchings (2011),
  5. 5.
    Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Trans. Computers 35(8), 677–691 (1986)CrossRefzbMATHGoogle Scholar
  6. 6.
    Gentilini, R., Piazza, C., Policriti, A.: Computing strongly connected components in a linear number of symbolic steps. In: Proc. of SODA, pp. 573–582 (2003)Google Scholar
  7. 7.
    Gentilini, R., Piazza, C., Policriti, A.: Symbolic graphs: linear solutions to connectivity related problems. Algorithmica 50(1), 120–158 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Goldberg, A.V., Plotkin, S.K., Vaidya, P.M.: Sublinear time parallel algorithms for matching and related problems. Journal of Algorithms 14(2), 180–213 (1993)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Hachtel, G.D., Somenzi, F.: A symbolic algorithm for maximum flow in 0 − 1 networks. Formal Methods in System Design 10, 207–219 (1997)CrossRefGoogle Scholar
  10. 10.
    Jájá, J.: An introduction to parallel algorithms. Addison-Wesley Publishing Company (1992)Google Scholar
  11. 11.
    Kelsen, P.: An optimal parallel algorithm for maximal matching. Information Processing Letters 52(4), 223–228 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Sawitzki, D.: Implicit Flow Maximization by Iterative Squaring. In: Van Emde Boas, P., Pokorný, J., Bieliková, M., Štuller, J. (eds.) SOFSEM 2004. LNCS, vol. 2932, pp. 301–313. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  13. 13.
    Sawitzki, D.: The Complexity of Problems on Implicitly Represented Inputs. In: Wiedermann, J., Tel, G., Pokorný, J., Bieliková, M., Štuller, J. (eds.) SOFSEM 2006. LNCS, vol. 3831, pp. 471–482. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  14. 14.
    Sawitzki, D.: Implicit simulation of FNC algorithms. Tech. Rep. TR07-028, ECCC Report (2007)Google Scholar
  15. 15.
    Wegener, I.: Branching programs and binary decision diagrams: theory and applications. SIAM (2000)Google Scholar
  16. 16.
    Woelfel, P.: Symbolic topological sorting with OBDDs. J. Discrete Algorithms 4(1), 51–71 (2006)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Beate Bollig
    • 1
  • Tobias Pröger
    • 2
  1. 1.LS2 InformatikTU DortmundGermany
  2. 2.Institut für Theoretische InformatikETH ZürichSwitzerland

Personalised recommendations