Skip to main content

Binary Decision Graph

  • Reference work entry
  • First Online:
Encyclopedia of Algorithms
  • 67 Accesses

Years and Authors of Summarized Original Work

  • 1986; Bryant

Problem Definition

Boolean Functions

The concept of a Boolean function – a function whose domain is {0, 1}n and range is {0, 1} – is central to computing. Boolean functions are used in foundational studies of complexity [7, 9] as well as the design and analysis of logic circuits [4, 13], A Boolean function can be represented using a truth table – an enumeration of the values taken by the function on each element of {0, 1}n. Since the truth table representation requires memory exponential in n, it is impractical for most applications. Consequently, there is a need for data structures and associated algorithms for efficiently representing and manipulating Boolean functions.

Boolean Circuits

Boolean functions can be represented in many ways. One natural representation is a Boolean combinational circuit, or circuit for short [6, Chapter 34]. A circuit consists of Boolean combinational elements connected by wires. The Boolean...

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 1,599.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 1,999.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Recommended Reading

  1. Aziz A, Tasiran S, Brayton R (1994) BDD variable ordering for interacting finite state machines. In: ACM design automation conference, San Diego, pp 283–288

    Google Scholar 

  2. Berman CL (1989) Ordered binary decision diagrams and circuit structure. In: IEEE international conference on computer design, Cambridge

    Book  Google Scholar 

  3. Brace K, Rudell R, Bryant R (1990) Efficient implementation of a BDD package. In: ACM design automation conference, Orlando

    Book  Google Scholar 

  4. Brayton R, Hachtel G, McMullen C, Sangiovanni-Vincentelli A (1984) Logic minimization algorithms for VLSI synthesis. Kluwer Academic, Boston

    Book  MATH  Google Scholar 

  5. Bryant R (1986) Graph-based algorithms for Boolean function manipulation. IEEE Trans Comput C-35:677–691

    Article  MATH  Google Scholar 

  6. Cormen TH, Leiserson CE, Rivest RH, Stein C (2001) Introduction to algorithms. MIT, Cambridge

    MATH  Google Scholar 

  7. Garey MR, Johnson DS (1979) Computers and intractability. W.H. Freeman and Co, New York

    MATH  Google Scholar 

  8. Gupta A (1993) Formal hardware verification methods: a survey. Formal Method Syst Des 1:151–238

    Article  Google Scholar 

  9. Karchmer M (1989) Communication complexity: a new approach to circuit depth. MIT, Cambridge

    Google Scholar 

  10. Kuehlmann A, Krohm F (1997) Equivalence checking using cuts and heaps. In: ACM design automation conference, Anaheim

    Google Scholar 

  11. Malik S, Wang AR, Brayton RK, Sangiovanni-Vincentelli A (1988) Logic verification using binary decision diagrams in a logic synthesis environment. In: IEEE international conference on computer-aided design, Santa Clara, pp 6–9

    Google Scholar 

  12. McMillan KL (1993) Symbolic model checking. Kluwer Academic, Boston

    Book  MATH  Google Scholar 

  13. De Micheli G (1994) Synthesis and optimization of digital circuits. McGraw Hill, New York

    Google Scholar 

  14. Schoning U, Pruim R (1998) Gems of theoretical computer science. Springer, Berlin/New York

    Book  MATH  Google Scholar 

  15. Sipser M (2005) Introduction to the theory of computation, 2nd edn. Course Technology, Boston

    MATH  Google Scholar 

  16. Somenzi F (2012) Colorado University Decision Diagram package. http://vlsi.colorado.edu/~fabio/CUDD

  17. Wegener I (2000) Branching programs and binary decision diagrams. SIAM, Philadelphia

    Book  MATH  Google Scholar 

  18. Yuan J, Pixley C, Aziz A (2006) Constraint-based verification. Springer, New York

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Adnan Aziz .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer Science+Business Media New York

About this entry

Cite this entry

Aziz, A., Prakash, A. (2016). Binary Decision Graph. In: Kao, MY. (eds) Encyclopedia of Algorithms. Springer, New York, NY. https://doi.org/10.1007/978-1-4939-2864-4_48

Download citation

Publish with us

Policies and ethics