Symbolic systems, explicit properties: on hybrid approaches for LTL symbolic model checking

  • Roberto Sebastiani
  • Stefano Tonetta
  • Moshe Y. Vardi
Regular Paper

Abstract

In this work we study hybrid approaches to LTL symbolic model checking; that is, approaches that use explicit representations of the property automaton, whose state space is often quite manageable, and symbolic representations of the system, whose state space is typically exceedingly large. We compare the effects of using, respectively, (i) a purely symbolic representation of the property automaton, (ii) a symbolic representation, using logarithmic encoding, of explicitly compiled property automaton, and (iii) a partitioning of the symbolic state space according to an explicitly compiled property automaton. We apply this comparison to three model-checking algorithms: the doubly-nested fixpoint algorithm of Emerson and Lei, the reduction of emptiness to reachability of Biere et al., and the singly-nested fixpoint algorithm of Bloem et al. for weak automata. The emerging picture from our study is quite clear, hybrid approaches outperform pure symbolic model checking, while partitioning generally performs better than logarithmic encoding. The conclusion is that the hybrid approaches benefit from state-of-the-art techniques in semantic compilation of LTL properties. Partitioning gains further from the fact that the image computation is applied to smaller sets of states.

Keywords

Linear-time logic Symbolic model checking Property-driven partitioning 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Biere, A., Artho, C., Schuppan, V.: Liveness checking as safety checking. Electr. Notes Theor. Comput. Sci. 66(2) (2002)Google Scholar
  2. 2.
    Burch J.R., Clarke E.M., McMillan K.L., Dill D.L., Hwang L.J.: Symbolic model checking: 1020 states and beyond. Inf. Comput. 98(2), 142–170 (1992)MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Biere, A., Clarke, E.M., Zhu, Y.: Multiple state and single state tableaux for combining local and global model checking. In: Correct System Design, vol. 1710 of LNCS, pp. 163–179. Springer, Berlin (1999)Google Scholar
  4. 4.
    Brayton R.K., Hachtel G.D., Sangiovanni-Vincentelli A., Somenzi F., Aziz A., Cheng S.T., Edwards S., Khatri S., 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) Proceedings of the 8th International Conference on Computer Aided Verification CAV’96, vol. 1102, pp. 428–432. Springer, Berlin (1996)Google Scholar
  5. 5.
    Baukus K., Lakhnech Y., Stahl K.: Verification of parameterized protocols. J. UCS 7(2), 141–158 (2001)MATHMathSciNetGoogle Scholar
  6. 6.
    Bloem, R., Ravi, K., Somenzi, F.: Efficient decision procedures for model checking of linear time logic properties. In: CAV, pp. 222–235 (1999)Google Scholar
  7. 7.
    Bryant R.E.: Graph-based algorithms for boolean function manipulation. IEEE Trans. Comput. C-35(8), 677–691 (1986)CrossRefGoogle Scholar
  8. 8.
    Cimatti, A., Clarke, E.M., Giunchiglia, F., Roveri, M.: NuSMV: a new symbolic model verifier. In: Proceedings of the 11th International Conference on Computer-Aided Verification, vol. 1633 of LNCS, pp. 495 – 499. Springer, Berlin (1999)Google Scholar
  9. 9.
    Clarke E.M., Grumberg O., Hamaguchi K.: Another look at LTL model checking. Formal Methods Syst. Des. 10(1), 47–71 (1997)CrossRefGoogle Scholar
  10. 10.
    Clarke E.M., Grumberg O., Peled D.A.: Model checking. MIT Press, Cambridge (1999)Google Scholar
  11. 11.
    Couvreur, J.-M.: On-the-fly verification of linear temporal logic. In: World Congress on Formal Methods, pp. 253–271 (1999)Google Scholar
  12. 12.
    Cimatti, A., Roveri, M., Bertoli, P.: Searching powerset automata by combining explicit-state and symbolic model checking. In: Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, vol. 2031 of LNCS, pp. 313–327. Springer, Berlin (2001)Google Scholar
  13. 13.
    Courcoubetis C., Vardi M.Y., Wolper P., Yannakakis M.: Memory-efficient algorithms for the verification of temporal properties. Formal Methods Syst Des 1(2/3), 275–288 (1992)CrossRefGoogle Scholar
  14. 14.
    Daniele, N., Giunchiglia, F., Vardi, M.Y.: Improved automata generation for linear temporal logic. In: Proceedings of the 11th International Conference on Computer-Aided Verification, vol. 1633 of LNCS, pp. 249–260. Springer, Berlin (1999)Google Scholar
  15. 15.
    Etessami, K., Holtzmann, G.: Optimizing Büchi automata. In: Proceedings of CONCUR’2000, vol. 1877 of LNCS, Springer, Berlin (2000)Google Scholar
  16. 16.
    Emerson, E.A., Lei, C.L.: Efficient model checking in fragments of the propositional μ-calculus. In: Proceedings of the Symposium on Logic in Computer Science, pp. 267–278. IEEE Computer Society, New York (1986)Google Scholar
  17. 17.
    Etessami K., Wilke T., Schuller R.: Fair simulation relations, parity games, and state space reduction for büchi automata. In: Orejas, F., Spirakis, P.G., Leeuwen, J. (eds) Automata, Languages and Programming, 28th International Colloquium, vol 2076 of LNCS, Springer, Berlin (2001)Google Scholar
  18. 18.
    Fisler, K., Fraer, R., Kamhi, G., Vardi, M.Y., Yang, Z.: Is there a best symbolic cycle-detection algorithm? In: Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, vol. 2031 of LNCS, pp. 420–434. Springer, Berlin (2001)Google Scholar
  19. 19.
    Fraer, R., Kamhi, G., Ziv, B., Vardi, M.Y., Fix, L.: Prioritized traversal: efficient reachability analysis for verification and falsification. In: Proceedings of the 12th International Conference on Computer-Aided Verification, vol. 1855 of LNCS, pp. 389–402. Springer, Berlin (2000)Google Scholar
  20. 20.
    Fritz, C., Wilke, T.: State space reductions for alternating Büchi automata: quotienting by simulation equivalences. In: Proceedings of 22th Conference on the Foundations of Software Technology and Theoretical Computer Science, vol. 2556 of Lecture Notes in Computer Science, pp. 157–169 (2002)Google Scholar
  21. 21.
    Gurumurty, S., Bloem, R., Somenzi, F.: Fair simulation minimization. In: Proceedings of CAV’02, number 2404 in LNCS. Springer, Berlin (2002)Google Scholar
  22. 22.
    Godefroid, P., Holzmann, G.J.: On the verification of temporal properties. In: PSTV, pp. 109–124 (1993)Google Scholar
  23. 23.
    Giannakopoulou, D., Lerda, F.: From states to transitions: improving translation of LTL formulae to Büchi automata. In: Proceedings of FORTE’02., number 2529 in LNCS. Springer, Berlin (2002)Google Scholar
  24. 24.
    Gastin, P., Oddoux, D.: Fast ltl to büchi automata translation. In: Computer Aided Verification, Proceedings of 13th International Conference, vol. 2102 of Lecture Notes in Computer Science, pp. 53–65. Springer, Berlin (2001)Google Scholar
  25. 25.
    Geldenhuys, J., Valmari, A.: Tarjan’s algorithm makes on-the-fly LTL verification more efficient. In: Proceedings of 10th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, Lecture Notes in Computer Science 2988, pp. 205–219. Springer, Berlin (2004)Google Scholar
  26. 26.
    Holzmann G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison Wesley, Boston (2003)Google Scholar
  27. 27.
    Lynch N.A.: Distributed Algorithms. Morgan Kaufmann Publishers Inc., San Francisco (1996)MATHGoogle Scholar
  28. 28.
    Ochi, H., Yasuoka, K., Yajima, S.: Breadth-first manipulation of very large binary-decision diagrams. In: Proceedings of the 1993 IEEE/ACM International Conference on Computer-aided Design (ICCAD’93), pp. 48–55. IEEE Computer Society Press (1993)Google Scholar
  29. 29.
    Peled, D.: Combining partial order reductions with on-the-fly model-checking. In: CAV, pp. 377–390 (1994)Google Scholar
  30. 30.
    Pnueli, A.: The temporal logic of programs. In: Proceedings of 18th IEEE Symposium on Foundation of Computer Science, pp. 46–57 (1977)Google Scholar
  31. 31.
    Ravi, K., Bloem, R., Somenzi, F.: A comparative study of symbolic algorithms for the computation of fair cycles. In: Proceedings of the 3rd International Conference on Formal Methods in Computer-Aided Design, vol. 1954 of LNCS, pp. 143–160. Springer, Berlin (2000)Google Scholar
  32. 32.
    Somenzi, F., Bloem, R.: Efficient Büchi automata from LTL formulae. In: Proceedings of the 12th International Conference on Computer-Aided Verification, vol. 1855 of LNCS, pp. 247–263. Springer, Berlin (2000)Google Scholar
  33. 33.
    Schwoon, S., Esparza, J.: A note on on-the-fly verification algorithms. In: Proceedings of 11th Internetional Conference on Tools and Algorithms for the Construction and Analysis of Systems, Lecture Notes in Computer Science 3440, pp. 174–190. Springer, Berlin (2005)Google Scholar
  34. 34.
    Sebastiani, R., Singerman, E., Tonetta, S., Vardi, M.Y.: GSTE is partitioned model checking. In: Proceedings of the 15th International Conference on Computer-Aided Verification (CAV), vol. 3114 of LNCS, pp. 229–241. Springer, Berlin (2004)Google Scholar
  35. 35.
    Sebastiani, R., Tonetta, S.: “More Deterministic” vs. “Smaller” Büchi automata for efficient LTL model checking. In: Proceedings of the Conference on Correct Hardware Design and Verification Methods (CHARME), vol. 2860 of LNCS, pp. 126–140. Springer, Berlin (2003)Google Scholar
  36. 36.
    Sebastiani, R., Tonetta, S., Vardi, M.Y.: Symbolic systems, explicit properties: on hybrid approaches for LTL symbolic model checking. In: Proceedings of the 16th International Conference on Computer-Aided Verification (CAV’05), pp. 350–363 (2005)Google Scholar
  37. 37.
    Valmari, A.: Error detection by reduced reachability graph generation. In: ATPN (1988)Google Scholar
  38. 38.
    Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification. In: Proceedings of the 1st Symposium on Logic in Computer Science, pp. 332–344. IEEE Computer Society (1986)Google Scholar
  39. 39.
    Vardi M.Y., Wolper P.: Reasoning about infinite computations. Inf. Comput. 115(1), 1–37 (1994)MATHCrossRefMathSciNetGoogle Scholar
  40. 40.
    Yang, J., Seger, C.-J.H.: Generalized symbolic trajectory evaluation—abstraction in action. In: Proceedings of the 4th International Conference on Formal Methods in Computer-Aided Design, vol. 2517 of LNCS, pp. 70–87. Springer, Berlin (2002)Google Scholar

Copyright information

© Springer-Verlag 2010

Authors and Affiliations

  • Roberto Sebastiani
    • 1
  • Stefano Tonetta
    • 2
  • Moshe Y. Vardi
    • 3
  1. 1.DISI, Università di TrentoTrentoItaly
  2. 2.Embedded Systems UnitFondazione Bruno Kessler - IRSTTrentoItaly
  3. 3.Dept. of Computer ScienceRice UniversityHoustonUSA

Personalised recommendations