Results 1  10
of
92
Symbolic Boolean manipulation with ordered binarydecision diagrams
 ACM Computing Surveys
, 1992
"... Ordered BinaryDecision Diagrams (OBDDS) represent Boolean functions as directed acyclic graphs. They form a canonical representation, making testing of functional properties such as satmfiability and equivalence straightforward. A number of operations on Boolean functions can be implemented as grap ..."
Abstract

Cited by 879 (11 self)
 Add to MetaCart
Ordered BinaryDecision Diagrams (OBDDS) represent Boolean functions as directed acyclic graphs. They form a canonical representation, making testing of functional properties such as satmfiability and equivalence straightforward. A number of operations on Boolean functions can be implemented as graph algorithms on OBDD
Symmetry Detection and Dynamic Variable Ordering of Decision Diagrams
, 1996
"... Knowing that some variables are symmetric in a function has numerous applications; in particular, it can help produce better variable orders for Binary Decision Diagrams (BDDs) and related data structures (e.g., Algebraic Decision Diagrams). It has been observed that there often exists an optimum ..."
Abstract

Cited by 54 (2 self)
 Add to MetaCart
Knowing that some variables are symmetric in a function has numerous applications; in particular, it can help produce better variable orders for Binary Decision Diagrams (BDDs) and related data structures (e.g., Algebraic Decision Diagrams). It has been observed that there often exists an optimum order for a BDD wherein symmetric variables are contiguous. We propose a new algorithm for the detection of symmetries, based on dynamic reordering, and we study its interaction with the reordering algorithm itself. We show that combining sifting with an efficient symmetry check for contiguous variables results in the fastest symmetry detection algorithm reported to date and produces better variable orders for many BDDs. The overhead on the sifting algorithm is negligible. 1
The Complexity of the Optimal Variable Ordering Problems of A Shared Binary Decision Diagram
, 1993
"... A binary decision diagram (BDD) is a directed acyclic graph for representing a Boolean function. BDD's are widely used in various areas which require Boolean function manipulation, since BDD's can represent efficiently many of practical Boolean functions and have other desirable properties. However ..."
Abstract

Cited by 46 (1 self)
 Add to MetaCart
A binary decision diagram (BDD) is a directed acyclic graph for representing a Boolean function. BDD's are widely used in various areas which require Boolean function manipulation, since BDD's can represent efficiently many of practical Boolean functions and have other desirable properties. However the complexity of constructing BDD's has hardly been researched theoretically. In this report, we prove that the optimal variable ordering problem of a shared BDD is NPcomplete, and touch on the approximation hardness of this problem and related problems of BDD's. ANY OTHER IDENTIFYING INFORMATION OF THIS REPORT This report is a refined version of the paper which will appear in ISAAC'93. DISTRIBUTION STATEMENT First Issue 50 copies SUPPLEMENTARY NOTES REPORT DATE December, 1993 TOTAL NO. OF PAGES 18 WRITTEN LANGUAGE English NO. OF REFERENCES 9 DEPARTMENT OF INFORMATION SCIENCE Faculty of Science, University of Tokyo 731 Hongo, Bunkyoku Tokyo, 113 Japan The Complexity of the Op...
A performance study of BDDbased model checking
 IN PROCEEDINGS OF THE FORMAL METHODS ON COMPUTERAIDED DESIGN
, 1998
"... We present a study of the computational aspects of model checking based on binary decision diagrams (BDDs). By using a tracebased evaluation framework, we are able to generate realistic benchmarks and perform this evaluation collaboratively across several different BDD packages. This collaboration ..."
Abstract

Cited by 40 (4 self)
 Add to MetaCart
We present a study of the computational aspects of model checking based on binary decision diagrams (BDDs). By using a tracebased evaluation framework, we are able to generate realistic benchmarks and perform this evaluation collaboratively across several different BDD packages. This collaboration has resulted in significant performance improvements and in the discovery of several interesting characteristics of model checking computations. One of the main conclusions of this work is that the BDD computations in model checking and in building BDDs for the outputs of combinational circuits have fundamentally different performance characteristics. The systematic evaluation has also uncovered several open issues that suggest new research directions. We hope that the evaluation methodology used in this study will help lay the foundation for future evaluation of BDDbased algorithms.
Implementation of an efficient parallel BDD package
 In DAC
, 1996
"... Large BDD applications push computing resources to their limits. One solution to overcoming resource limitations is to distribute the BDD data structure across multiple networked workstations. This paper presents an efficient parallel BDD package for a distributed environment such as a network of wo ..."
Abstract

Cited by 39 (0 self)
 Add to MetaCart
Large BDD applications push computing resources to their limits. One solution to overcoming resource limitations is to distribute the BDD data structure across multiple networked workstations. This paper presents an efficient parallel BDD package for a distributed environment such as a network of workstations (NOW) or a distributed memory parallel computer. The implementation exploits a number of different forms of parallelism that can be found in depthfirst algorithms. Significant effort is made to limit the communication overhead, including a twolevel distributed hash table and an uncomputed cache. The package simultaneously executes multiple threads of computation on a distributed BDD. 1.
SIMULATED ANNEALING TO IMPROVE VARIABLE ORDERINGS FOR OBDDs
 IN INT'L WORKSHOP ON LOGIC SYNTH
, 1995
"... The choice of a good variable ordering is crucial in applications of Ordered Binary Decision Diagrams (OBDDs). A simulated annealing approach with a new type of neighborhood is presented and analyzed. Better results as by known simulated annealing algorithms and heuristics are obtained. Some theo ..."
Abstract

Cited by 37 (4 self)
 Add to MetaCart
The choice of a good variable ordering is crucial in applications of Ordered Binary Decision Diagrams (OBDDs). A simulated annealing approach with a new type of neighborhood is presented and analyzed. Better results as by known simulated annealing algorithms and heuristics are obtained. Some theoretical results underlining the experiments are stated.
Faster SAT and Smaller BDDs via Common Function Structure
 University of Michigan
, 2001
"... The increasing popularity of SAT and BDD techniques in verification and synthesis encourages the search for additional speedups. Since typical SAT and BDD algorithms are exponential in the worstcase, the structure of realworld instances is a natural source of improvements. While SAT and BDD techn ..."
Abstract

Cited by 27 (7 self)
 Add to MetaCart
The increasing popularity of SAT and BDD techniques in verification and synthesis encourages the search for additional speedups. Since typical SAT and BDD algorithms are exponential in the worstcase, the structure of realworld instances is a natural source of improvements. While SAT and BDD techniques are often presented as mutually exclusive alternatives, our work points out that both can be improved via the use of the same structural properties of instances. Our proposed methods are based on efficient problem partitioning and can be easily applied as preprocessing with arbitrary SAT solvers and BDD packages without source code modifications. Finding a better variableordering is a well recognized problem for both SAT solvers and BDD packages. Currently, all leading edge variableordering algorithms are dynamic, in the sense that they are invoked many times in the course of the “host ” algorithm that solves SAT or manipulates BDDs. Examples include the DLCS ordering for SAT solvers and variablesifting during BDD manipulations. In this work we propose a universal variableordering MINCE (MIN Cut Etc.) that preprocesses a given Boolean formula in CNF. MINCE is completely independent from target algorithms and outperforms both DLCS for SAT and variable sifting for BDDs. We argue that MINCE tends to capture structural properties of Boolean functions arising from realworld applications. Our contribution is validated on the ISCAS circuits and the DIMACS benchmarks. Empirically, our technique often outperforms existing techniques by a factor of two or more. Our results motivate search for stronger dynamic ordering heuristics and combined static/dynamic techniques. 3 1
Symbolic Protocol Verification with Queue BDDs
 In Proceedings of the 11th IEEE Symposium on Logic in Computer Science
, 1997
"... . Symbolic verification based on Binary Decision Diagrams (BDDs) has proven to be a powerful technique for ensuring the correctness of digital hardware. In contrast, BDDs have not caught on as widely for software verification, partly because the data types used in software are more complicated than ..."
Abstract

Cited by 22 (2 self)
 Add to MetaCart
. Symbolic verification based on Binary Decision Diagrams (BDDs) has proven to be a powerful technique for ensuring the correctness of digital hardware. In contrast, BDDs have not caught on as widely for software verification, partly because the data types used in software are more complicated than those used in hardware. In this work, we propose an extension of BDDs for dealing with dynamic data structures. Specifically, we focus on queues, since they are commonly used in modeling communication protocols. We introduce Queue BDDs (QBDDs), which include all the power of BDDs while also providing an efficient representation of queue contents. Experimental results show that QBDDs are wellsuited for the verification of communication protocols. Keywords: communication protocols, queues, symbolic verification, BDDs, state explosion, statespace exploration, model checking 1. Introduction Binary Decision Diagrams (BDDs) [5] have proven to be a powerful tool for the verification of digital ...
Binary Decision Diagrams
 Calculational System Design, volume 173 of NATO Science Series F: Computer and Systems Sciences
, 1999
"... We review Binary Decision Diagrams presenting the properties and algorithms that are most relevant to their application to the verification of sequential systems. ..."
Abstract

Cited by 22 (0 self)
 Add to MetaCart
We review Binary Decision Diagrams presenting the properties and algorithms that are most relevant to their application to the verification of sequential systems.
On the Existence of Polynomial Time Approximation Schemes for OBDD Minimization
 STACS'98, LNCS 1373
, 1998
"... Abstract The size of Ordered Binary Decision Diagrams (OBDDs) is determined by the chosen variable ordering. A poor choice may cause an OBDD to be too large to fit into the available memory. The decision variant of the variable ordering problem is known to be ¡£¢complete. We strengthen this result ..."
Abstract

Cited by 18 (2 self)
 Add to MetaCart
Abstract The size of Ordered Binary Decision Diagrams (OBDDs) is determined by the chosen variable ordering. A poor choice may cause an OBDD to be too large to fit into the available memory. The decision variant of the variable ordering problem is known to be ¡£¢complete. We strengthen this result by showing that there in no polynomial time approximation scheme for the variable ordering problem unless ¢¥¤¥¡£¢. We also prove a small lower bound on the performance ratio of a polynomial time approximation algorithm under the assumption ¢§ ¦ ¤¥¡£¢