Blockwise variable orderings for shared BDDs

Extended abstract
  • Harry Preuß
  • Anand Srivastav
Contributed Papers Binary Decision Diagrams
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1450)


A state-of-the-art data structure for the representation of Boolean functions are ordered binary decision diagrams (OBDDs). The size of an OBDD representing a Boolean function depends on the variable ordering. Finding a variable ordering with optimal (i.e. minimum) OBDD size is a central, but NP-hard problem. Thus it is of great interest to characterize optimal variable orderings from the structure of the given function. In this paper we investigate the problem of characterizing optimal variable orderings for shared OBDDs of two Boolean functions f i = g i i h i , i = 1,2, where ⊗i is an operator from the base B 2 * , (the full binary basis consisting of all ten binary operations depending essentially on both inputs) and g i (resp. h i) depends only on x-variables (resp. y-variables). Tree-like circuits provide an example for such functions. In the special case f 1 = ¯f 2, Sauerhoff, Wegener and Werchner [6] proved that there is some optimal ordering where all x-variables are tested before all y-variables or vice versa (blockwise variable ordering). We show that this is also true for arbitrary f 1, f 2 provided that ⊗1 = ∧ and ⊗2 = ∀, and for shared OBDDs with complemented edges and arbitrary f1, f2 provided that ⊗1 = ∧ and ⊗2 = ⊕. For all other combinations of ⊗1 und ⊗2 we give counterexamples.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    B. Bollig, I. Wegener: Improving the variable ordering of OBDDs is NP-complete. IEEE Transactions on Computers 45, pages 993–1002, 1996MATHCrossRefGoogle Scholar
  2. 2.
    R. E. Bryant: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers, vol. C-35(8), pages 677–691, 1986.Google Scholar
  3. 3.
    R. E. Bryant: Symbolic Boolean manipulation with ordered binary decision diagrams. ACM Computing Surveys, vol. 24, pages 293–318, 1992.CrossRefGoogle Scholar
  4. 4.
    S. J. Friedman, K. J. Supowit: Finding the optimal variable ordering for binary decision diagrams. IEEE Trans. on Computers 39, pages 710–713, 1990.MathSciNetCrossRefGoogle Scholar
  5. 5.
    S. Minato, N. Ishiura, S. Yajima: Shared binary decision diagrams with attributed edges for efficient Boolean function manipulation. Design Automation Conference, pages 52–57, 1990.Google Scholar
  6. 6.
    M. Sauerhoff, I. Wegener, R. Werchner: Optimal ordered binary decision diagrams for fanout-free circuits. Proc. of SASIMI 1996.Google Scholar
  7. 7.
    M. Sauerhoff, I. Wegener, R. Werchner: Optimal ordered binary decision diagrams for tree-like circuits. Forschungsbericht Nr. 613, Universität Dortmund 1996.Google Scholar
  8. 8.
    D. Sieling, I. Wegener: NC-algorithms for operations on binary decision diagrams. Parallel Processing Letters, vol. 3, pages 3–12, 1993MATHMathSciNetCrossRefGoogle Scholar
  9. 9.
    S. Tani, K. Hamaguchi, S. Yajima: The complexity of the optimal variable ordering problems of a shared binary decision diagram. Proc. 4th Int. Symp. on Algorithms and Computation ISAAC, Lecture Notes in Computer Science 762, pages 389–398, 1993.MATHMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Harry Preuß
    • 1
  • Anand Srivastav
    • 2
  1. 1.Institut für InformatikHumboldt-Universität zu BerlinBerlinGermany
  2. 2.Mathematisches SeminarUniversität zu KielKielGermany

Personalised recommendations