# Algebraic decision diagrams and their applications

@article{Bahar1993AlgebraicDD, title={Algebraic decision diagrams and their applications}, author={R. Iris Bahar and Erica A. Frohm and Charles M. Gaona and Gary D. Hachtel and Enrico Macii and Abelardo Pardo and F. Somenzi}, journal={Proceedings of 1993 International Conference on Computer Aided Design (ICCAD)}, year={1993}, pages={188-191} }

In this paper we present theory and experiments on the algebraic decision diagrams (ADDs). These diagrams extend BDD's by allowing values from an arbitrary finite domain to be associated with the terminal nodes. We present a treatment founded in Boolean algebras and discuss algorithms and results in applications like matrix multiplication and shortest path algorithms. Furthermore, we outline possible applications of ADD's to logic synthesis, formal verification, and testing of digital systems.

## 776 Citations

### Foundations, Applications and Innovations

- Computer Science
- 2002

The properties of this data structure are discussed, its algorithmic behavior is characterized, and some prominent applications are described.

### Hybrid decision diagrams

- Computer Science, MathematicsICCAD
- 1995

An efficient algorithm to implement arithmetic operations efficiently for hybrid decision diagrams for functions that map boolean vectors into the integers and it is proved that for the class of linear expressions, the time complexity of the algorithm is linear in the number of variables.

### Lattice-based Boolean diagrams

- Computer Science2016 21st Asia and South Pacific Design Automation Conference (ASP-DAC)
- 2016

Lattice-based Boolean diagrams are presented, a graphical representation of Boolean functions that is not derived from binary decision diagrams (BDDs), as well as symbolic manipulation algorithms, which proved to be instrumental to the efficient runtime verification of software over distributed multiprocessor systems.

### Timed binary decision diagrams

- Computer ScienceProceedings International Conference on Computer Design VLSI in Computers and Processors
- 1997

Experimental results demonstrate the efficiency of the TBDDs in representing circuits with both functional and timing information, and allow the symbolic manipulation of Boolean functions with timing information.

### Relation Algebras, Matrices, and Multi-valued Decision Diagrams

- Mathematics, Computer ScienceRAMiCS
- 2012

This paper wants to show that splittings do exist in matrix algebras assuming that the underlying algebra of the coefficients provides this operation, and outline an implementation of matrix alagbras using reduced ordered multi-valued decision diagrams.

### DECIDING FIRST-ORDER LOGIC WITH REAL AND INTEGER ADDITION : AN AUTOMATA-BASED APPROACH

- Computer Science
- 2005

This thesis analyzes an automata-based approach to decide first-order logic with real and integer addition using a variant of Büchi auto mata to represent solutions of formulas in the above mentioned logic.

### Multi-terminal decision diagrams: a data structure for numerical integration

- Computer Science
- 1999

This paper introduces multi-terminal decision diagrams (MTDDs), a generalisation of MTBDDs [15], as a data structure for representing real-valued functions whose arguments are boolean or real…

### Ordered binary decision diagrams

- Computer Science
- 2001

OBDDs are the state-of-the-art data structure for representing switching functions in various branches of electronic design automation.

### A uniform framework for weighted decision diagrams and its implementation

- Computer ScienceInternational Journal on Software Tools for Technology Transfer
- 2008

A generic framework for OBDD variants with weighted edges is introduced and a new multi-valued OBDd-variant, called normalized algebraic decision diagram, is introduced, which supports min/max-operations and turns out to be very useful for, e.g., integer linear programming and model checking probabilistic systems.

### Data Representation and Efficient Solution: A Decision Diagram Approach

- Computer ScienceSFM
- 2007

This work discusses both explicit and symbolic algorithms for state-space generation, CTL model-checking, and continuous-time Markov chain solution for the analysis of large discrete-state models.

## References

SHOWING 1-10 OF 17 REFERENCES

### Verification of Synchronous Sequential Machines Based on Symbolic Execution

- Computer ScienceAutomatic Verification Methods for Finite State Systems
- 1989

An original method to compare two synchronous sequential machines consisting in a breadth first traversal of the product machine during which symbolic expressions of its observable behaviour are computed.

### Implicit state enumeration of finite state machines using BDD's

- Computer Science1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers
- 1990

The method offers a simple notational framework to express the basic operations used in BDD-based state enumeration algorithms in a unified way and a set of techniques that can speed up range computation dramatically, including a variable ordering heuristic and a method based on transition relations.

### Graph-Based Algorithms for Boolean Function Manipulation

- Computer ScienceIEEE Transactions on Computers
- 1986

Experimental results from applying a new data structure for representing Boolean functions and an associated set of manipulation algorithms to problems in logic design verification demonstrate the practicality of this approach.

### Sequential circuit verification using symbolic model checking

- Computer Science27th ACM/IEEE Design Automation Conference
- 1990

The temporal logic model algorithm of E.M. Clarke is modified to represent a state graph using binary decision diagrams (BDDs), which captures some of the regularity in the state space of sequential circuits with data path logic, and it is possible to handle a number of important liveness and fairness properties.

### Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping

- Computer Science30th ACM/IEEE Design Automation Conference
- 1993

This paper shows how to compute concise representations of the Walsh transform for functions with several hundred variables and obtains a speed up of as much as 50% for the matching phase.

### The Design and Analysis of Computer Algorithms

- Computer Science
- 1974

This text introduces the basic data structures and programming techniques often used in efficient algorithms, and covers use of lists, push-down stacks, queues, trees, and graphs.

### ATPG aspects of FSM verification

- Computer Science1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers
- 1990

Algorithms are presented for finite state machine (FSM) verification and image computation which improve on the results of O. Coudert et al (1989), giving 1-4 orders of magnitude speedup. Novel…

### Efficient implementation of a BDD package

- Computer Science27th ACM/IEEE Design Automation Conference
- 1990

A package for manipulating Boolean functions based on the reduced, ordered, binary decision diagram (ROBDD) representation is described, based on an efficient implementation of the if-then-else (ITE) operator.

### Algorithms for Approximate FSM Traversal

- Computer Science30th ACM/IEEE Design Automation Conference
- 1993

Algorithms for approximate FSM traversal based on state space decomposition, based on the exploration of the FSM latch connection graph, and applications to sequential optimization and behavioral verification of FSM's are described.

### A symbolic algorithm for maximum flow in 0-1 networks

- Computer Science, MathematicsProceedings of 1993 International Conference on Computer Aided Design (ICCAD)
- 1993

The main idea is to trace (implicitly) sets of edge-disjoint augmenting paths that are enforced by solving an edge matching problem for each layer of the network with the help of newly defined priority functions.