Advertisement

LTL Satisfiability Checking

  • Kristin Y. Rozier
  • Moshe Y. Vardi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4595)

Abstract

We report here on an experimental investigation of LTL satisfiability checking via a reduction to model checking. By using large LTL formulas, we offer challenging model-checking benchmarks to both explicit and symbolic model checkers. For symbolic model checking, we use both CadenceSMV and NuSMV. For explicit model checking, we use SPIN as the search engine, and we test essentially all publicly available LTL translation tools. Our experiments result in two major findings. First, most LTL translation tools are research prototypes and cannot be considered industrial quality tools. Second, when it comes to LTL satisfiability checking, the symbolic approach is clearly superior to the explicit approach.

Keywords

Model Check Linear Temporal Logic Symbolic Model Checker Linear Temporal Logic Formula Sanity Check 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ammons, G., Mandelin, D., Bodik, R., Larus, J.R.: Debugging temporal specifications with concept analysis. In: PLDI. Proc. ACM Conf., pp. 182–195 (2003)Google Scholar
  2. 2.
    Armoni, R., Fix, L., Flaisher, A., Grumberg, O., Piterman, N., Tiemeyer, A., Vardi, M.Y.: Enhanced vacuity detection for linear temporal logic. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, Springer, Heidelberg (2003)Google Scholar
  3. 3.
    Beer, I., Ben-David, S., Eisner, C., Rodeh, Y.: Efficient detection of vacuity in ACTL formulas. Formal Methods in System Design 18(2), 141–162 (2001)zbMATHCrossRefGoogle Scholar
  4. 4.
    Bloem, R., Ravi, K., Somenzi, F.: Efficient decision procedures for model checking of linear time logic properties. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 222–235. Springer, Heidelberg (1999)Google Scholar
  5. 5.
    Brayton, R.K., Hachtel, G.D., Sangiovanni-Vincentelli, A., Somenzi, F., Aziz, A., Cheng, S.-T., Edwards, S., Khatri, S., Kukimoto, T., 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, pp. 428–432. Springer, Heidelberg (1996)Google Scholar
  6. 6.
    Bryant, R.E.: Graph-based algorithms for boolean-function manipulation. IEEE Trans. on Computers, vol. C-35(8) (1986)Google Scholar
  7. 7.
    Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: 1020 states and beyond. Information and Computation 98(2), 142–170 (1992)zbMATHCrossRefGoogle Scholar
  8. 8.
    Bustan, D., Flaisher, A., Grumberg, O., Kupferman, O., Vardi, M.Y.: Regular vacuity. In: Borrione, D., Paul, W. (eds.) CHARME 2005. LNCS, vol. 3725, pp. 191–206. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Cimatti, A., Clarke, E.M., Giunchiglia, F., Roveri, M.: NuSMV: a new symbolic model checker. It’l J. on Software Tools for Tech. Transfer 2(4), 410–425 (2000)zbMATHCrossRefGoogle Scholar
  10. 10.
    Clarke, E.M., Grumberg, O., Hamaguchi, K.: Another look at LTL model checking. Formal Methods in System Design 10(1), 47–71 (1997)CrossRefGoogle Scholar
  11. 11.
    Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
  12. 12.
    Courcoubetis, C., Vardi, M.Y., Wolper, P., Yannakakis, M.: Memory efficient algorithms for the verification of temporal properties. Formal Methods in System Design 1, 275–288 (1992)CrossRefGoogle Scholar
  13. 13.
    Couvreur, J.-M.: On-the-fly verification of linear temporal logic. In: Wing, J.M., Woodcock, J.C.P., Davies, J. (eds.) FM 1999. LNCS, vol. 1708, pp. 253–271. Springer, Heidelberg (1999)Google Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    Duret-Lutz, A., Poitrenaud, D.: SPOT: An extensible model checking library using transition-based generalized büchi automata. In: MASCOTS, Proc. 12th Int’l Workshop, pp. 76–83. IEEE Computer Society, Los Alamitos (2004)Google Scholar
  16. 16.
    Emerson, E.A.: Temporal and modal logic. In: Van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, vol. B, ch. 16, pp. 997–1072. Elsevier, MIT Press, Cambridge (1990)Google Scholar
  17. 17.
    Emerson, E.A., Lei, C.L.: Efficient model checking in fragments of the propositional μ-calculus. In: LICS, 1st Symp., Cambridge, pp. 267–278 (1986)Google Scholar
  18. 18.
    Etessami, K., Holzmann, G.J.: Optimizing Büchi automata. In: Palamidessi, C. (ed.) CONCUR 2000. LNCS, vol. 1877, pp. 153–167. Springer, Heidelberg (2000)Google Scholar
  19. 19.
    Fritz, C.: Constructing Büchi automata from linear temporal logic using simulation relations for alternating büchi automata. In: Ibarra, O.H., Dang, Z. (eds.) CIAA 2003. LNCS, vol. 2759, pp. 35–48. Springer, Heidelberg (2003)Google Scholar
  20. 20.
    Fritz, C.: Concepts of automata construction from LTL. In: Sutcliffe, G., Voronkov, A. (eds.) LPAR 2005. LNCS (LNAI), vol. 3835, pp. 728–742. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  21. 21.
    Gastin, P., Oddoux, D.: Fast LTL to Büchi automata translation. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 53–65. Springer, Heidelberg (2001)Google Scholar
  22. 22.
    Geldenhuys, J., Hansen, H.: Larger automata and less work for LTL model checking. In: Valmari, A. (ed.) Model Checking Software. LNCS, vol. 3925, pp. 53–70. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Geldenhuys, J., Valmari, A.: Tarjan’s algorithm makes on-the-fly LTL verification more efficient. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 205–219. Springer, Heidelberg (2004)Google Scholar
  24. 24.
    Gerth, R., Peled, D., Vardi, M.Y., Wolper, P.: Simple on-the-fly automatic verification of linear temporal logic. In: Dembiski, P., Sredniawa, M. (eds.) Protocol Specification, Testing, and Verification, August 1995, pp. 3–18. Chapman & Hall, Sydney, Australia (1995)Google Scholar
  25. 25.
    Giannakopoulou, D., Lerda, F.: From states to transitions: Improving translation of LTL formulae to Büchi automata. In: Peled, D.A., Vardi, M.Y. (eds.) FORTE 2002. LNCS, vol. 2529, Springer, Heidelberg (2002)CrossRefGoogle Scholar
  26. 26.
    Gurfinkel, A., Chechik, M.: Extending extended vacuity. In: Hu, A.J., Martin, A.K. (eds.) FMCAD 2004. LNCS, vol. 3312, pp. 306–321. Springer, Heidelberg (2004)Google Scholar
  27. 27.
    Gurfinkel, A., Chechik, M.: How vacuous is vacuous. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 451–466. Springer, Heidelberg (2004)Google Scholar
  28. 28.
    Holzmann, G.J.: The model checker SPIN (Special issue on Formal Methods in Software Practice). IEEE Trans. on Software Engineering 23(5), 279–295 (1997)CrossRefGoogle Scholar
  29. 29.
    Kupferman, O.: Sanity checks in formal verification. In: Baier, C., Hermanns, H. (eds.) CONCUR 2006. LNCS, vol. 4137, pp. 37–51. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  30. 30.
    Kupferman, O., Vardi, M.Y.: Vacuity detection in temporal model checking. J. on Software Tools For Technology Transfer 4(2), 224–233 (2003)CrossRefGoogle Scholar
  31. 31.
    Kurshan, R.P.: FormalCheck User’s Manual. Cadence Design, Inc. (1998)Google Scholar
  32. 32.
    McMillan, K.: The SMV language. Technical report, Cadence Berkeley Lab (1999)Google Scholar
  33. 33.
    McMillan, K.L.: Symbolic Model Checking. Kluwer Academic Publishers, Boston (1993)zbMATHGoogle Scholar
  34. 34.
    Namjoshi, K.S.: An efficiently checkable, proof-based formulation of vacuity in model checking. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, pp. 57–69. Springer, Heidelberg (2004)Google Scholar
  35. 35.
    Pan, G., Sattler, U., Vardi, M.Y.: BDD-based decision procedures for K. In: Voronkov, A. (ed.) Automated Deduction - CADE-18. LNCS (LNAI), vol. 2392, pp. 16–30. Springer, Heidelberg (2002)Google Scholar
  36. 36.
    Piterman, N., Vardi, M.Y.: From bidirectionality to alternation. Theoretical Computer Science 295(1–3), 295–321 (2003)zbMATHCrossRefGoogle Scholar
  37. 37.
    Purandare, M., Somenzi, F.: Vacuum cleaning CTL formulae. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 485–499. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  38. 38.
    Sebastiani, R., Tonetta, S.: more deterministic vs. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, pp. 126–140. Springer, Heidelberg (2003)Google Scholar
  39. 39.
    Sebastiani, R., Tonetta, S., Vardi, M.Y.: Symbolic systems, explicit properties: on hybrid approaches for LTL symbolic model checking. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 350–373. Springer, Heidelberg (2005)Google Scholar
  40. 40.
    Somenzi, F., Bloem, R.: Efficient Büchi automata from LTL formulae. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 248–263. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  41. 41.
    Tauriainen, H., Heljanko, K.: Testing LTL formula translation into Büchi automata. STTT - Int’l J. on Software Tools for Tech. Transfer 4(1), 57–70 (2002)CrossRefGoogle Scholar
  42. 42.
    Thirioux, X.: Simple and efficient translation from LTL formulas to Büchi automata. Electr. Notes Theor. Comput. Sci., vol. 66(2) (2002)Google Scholar
  43. 43.
    Vardi, M.Y.: Nontraditional applications of automata theory. In: Hagiya, M., Mitchell, J.C. (eds.) TACS 1994. LNCS, vol. 789, pp. 575–597. Springer, Heidelberg (1994)Google Scholar
  44. 44.
    Vardi, M.Y.: Automata-theoretic model checking revisited. In: Cook, B., Podelski, A. (eds.) VMCAI 2007. LNCS, vol. 4349, pp. 137–150. Springer, Heidelberg (2007)Google Scholar
  45. 45.
    Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification. In: Proc. 1st LICS, pp. 332–344 (1986)Google Scholar
  46. 46.
    Vardi, M.Y., Wolper, P.: Reasoning about infinite computations. Information and Computation 115(1), 1–37 (1994)zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Kristin Y. Rozier
    • 1
  • Moshe Y. Vardi
    • 2
  1. 1.NASA Langley Research Center, Hampton, Virginia 23681 
  2. 2.Rice University, Houston, Texas 77005 

Personalised recommendations