Randomized OBDD-Based Graph Algorithms

  • Marc Bury
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9439)


Implicit graph algorithms deal with the characteristic function χ E of the edge set E of a graph G = (V,E). Encoding the nodes by binary vectors, χ E can be represented by an Ordered Binary Decision Diagram (OBDD) which is a well known data structure for Boolean functions. OBDD-based graph algorithms solve graph optimization problems by mainly using functional operations and are a heuristic approach to cope with massive graphs. These algorithms heavily rely on a compact representation of the underlying Boolean functions which is why all previously known OBDD-based algorithms are deterministic since random functions are not compressible in general. Here, the first randomized OBDD-based algorithms are presented where random functions with limited independence are used to overcome the large representation size. On the theoretical part, the size of OBDDs representing k-wise independent random functions is investigated and a construction of almost k-wise independent random functions by means of a random OBDD generation is shown. On the algorithmic part, randomization often facilitates the design of simple algorithms which in the context of OBDD-based algorithms means a small number of functional operations and as few input variables of the used Boolean functions as possible. This paper presents a maximal matching algorithm with O(log3 ∣ V ∣ ) functional operations in expectation using functions with at most 3 log ∣ V ∣ variables which is both better than the best known algorithms w.r.t. functional operations and variables. The algorithm may be of independent interest. The experimental evaluation shows that this algorithm outperforms known OBDD-based algorithms for the maximal matching problem.


Boolean Function Variable Order Interval Graph Maximal Match Binary Decision Diagram 
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.
    Alon, N., Babai, L., Itai, A.: A fast and simple randomized parallel algorithm for the maximal independent set problem. J. Algorithms 7(4), 567–583 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Alon, N., Goldreich, O., Håstad, J., Peralta, R.: Simple construction of almost k-wise independent random variables. Random Struct. Alg. 3(3), 289–304 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Alon, N., Matias, Y., Szegedy, M.: The space complexity of approximating the frequency moments. J. Comp. and System Sc. 58(1), 137–147 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Awerbuch, B., Goldberg, A.V., Luby, M., Plotkin, S.A.: Network decomposition and locality in distributed computation. In: FOCS, pp. 364–369 (1989)Google Scholar
  5. 5.
    Bloem, R., Gabow, H.N., Somenzi, F.: An algorithm for strongly connected component analysis in nlogn symbolic steps. Formal Meth. in System Design 28(1), 37–56 (2006)CrossRefzbMATHGoogle Scholar
  6. 6.
    Bollig, B.: On symbolic OBDD-based algorithms for the minimum spanning tree problem. Theor. Comput. Sci. 447, 2–12 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Bollig, B., Capelle, M.: Priority functions for the approximation of the metric TSP. Inf. Proc. Letters 113(14-16), 584–591 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Bollig, B., Gillé, M., Pröger, T.: Implicit computation of maximum bipartite matchings by sublinear functional operations. In: Agrawal, M., Cooper, S.B., Li, A. (eds.) TAMC 2012. LNCS, vol. 7287, pp. 473–486. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  9. 9.
    Bollig, B., Löbbing, M., Wegener, I.: On the effect of local changes in the variable ordering of ordered decision diagrams. Inf. Proc. Letters 59(5), 233–239 (1996)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Bollig, B., Pröger, T.: On efficient implicit OBDD-based algorithms for maximal matchings. Inf. Comput. 239, 29–43 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers 35(8), 677–691 (1986)CrossRefzbMATHGoogle Scholar
  12. 12.
    Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: 1020 states and beyond. Inf. and Comp. 98(2), 142–170 (1992)CrossRefzbMATHGoogle Scholar
  13. 13.
    Chor, B., Goldreich, O.: On the power of two-point based sampling. J. Complexity 5(1), 96–106 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Coudert, O.: Doing two-level logic minimization 100 times faster. In: SODA, pp. 112–121 (1995)Google Scholar
  15. 15.
    Davis, T.A., Hu, Y.: The University of Florida Sparse Matrix Collection. ACM Trans. on Math. Soft. 38(1), 1:1–1:25 (2011)Google Scholar
  16. 16.
    Gentilini, R., Piazza, C., Policriti, A.: Computing strongly connected components in a linear number of symbolic steps. In: SODA, pp. 573–582 (2003)Google Scholar
  17. 17.
    Gentilini, R., Piazza, C., Policriti, A.: Symbolic graphs: Linear solutions to connectivity related problems. Algorithmica 50(1), 120–158 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Gillé, M.: OBDD-based representation of interval graphs. In: Brandstädt, A., Jansen, K., Reischuk, R. (eds.) WG 2013. LNCS, vol. 8165, pp. 286–297. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  19. 19.
    Hachtel, G.D., Somenzi, F.: A symbolic algorithms for maximum flow in 0-1 networks. F. Meth. in Sys. Design 10(2/3), 207–219 (1997)CrossRefGoogle Scholar
  20. 20.
    Hojati, R., Touati, H., Kurshan, R.P., Brayton, R.K.: Efficient ω-regular language containment. In: Probst, D.K., von Bochmann, G. (eds.) CAV 1992. LNCS, vol. 663, pp. 396–409. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  21. 21.
    Israeli, A., Itai, A.: A fast and simple randomized parallel algorithm for maximal matching. Inf. Process. Lett. 22(2), 77–80 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Jukna, S.: Entropy of contact circuits and lower bounds on their complexity. Theor. Comput. Sci. 57, 113–129 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Kabanets, V.: Almost k-wise independence and hard Boolean functions. Theor. Comput. Sci. 297(1-3), 281–295 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
  24. 24.
    Lai, Y., Pedram, M., Vrudhula, S.B.K.: EVBDD-based algorithms for integer linear programming, spectral transformation, and function decomposition. IEEE Trans. on CAD of Int. Circuits and Systems 13(8), 959–975 (1994)CrossRefGoogle Scholar
  25. 25.
    Linial, N.: Locality in distributed graph algorithms. SIAM J. Comput. 21(1), 193–201 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Luby, M.: A simple parallel algorithm for the maximal independent set problem. SIAM Journal on Computing 15(4), 1036–1053 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  27. 27.
    Masek, W.: A fast algorithm for the string editing problem and decision graph complexity. Master’s thesis, MIT (1976)Google Scholar
  28. 28.
    Meer, K., Rautenbach, D.: On the OBDD size for graphs of bounded tree- and clique-width. Discrete Mathematics 309(4), 843–851 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    Métivier, Y., Robson, J.M., Saheb-Djahromi, N., Zemmari, A.: An optimal bit complexity randomized distributed MIS algorithm. Distributed Computing 23(5-6), 331–340 (2011)CrossRefzbMATHGoogle Scholar
  30. 30.
    Naor, J., Naor, M.: Small-bias probability spaces: Efficient constructions and applications. SIAM J. Comput. 22(4), 838–856 (1993)MathSciNetCrossRefzbMATHGoogle Scholar
  31. 31.
    Negruseri, C.S., Pasoi, M.B., Stanley, B., Stein, C., Strat, C.G.: Solving maximum flow problems on real world bipartite graphs. In: ALENEX, pp. 14–28 (2009)Google Scholar
  32. 32.
    Nunkesser, R., Woelfel, P.: Representation of graphs by OBDDs. Discrete Applied Mathematics 157(2), 247–261 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  33. 33.
    Savický, P.: Improved Boolean formulas for the Ramsey graphs. Random Struct. Algorithms 6(4), 407–416 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  34. 34.
    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
  35. 35.
    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
  36. 36.
    Sawitzki, D.: Exponential lower bounds on the space complexity of OBDD-based graph algorithms. In: Correa, J.R., Hevia, A., Kiwi, M. (eds.) LATIN 2006. LNCS, vol. 3887, pp. 781–792. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  37. 37.
    Sawitzki, D.: Implicit simulation of FNC algorithms. Electronic Colloquium on Computational Complexity (ECCC) 14(028) (2007)Google Scholar
  38. 38.
    Sieling, D., Wegener, I.: NC-algorithms for operations on binary decision diagrams. Parallel Processing Letters 3, 3–12 (1993)MathSciNetCrossRefGoogle Scholar
  39. 39.
    Wegener, I.: The size of reduced OBDDs and optimal read-once branching programs for almost all Boolean functions. IEEE Trans. on Comp. 43(11), 1262–1269 (1994)CrossRefzbMATHGoogle Scholar
  40. 40.
    Wegener, I.: Branching programs and binary decision diagrams. In: SIAM Monographs on Discrete Mathematics and Applications (2000)Google Scholar
  41. 41.
    Woelfel, P.: Symbolic topological sorting with OBDDs. J. Disc. Alg. 4, 51–71 (2006)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Marc Bury
    • 1
  1. 1.LS2 InformatikTU DortmundDortmundGermany

Personalised recommendations