Generalized Reversible Rules
A generalized notion of reversible rules is presented in this paper to perform state reduction in automatic formal verification. The key idea is that some of the transition rules in a design may be invertible, and therefore, they can be used to collapse subgraphs into abstract states, thereby reducing the state explosion problem.
This paper improves upon previous work to achieve the following goals: 1) the definition of reversible rules is simplified so that it is easy to apply the reduction method in practice; 2) the definition is generalized to allow more reduction in the size of the state graph.
The reduction algorithm can be combined with symmetry reduction techniques, for verification of invariants, deadlock-freedom, and stuttering-invariant temporal properties.
KeywordsModel Check State Graph Transition Rule Reduction Algorithm Atomic Proposition
Unable to display preview. Download preview PDF.
- BCM+90._J. R. Burch, E. M. Clarke, K. L. McMillan, D. L. Dill, and L. J. Hwang. Symbolic model checking: 1020 states and beyond. 5th IEEE Symposium on Logic in Computer Science, 1990.Google Scholar
- BWHB86.J. Billing, M. C. Wilbur-Ham, and M. Y. Bearman. Automated protocol verification. Protocol Specification, Testing, and Verification, V, 1986.Google Scholar
- CBM89.Olivier Coudert, Christian Berthet, and Jean Christophe Madre. Verification of synchronous sequential machines based on symbolic execution. Automatic Verification Methods for Finite State Systems, 1989.Google Scholar
- DDHY92.David L. Dill, Andreas J. Drexler, Alan J. Hu, and C. Han Yang. Protocol verification as a hardware design aid. IEEE International Conference on Computer Design: VLSI in Computers and Processors, pages 522–525, 1992.Google Scholar
- Dil95.David L. Dill. Protocols used in class CS355. Stanford University, Spring 1994–1995.Google Scholar
- Eme96.E. Allen Emerson, editor. Formal Methods in System Design, Special Issue on Symmetry in Automatic Verification, volume 9(1/2). Kluwer Academic Publishers, August 1996.Google Scholar
- GL94.Orna Grumberg and David E. Long. Model checking and modular verification. ACM Transaction on Programming Languages and Systems, 16(3):843–871, May 1994.Google Scholar
- GW94.P. Godefroid and P. Wolper. A partial approach to model checking. Information and Computation, 110(2):305–326, May 1994.Google Scholar
- ID93.C. Norris Ip and David L. Dill. Better verification through symmetry. 11th International Symposium on Computer Hardware Description Languages and Their Applications, pages 87–100, April 1993.Google Scholar
- ID96.C. Norris Ip and David L. Dill. State reduction using reversible rules. 33rd Design Automation Conference, pages 564–567, June 1996.Google Scholar
- JJ91.C. Jard and Th. Jeron. Bounded-memory algorithms for verification on-the-fly. 3rd Workshop on Computer-Aided Verification, July 1991.Google Scholar
- Lam83.L. Lamport. What good is temporal logic. Information Processing 83, pages 657–668, 1983.Google Scholar
- LLG+90.Daniel Lenoski, James Laudon, Kourosh Gharachorloo, Anoop Gupta, and John Hennessy. The directory-based cache coherence protocol for the DASH multiprocessor. 17th International Symposium on Computer Architecture, 1990.Google Scholar
- LLG+92.Daniel Lenoski, James Laudon, Kourosh Gharachorloo, Wolf-Dietrich Weber, Anoop Gupta, John Hennessy, Mark Horowitz, and Monica Lam. The Stanford DASH multiprocessor. Computer, 25(3), 1992.Google Scholar
- MCS91.John M. Mellor-Crummey and Michael L. Scott. Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Transactions on Computer Systems, 9(1), 1991.Google Scholar
- MK96.Hillel Miller and Shmuel Katz. Saving space by fully exploiting invisible transitions. 8th International Conference on Computer-Aided Verification, pages 336–347, 1996.Google Scholar
- Pel96.D. Peled. Partial order reduction: Model-checking using representatives. 21st International Symposium on Mathematical Foundations of Computer Science, 1996.Google Scholar
- Pet81.G. L. Peterson. Myths about the mutual exclusion problem. Information Processing Letters, 12(3), 1981.Google Scholar
- Val93.A. Valmari. On-the-fly verification with stubborn sets. 5th International Conference on Computer Aided Verification, pages 397–408, June 1993.Google Scholar
- Wol87.Pierre Wolper. On the relation of programs and computations to models of temporal logic. Colloquium on Temporal Logic in Specification, 1987.Google Scholar
- ZWR+80.Pitro Zafiropulo, Colin H. West, Harry Rudin, D. D. Cowan, and Daniel Brand. Towards analyzing and synthesizing protocols. IEEE Transactions on Communications, 28(4), April 1980.Google Scholar