Advertisement

Formal Methods in System Design

, Volume 18, Issue 2, pp 97–116 | Cite as

Partial-Order Reduction in Symbolic State-Space Exploration

  • R. Alur
  • R.K. Brayton
  • T.A. Henzinger
  • S. Qadeer
  • S.K. Rajamani
Article

Abstract

State-space explosion is a fundamental obstacle in the formal verification of designs and protocols. Several techniques for combating this problem have emerged in the past few years, among which two are significant: partial-order reduction and symbolic state-space search. In asynchronous systems, interleavings of independent concurrent events are equivalent, and only a representative interleaving needs to be explored to verify local properties. Partial-order methods exploit this redundancy and visit only a subset of the reachable states. Symbolic techniques, on the other hand, capture the transition relation of a system and the set of reachable states as boolean functions. In many cases, these functions can be represented compactly using binary decision diagrams (BDDs). Traditionally, the two techniques have been practiced by two different schools—partial-order methods with enumerative depth-first search for the analysis of asynchronous network protocols, and symbolic breadth-first search for the analysis of synchronous hardware designs. We combine both approaches and develop a method for using partial-order reduction techniques in symbolic BDD-based invariant checking. We present theoretical results to prove the correctness of the method, and experimental results to demonstrate its efficacy.

hardware verification software verification partial-order reduction symbolic model checking binary decision diagrams 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    R. Alur and T.A. Henzinger, “Reactive modules,” in Proceedings of the 11th Annual Symposium on Logic in Computer Science, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 207–218.Google Scholar
  2. 2.
    J.R. Burch, E.M. Clarke, and D.E. Long, “Symbolic model checking with partitioned transition relations,” in DAC 91: Design Automation Conference, 1991, pp. 403–407.Google Scholar
  3. 3.
    J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang, “Symbolic model checking: 1020 states and beyond,” Information and Computation, Vol. 98, No. 2, pp. 142–170, 1992.Google Scholar
  4. 4.
    R.K. Brayton, G.D. Hachtel, A.L. Sangiovanni-Vincentelli, F. Somenzi, A. Aziz, S.-T. Cheng, S. Edwards, S. Khatri, Y. Kukimoto, A. Pardo, S. Qadeer, R.K. Ranjan, S. Sarwary, T.R. Shiple, G.M. Swamy, and T. Villa, “VIS:Asystem for verification and synthesis,” in R. Alur and T.A. Henzinger (Eds.), CAV 96: Computer Aided Verification. Lecture Notes in Computer Science, Vol. 1102, Springer-Verlag, Berlin, 1996, pp. 428–432.Google Scholar
  5. 5.
    C.-T. Chou and D.A. Peled, “Formal verification of a partial-order reduction technique for model checking,” in TACAS 96: Tools and Algorithms for the Construction and Analysis of Systems. Lecture Notes in Computer Science, Vol. 1055, Springer-Verlag, Berlin, 1996, pp. 241–257.Google Scholar
  6. 6.
    D. Dolev, M. Klawe, and M. Rodeh, “An O (n log n) unidirectional distributed algorithm for extrema finding in a circle,” Journal of Algorithms, Vol. 3, 1982, pp. 245–260.Google Scholar
  7. 7.
    P. Godefroid, Partial-Order Methods for the Verification of Concurrent Systems: An Approach to the State-Explosion Problem. Lecture Notes in Computer Science, Vol. 1032, Springer-Verlag, Berlin, 1996.Google Scholar
  8. 8.
    P. Godefroid and P. Wolper, “A partial approach to model checking,” Information and Computation, Vol. 110, No. 2, pp. 305–326, 1994.Google Scholar
  9. 9.
    G.J. Holzmann and D.A. Peled, “An improvement in formal verification,” in Proc. of the 7th International Conference on Formal Description Techniques, Chapman & Hall, London, 1994, pp. 197–211.Google Scholar
  10. 10.
    T. Kam, T. Villa, R.K. Brayton, and A.L. Sangiovanni-Vincentelli, Multi-valued decision diagrams: theory and applications. International Journal on Multiple-Valued Logic, Vol. 4, No. 1/2, pp. 9–62, 1998.Google Scholar
  11. 11.
    A. Mazurkiewicz, “Basic notions of trace theory,” in J.W. de Bakker, W.-P. de Roever, and G. Rozenberg (Eds.), Linear Time, Branching Time, and Partial Order in Logics and Models for Concurrency. Lecture Notes in Computer Science, Vol. 354, Springer-Verlag, Berlin, 1989, pp. 285–363.Google Scholar
  12. 12.
    K.L. McMillan, Symbolic Model Checking: An Approach to the State-Explosion Problem. Kluwer Academic Publishers, Dordrecht, 1993.Google Scholar
  13. 13.
    D. Peled, “All from one, one for all: On model checking using representatives,” in C. Courcoubetis (Ed.), CAV 93: Computer Aided Verification. Lecture Notes in Computer Science, Vol. 697, Springer-Verlag, Berlin, 1993, pp. 409–423.Google Scholar
  14. 14.
    R.K. Ranjan, A. Aziz, B. Plessier, C. Pixley, and R.K. Brayton, “Efficient formal design verification: Data structures + algorithms,” in Workshop Notes of the International Workshop on Logic Synthesis, 1995.Google Scholar
  15. 15.
    Thomas R. Shiple, Ramin Hojati, Alberto L. Sangiovanni-Vincentelli, and Robert K. Brayton, “Heuristic minimization of BDDs using don't cares,” in DAC 94: Design Automation Conference, 1994, pp. 225–231.Google Scholar
  16. 16.
    A. Valmari, “Astubborn attack on state explosion,” in R.P. Kurshan and E.M. Clarke (Eds.), CAV 90: Computer Aided Verification. Lecture Notes in Computer Science, Vol. 531, Springer-Verlag, Berlin, 1990, pp. 25–42.Google Scholar

Copyright information

© Kluwer Academic Publishers 2001

Authors and Affiliations

  • R. Alur
    • 1
  • R.K. Brayton
    • 2
  • T.A. Henzinger
    • 3
  • S. Qadeer
    • 4
  • S.K. Rajamani
    • 5
  1. 1.Department of Computer and Information ScienceUniversity of PennsylvaniaPhiladelphiaUSA
  2. 2.Department of Electrical Engineering and Computer SciencesUniversity of California at BerkeleyUSA
  3. 3.Department of Electrical Engineering and Computer SciencesUniversity of California at BerkeleyUSA
  4. 4.Department of Electrical Engineering and Computer SciencesUniversity of California at BerkeleyUSA
  5. 5.Department of Electrical Engineering and Computer SciencesUniversity of California at BerkeleyUSA

Personalised recommendations