Abstract
In invariant checking two directions of state space traversal are possible: Forward from initial states or backward starting from potential error states. It is not clear in advance, which direction will be computationally easier or will terminate in fewer steps. This paper presents a dynamic approach based on OBDDs for interleaving forward and backward traversal. The approach increases the chance for selecting the shorter direction and at the same time limits the overhead due to redundant computation. Additionally, a second approach using two OBDDs with different variable orders is presented, providing improved completion at the cost of some additional overhead. These approaches result in a dramatic gain in efficiency over unidirectional traversal. For the first time all benchmarks of the VIS-Verilog suite have been finished using a BDD-based method.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bryant, R.E.: Graph-Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers C-35 (1986)
Burch, J.R., Clarke, E.M., Long, D.E.: Symbolic Model Checking with partitioned transition relations. In: Proc. of Int. Conf. on VLSI (1991)
Brayton, R.K., Hachtel, G.D., Sangiovanni-Vincentelli, A.L., Somenzi, F., Aziz, A., Cheng, S., Edwards, S.A., Khatri, S.P., Kukimoto, Y., Pardo, A., Qadeer, S., Ranjan, R.K., Sarwary, S., Shiple, T.R., Swamy, G., Villa, T.: VIS: A System for Verification and Synthesis. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102. Springer, Heidelberg (1996)
Coudert, O., Berthet, C., Madre, J.C.: Verification of Synchronous Machines using Symbolic Execution. In: CAV 1989. LNCS, vol. 407. Springer, Heidelberg (1989)
Cabodi, G., Camurati, P., Quer, S.: Efficient State Space Pruning in Symbolic Backward Traversal. In: Proc. of ICCD (1994)
Cabodi, G., Nocco, S., Quer, S.: Mixing Forward and Backward Traversals in Guided-Prioritized BDD-Based Verification. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, p. 471. Springer, Heidelberg (2002)
Fortune, S., Hopcroft, J., Schmidt, E.: The Complexity of Equivalence and Containment for Free Single Variable Program Schemes. In: Ausiello, G., Böhm, C. (eds.) ICALP 1978. LNCS, vol. 62. Springer, Heidelberg (1978)
Govindaraju, S.G., Dill, D.L.: Verification by approximate forward and backward reachability. In: Proc. ICCAD (1998)
Iwashita, H., Nakata, T.: Forward Model Checking Techniques Oriented to Buggy Designs. In: Proc. ICCAD (1997)
Ranjan, R.K., Aziz, A., Brayton, R.K., Pixley, C., Plessier, B.: Efficient BDD Algorithms for Synthesizing and Verifying Finite State Machines. In: Proc. of Int.Workshop on Logic Synthesis, IWLS 1995 (1995)
Somenzi, F.: CUDD: CU Decision Diagram Package, ftp://vlsi.colorado.edu/pub/
Thomas, D.E., Moorby, P.: The Verilog Hardware Description Language. Kluwer, Dordrecht (1991)
VIS Verilog Benchmarks, http://vlsi.colorado.edu/~vis/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Stangier, C., Sidle, T. (2004). Invariant Checking Combining Forward and Backward Traversal. In: Hu, A.J., Martin, A.K. (eds) Formal Methods in Computer-Aided Design. FMCAD 2004. Lecture Notes in Computer Science, vol 3312. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30494-4_29
Download citation
DOI: https://doi.org/10.1007/978-3-540-30494-4_29
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-23738-9
Online ISBN: 978-3-540-30494-4
eBook Packages: Springer Book Archive