Formal Methods in System Design

, Volume 10, Issue 2, pp 149–169

Multi-Terminal Binary Decision Diagrams: An Efficient Data Structure for Matrix Representation

  • M. Fujita
  • P.C. McGeer
  • J.C.-Y. Yang

DOI: 10.1023/A:1008647823331

Cite this article as:
Fujita, M., McGeer, P. & Yang, JY. Formal Methods in System Design (1997) 10: 149. doi:10.1023/A:1008647823331


In this paper, we discuss the use of binary decision diagrams to represent general matrices. We demonstrate that binary decision diagrams are an efficient representation for every special-case matrix in common use, notably sparse matrices. In particular, we demonstrate that for any matrix, the BDD representation can be no larger than the corresponding sparse-matrix representation. Further, the BDD representation is often smaller than any other conventional special-case representation: for the n×n Walsh matrix, for example, the BDD representation is of size O(log n). No other special-case representation in common use represents this matrix in space less than O(n2). We describe termwise, row, column, block, and diagonal selection over these matrices, standard an Strassen matrix multiplication, and LU factorization. We demonstrate that the complexity of each of these operations over the BDD representation is no greater than that over any standard representation. Further, we demonstrate that complete pivoting is no more difficult over these matrices than partial pivoting. Finally, we consider an example, the Walsh Spectrum of a Boolean function.

Binary Decision Diagrams Matrix Algorithms Multi-Terminal BDD's Walsh Transform Spectral 

Copyright information

© Kluwer Academic Publishers 1997

Authors and Affiliations

  • M. Fujita
    • 1
  • P.C. McGeer
    • 2
  • J.C.-Y. Yang
    • 3
    • 4
  1. 1.Fujitsu Laboratories of AmericaSanta Clara
  2. 2.Cadence Berkeley LaboratoriesBerkeley
  3. 3.Center for Integrated SystemsStanford UniversityUSA
  4. 4.YAHOO! IncUSA

Personalised recommendations