GSTE Is Partitioned Model Checking

  • Roberto Sebastiani
  • Eli Singerman
  • Stefano Tonetta
  • Moshe Y. Vardi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3114)

Abstract

Verifying whether an ω-regular property is satisfied by a finite-state system is a core problem in model checking. Standard techniques build an automaton with the complementary language, compute its product with the system, and then check for emptiness. Generalized symbolic trajectory evaluation (GSTE) has been recently proposed as an alternative approach, extending the computationally efficient symbolic trajectory evaluation (STE) to general ω-regular properties. In this paper, we show that the GSTE algorithms are essentially a partitioned version of standard symbolic model-checking (SMC) algorithms, where the partitioning is driven by the property under verification. We export this technique of property-driven partitioning to SMC and show that it typically does speed up SMC algorithms.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Biere, A., Clarke, E.M., Zhu, Y.: Multiple State and Single State Tableaux for Combining Local and Global Model Checking. Correct System Design, 163–179 (1999)Google Scholar
  2. 2.
    Bloem, R., Gabow, H.N., Somenzi, F.: An algorithm for strongly connected component analysis in nlog n symbolic steps. Formal Methods in Computer Aided Design (2000)Google Scholar
  3. 3.
    Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic Model Mhecking: 1020 States and Beyond. Information and Computation 98(2) (1992)Google Scholar
  4. 4.
    Cabodi, G., Camurati, P., Lavagno, L., Quer, S.: Disjunctive Partitioning and Partial Iterative Squaring: An Effective Approach for Symbolic Traversal of Large Circuits. In: DesignAutomation Conf. (1997)Google Scholar
  5. 5.
    Chou, C.-T.: TheMathematical Foundation of Symbolic Trajectory Evaluation. In: Computer- Aided Verification, Springer, Heidelberg (1999)Google Scholar
  6. 6.
    Cimatti, E.M., Clarke, F.: Giunchiglia, and M. Roveri. NUSMV: a new Symbolic Model Verifier. In: Proc. of the 11th Conf. on Computer-Aided Verification (1999)Google Scholar
  7. 7.
    Cimatti, A., Roveri, M., Bertoli, P.: Searching Powerset Automata by Combining Explicit- State and Symbolic Model Checking. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, p. 313. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  8. 8.
    Clarke, E.M., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-Guided Abstraction Refinement. In: Computer Aided Verification (2000)Google Scholar
  9. 9.
    Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
  10. 10.
    Courcoubetis, C., Vardi, M.Y., Wolper, P., Yannakakis, M.: Memory-Efficient Algorithms for the Verification of Temporal Properties. Formal Methods in System Design 1(2/3) (1992)Google Scholar
  11. 11.
    Daniele, N., Guinchiglia, F., Vardi, M.Y.: Improved automata generation for linear temporal logic. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 249–260. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  12. 12.
    Dijksta, E.W.: Hierarchical ordering of sequential processes, Operating systems techniques. Academic Press, London (1972)Google Scholar
  13. 13.
    Emerson, E.A., Lei, C.L.: Efficient Model Checking in Fragments of the Propositional μ–Calculus. In: Symp. on Logic in Computer Science (1986)Google Scholar
  14. 14.
    Fisler, K., Fraer, R., Kamhi, G., Vardi, M.Y., Yang, Z.: Is there a best symbolic cycledetection algorithm? Tools and algorithms for the construction and analysis of systems (2001)Google Scholar
  15. 15.
    Fritz, C.: Constructing Büchi Automata from Linear Temporal Logic Using Simulation Relations for Alternating Büchi Automata. In: Implementation and Application of Automata (2003)Google Scholar
  16. 16.
    Gerth, R., Peled, D., Vardi, M., Wolper, P.: Simple on-the-fly automatic verification of linear temporal logic. Protocol Specification, Testing and Verification (1995)Google Scholar
  17. 17.
    Govindaraju, S.G., Dill, D.L.: Counterexample-guided Choice of Projections in Approximate Symbolic Model Checking. In: Proc. of ICCAD (2000)Google Scholar
  18. 18.
    Henzinger, T.A., Kupferman, O., Qadeer, S.: From Pre-Historic to Post-Modern Symbolic Model Checking. Form. Methods Syst. Des. 23(3) (2003)Google Scholar
  19. 19.
    Heyman, T., Geist, D., Grumberg, O., Schuster, A.: A Scalable Parallel Algorithm for Reachability Analysis of Very Large Circuits. In: Formal Methods in System Design (2002)Google Scholar
  20. 20.
    Holzmann, G.J.: The SPIN model checker: Primer and reference manual. Addison-Wesley, Reading (2003)Google Scholar
  21. 21.
    Hu, A.J., Casas, J., Yang, J.: Reasoning about GSTE Assertion Graphs. In: Correct Hardware Design and Verification Methods, Springer, Heidelberg (2003)Google Scholar
  22. 22.
    Kupferman, O., Vardi, M.Y.: Model checking of safety properties. Formal methods in System Design 19(3) (2001)Google Scholar
  23. 23.
    Kurshan, R.P.: Computer Aided Verification of Coordinating Processes. Princeton University Press, Princeton (1994)Google Scholar
  24. 24.
    Manna, Z., Pnueli, A.: Specification and Verification of Concurrent Programs by ∀- automata. In: Proc. 14th ACM Symp. on Principles of Programming (1987)Google Scholar
  25. 25.
    Narayan, J., Jain, M.: Fujita, and A. Sangiovanni-Vincentelli. Partitioned ROBDDs-a Compact, Canonical and Efficiently Manipulable Representation for Boolean Functions. In: Inter. Conf. on Computer-aided design (1996)Google Scholar
  26. 26.
    Ravi, K., Bloem, R., Somenzi, F.: A Comparative Study of Symbolic Algorithms for the Computation of Fair Cycles. In: Formal Methods in Computer-Aided Design (2000)Google Scholar
  27. 27.
    Sebastiani, R., Tonetta, S.: More Deterministic” vs. “Smaller. Buechi Automata for Efficient LTL Model Checking. In: Correct Hardware Design and Verification Methods (2003)Google Scholar
  28. 28.
    Seger, C.-J.H., Bryant, R.E.: Formal Verification by Symbolic Evaluation of Partially- Ordered Trajectories. Formal Methods in System Design: An Inter. Journal 6(2) (1995)Google Scholar
  29. 29.
    Somenzi, F., Bloem, R.: Efficient Büchi Automata from LTL Formulae. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, Springer, Heidelberg (2000)CrossRefGoogle Scholar
  30. 30.
    Vardi, M.Y., Wolper, P.: An Automata-Theoretic Approach to Automatic Program Verification. In: Proc. 1st Symp. on Logic in Computer Science (1986)Google Scholar
  31. 31.
    Vardi, M.Y., Wolper, P.: Reasoning about Infinite Computations. Information and Computation 115(1) (1994)Google Scholar
  32. 32.
    Yang, J., Goel, A.: GSTE through a Case Study. In: Proc. of the 2002 IEEE/ACM Inter. Conf. on Computer-Aided Design, ACM Press, New York (2002)Google Scholar
  33. 33.
    Yang, J., Seger, C.-J.H.: Generalized Symbolic Trajectory Evaluation, Intel SCL Technical Report, under revision for Journal Publication (2000)Google Scholar
  34. 34.
    Yang, J., Seger, C.-J.H.: Generalized Symbolic Trajectory Evaluation - Abstraction in Action. In: Formal Methods in Computer-Aided Design (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Roberto Sebastiani
    • 1
  • Eli Singerman
    • 2
  • Stefano Tonetta
    • 1
  • Moshe Y. Vardi
    • 3
  1. 1.DITUniversità di Trento 
  2. 2.Intel, Israel Design Center 
  3. 3.Dept. of Computer ScienceRice University 

Personalised recommendations