On the error resilience of ordered binary decision diagrams
An Ordered Binary Decision Diagram (OBDD) is a data structure that is used in an increasing number of fields of Computer Science (e.g., logic synthe- sis, program verification, data mining, bioinformatics, and data protection) for representing and manipulating discrete structures and Boolean functio...
Published in: | Theoretical Computer Science |
---|---|
Main Authors: | , , |
Other Authors: | |
Format: | Article in Journal/Newspaper |
Language: | English |
Published: |
2015
|
Subjects: | |
Online Access: | http://hdl.handle.net/11568/750039 https://doi.org/10.1016/j.tcs.2015.05.050 http://www.sciencedirect.com/science/article/pii/S0304397515005149 |
Summary: | An Ordered Binary Decision Diagram (OBDD) is a data structure that is used in an increasing number of fields of Computer Science (e.g., logic synthe- sis, program verification, data mining, bioinformatics, and data protection) for representing and manipulating discrete structures and Boolean functions. The purpose of this paper is to study the error resilience of OBDDs and to design a resilient version of this data structure, i.e., a self-repairing OBDD. In particular, we describe some strategies that make reduced ordered OBDDs resilient to errors in the indices, that are associated to the input variables, or in the pointers (i.e., OBDD edges) of the nodes. These strategies exploit the inherent redundancy of the data structure, as well as the redundancy introduced by its efficient implementations. The solutions we propose allow the exact restoring of the original OBDD and are suitable to be applied to classical software packages for the manipulation of OBDDs currently in use. Another result of the paper is the definition of a new canonical OBDD model, called Index-Resilient Reduced OBDD, which guarantees that a node with a faulty index has a reconstruction cost O(r), where r is the number of nodes with corrupted index. Experimental results on a classical benchmark suite validate the proposed approaches. |
---|