Boolean Abstraction for Temporal Logic Satisfiability

  • Alessandro Cimatti
  • Marco Roveri
  • Viktor Schuppan
  • Stefano Tonetta
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4590)

Abstract

Increasing interest towards property based design calls for effective satisfiability procedures for expressive temporal logics, e.g. the IEEE standard Property Specification Language (PSL).

In this paper, we propose a new approach to the satisfiability of PSL formulae; we follow recent approaches to decision procedures for Satisfiability Modulo Theory, typically applied to fragments of First Order Logic. The underlying intuition is to combine two interacting search mechanisms: on one side, we search for assignments that satisfy the Boolean abstraction of the problem; on the other, we invoke a solver for temporal satisfiability on the conjunction of temporal formulae corresponding to the assignment. Within this framework, we explore two directions. First, given the fixed polarity of each constraint in the theory solver, aggressive simplifications can be applied. Second, we analyze the idea of conflict reconstruction: whenever a satisfying assignment at the level of the Boolean abstraction results in a temporally unsatisfiable problem, we identify inconsistent subsets that can be used to rule out possibly many other assignments. We propose two methods to extract conflict sets on conjunctions of temporal formulae (one based on BDD-based Model Checking, and one based on SAT-based Simple Bounded Model Checking). We analyze the limits and the merits of the approach with a thorough experimental evaluation.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Accellera. Property specification language reference manual, version 1.1Google Scholar
  2. 2.
    Armoni, R., Fix, L., Flaisher, A., Gerth, R., Ginsburg, B., Kanza, T., Landver, A., Mador-Haim, S., Singerman, E., Tiemeyer, A., Vardi, M.Y., Zbar, Y.: The ForSpec Temporal Logic: A New Temporal Property-Specification Language. In: Katoen, J.-P., Stevens, P. (eds.) ETAPS 2002 and TACAS 2002. LNCS, vol. 2280, Springer, Heidelberg (2002)Google Scholar
  3. 3.
    Beer, I., Ben-David, S., Eisner, C., Fisman, D., Gringauze, A., Rodeh, Y.: The temporal logic Sugar. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, Springer, Heidelberg (2001)Google Scholar
  4. 4.
    Ben-David, S., Bloem, R., Fisman, D., Griesmayer, A., Pill, I., Ruah, S.: Automata Construction Algorithms Optimized for PSL, 2005. In: PROSYD deliverable D 3.2/4 (2005)Google Scholar
  5. 5.
    Biere, A., Cimatti, A., Clarke, E., Zhu, Y.: Symbolic model checking without BDDs. In: Cleaveland, W.R. (ed.) ETAPS 1999 and TACAS 1999. LNCS, vol. 1579, Springer, Heidelberg (1999)Google Scholar
  6. 6.
    Biere, A., Heljanko, K., Junttila, T., Latvala, T., Schuppan, V.: Linear encodings of bounded LTL model checking. Logical Methods in Computer Science 2 (2006)Google Scholar
  7. 7.
    Bloem, R., Cimatti, A., Pill, I., Roveri, M., Semprini, S.: Symbolic Implementation of Alternating Automata. In: Ibarra, O.H., Yen, H.-C. (eds.) CIAA 2006. LNCS, vol. 4094, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P., Schulz, S., Sebastiani, R.: MathSAT: Tight integration of SAT and mathematical decision procedures. Journal of Automated Reasoning 35(1–3), 265–293 (2005)MATHGoogle Scholar
  9. 9.
    Cimatti, A., Clarke, E.M., Giunchiglia, F., Roveri, M.: NUSMV: a new Symbolic Model Verifier. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, Springer, Heidelberg (1999)Google Scholar
  10. 10.
    Cimatti, A., Roveri, M., Semprini, S., Tonetta, S.: From PSL to NBA: a modular symbolic encoding. In: FMCAD (2006)Google Scholar
  11. 11.
    Cimatti, A., Roveri, M., Tonetta, S.: Syntactic optimizations for PSL verification. In: TACAS (2007)Google Scholar
  12. 12.
    Clarke, E., Grumberg, O., Hamaguchi, K.: Another look at LTL model checking. Formal Methods in System Design 10(1), 47–71 (1997)CrossRefGoogle Scholar
  13. 13.
    Ben David, S., Orni, A.: Property-by-Example guide: a handbook of PSL/Sugar examples. In: PROSYD deliverable D 1.1/3 (2005)Google Scholar
  14. 14.
    Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, Springer, Heidelberg (2004)Google Scholar
  15. 15.
    Emerson, A.: Temporal and modal logic. In: van Leeuwen, J. (ed.) Handbook of TCS, Volume B: Formal Models and Sematics, pp. 995–1072 (1990)Google Scholar
  16. 16.
    Fisher, M., Dixon, C., Peim, M.: Clausal temporal resolution. ACM Trans. Comput. Logic 2(1), 12–56 (2001)CrossRefGoogle Scholar
  17. 17.
    Fuxman, A., Liu, L., Pistore, M., Roveri, M., Mylopoulos, J.: Specifying and analyzing early requirements in Tropos: Some experimental results. In: RE (2003)Google Scholar
  18. 18.
    Halpern, J.Y., Manna, Z., Moszkowski, B.C.: A hardware semantics based on temporal intervals. In: Díaz, J. (ed.) Automata, Languages and Programming. LNCS, vol. 154, Springer, Heidelberg (1983)CrossRefGoogle Scholar
  19. 19.
    Heljanko, K., Junttila, T., Keinänen, M., Lange, M., Latvala, T.: Bounded model checking for weak alternating büchi automata. In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol. 4144, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  20. 20.
    Heljanko, K., Junttila, T., Latvala, T.: Incremental and complete bounded model checking for full PLTL. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, Springer, Heidelberg (2005)Google Scholar
  21. 21.
    Kupferman, O., Vardi, M.: Model checking of safety properties. Formal Methods in System Design 19(3), 291–314 (2001)MATHCrossRefGoogle Scholar
  22. 22.
    Lange, M., Stirling, C.: Focus Games for Satisfiability and Completeness of Temporal Logic. In: LICS (2001)Google Scholar
  23. 23.
    Lichtenstein, O., Pnueli, A.: Propositional Temporal Logics: Decidability and Completeness. Logic Journal of the IGPL 8(1) (2000)Google Scholar
  24. 24.
    Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems. Springer, Heidelberg (1992)Google Scholar
  25. 25.
    Miyano, S., Hayashi, T.: Alternating finite automata on ω-words. Theoretical Computer Science 32, 321–330 (1984)MATHCrossRefGoogle Scholar
  26. 26.
    Moszkowski, B.C.: A Hierarchical Completeness Proof for Propositional Interval Temporal Logic with Finite Time. Journal of Applied Non-Classical Logics 14(1-2), 55–104 (2004)CrossRefGoogle Scholar
  27. 27.
    Pill, I., Semprini, S., Cavada, R., Roveri, M., Bloem, R., Cimatti, A.: Formal analysis of hardware requirements. In: DAC (2006)Google Scholar
  28. 28.
    Pnueli, A.: The temporal logic of programs. In: FOCS (1977)Google Scholar
  29. 29.
    Pnueli, A., Zaks, A.: PSL Model Checking and Run-Time Verification Via Testers. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 573–586. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  30. 30.
    Sebastiani, R., Tonetta, S.: “More Deterministic” vs. “Smaller” Büchi Automata for Efficient LTL Model Checking. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, Springer, Heidelberg (2003)Google Scholar
  31. 31.
    Sheeran, M., Singh, S., Stålmarck, G.: Checking safety properties using induction and a SAT-solver. In: Johnson, S.D., Hunt Jr., W.A. (eds.) FMCAD 2000. LNCS, vol. 1954, Springer, Heidelberg (2000)Google Scholar
  32. 32.
    Sistla, A., Clarke, E.: The complexity of propositional linear temporal logics. J. ACM 32(3), 733–749 (1985)MATHCrossRefGoogle Scholar
  33. 33.
    Vardi, M., Wolper, P.: Reasoning about infinite computations. Information and Computation 115, 1–37 (1994)MATHCrossRefGoogle Scholar
  34. 34.
    Wolper, P.: Temporal Logic Can Be More Expressive. Information and Control 56(1/2), 72–99 (1983)MATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Alessandro Cimatti
    • 1
  • Marco Roveri
    • 1
  • Viktor Schuppan
    • 1
  • Stefano Tonetta
    • 2
  1. 1.FBK-irst, IT-38050 TrentoItaly
  2. 2.University of Lugano, Faculty of Informatics, CH-6904 LuganoSwitzerland

Personalised recommendations