Abstract
We present here a new explicit reasoning framework for linear temporal logic (LTL), which is built on top of propositional satisfiability (SAT) solving. The crux of our approach is a construction of temporal transition system that is based on SAT-solving rather than tableau to construct states and transitions. As a proof-of-concept of this framework, we describe a new LTL satisfiability algorithm. We tested the effectiveness of this approach by demonstrating that it significantly outperforms all existing LTL-satisfiability-checking algorithms.


Similar content being viewed by others
Notes
It can be downloaded at www.lab301.cn/aalta.
Although a most recent tableau-based solver has been presented in [1], our preliminary results show its performance is at least 10 times worse than Aalta_2.0. As a result, we rule out the comparison with this work.
References
Bertello M, Gigante N, Montanari A, Reynolds M (2016) Leviathan: a new LTL satisfiability checking tool based on a one-pass tree-shaped tableau. In: Proceedings of the twenty-fifth international joint conference on artificial intelligence, IJCAI’16, pp 950–956. AAAI Press. http://dl.acm.org/citation.cfm?id=3060621.3060753
Bradley A (2011) SAT-based model checking without unrolling. In: Jhala R, Schmidt D (eds) Verification, model checking, and abstract interpretation. Lecture notes in computer science, vol 6538. Springer, Berlin, pp 70–87
Cavada R, Cimatti A, Dorigatti M, Griggio A, Mariotti A, Micheli A, Mover S, Roveri M, Tonetta S (2014) The nuXmv symbolic model checker. In: CAV, pp 334–342
Cimatti A, Clarke E, Giunchiglia E, Giunchiglia F, Pistore M, Roveri M, Sebastiani R, Tacchella A (2002) Nusmv 2: an opensource tool for symbolic model checking. In: Brinksma E, Larsen KG (eds) Computer aided verification. Lecture notes in computer science, vol 2404. Springer, Berlin, pp 359–364
Claessen K, Sörensson N (2012) A liveness checking algorithm that counts. In: Cabodi G, Singh S (eds) FMCAD, pp 52–59. IEEE
Clarke E, Grumberg O, Peled D (1999) Model checking. MIT Press, Cambridge
Courcoubetis C, Vardi M, Wolper P, Yannakakis M (1992) Memory efficient algorithms for the verification of temporal properties. Form Methods Syst Des 1:275–288
D’Agostino M (1999) Tableau methods for classical propositional logic. In: D’Agostino M, Gabbay D, Haehnle R, Posegga J (eds) Handbook of tableau methods. Springer, Dordrecht, pp 45–123
Daniele N, Guinchiglia F, Vardi M (1999) Improved automata generation for linear temporal logic. In: Proceedings of the 11th international conference on computer aided verification. Lecture notes in computer science, vol 1633. Springer, Berlin, pp 249–260
Duret-Lutz A, Poitrenaud D (2004) SPOT: an extensible model checking library using transition-based generalized büchi automata. In: Proceedings of the 12th international workshop on modeling, analysis, and simulation of computer and telecommunication systems. IEEE Computer Society, pp 76–83
Eén N, Sörensson N (2003) An extensible SAT-solver. In: SAT, pp 502–518
Fisher M (1997) A normal form for temporal logics and its applications in theorem-proving and execution. J Log Comput 7(4):429–456
Fisher M, Dixon C, Peim M (2001) Clausal temporal resolution. ACM Trans Comput Log 2(1):12–56
Gerth R, Peled D, Vardi M, Wolper P (1995) Simple on-the-fly automatic verification of linear temporal logic. In: Dembiski P, Sredniawa M (eds) Protocol specification, testing, and verification. Chapman & Hall, Boca Raton, pp 3–18
Giunchiglia F, Sebastiani R (1996) Building decision procedures for modal logics from propositional decision procedure—the case study of modal K. In: Proceedings of 13th international conference on automated deduction. Lecture notes in computer science, vol 1104. Springer, Berlin, pp 583–597
Heljanko K, Junttila T, Latvala T (2005) Incremental and complete bounded model checking for full PLTL. In: Etessami K, Rajamani S (eds) Computer aided verification. Lecture notes in computer science, vol 3576. Springer, Berlin, pp 98–111
Holzmann G (2003) The SPIN model checker: primer and reference manual. Addison-Wesley, Boston
Hustadt U, Konev B (2003) Trp++ 2.0: a temporal resolution prover. In: Proceedings of CADE-19. LNAI. Springer, Berlin, pp 274–278
Kaminski M, Tebbi T (2013) Inkresat: modal reasoning via incremental reduction to sat. In: Bonacina MP (ed) International conference on automated deduction—CADE-24. Springer, Berlin, pp 436–442
Larrabee T (1992) Test pattern generation using boolean satisfiability. IEEE Trans Comput Aided Des Integr Circuits Syst 11(1):4–15
Li J, Pu G, Zhang L, Vardi MY, He J (2014) Fast LTL satisfiability checking by SAT solvers. CoRR arXiv:1401.5677
Li J, Zhang L, Pu G, Vardi M, He J (2013) LTL satisfibility checking revisited. In: The 20th international symposium on temporal representation and reasoning, pp 91–98
Li J, Zhu S, Pu G, Vardi M (2015) SAT-based explicit LTL reasoning. Springer, Berlin, pp 209–224
Malik S, Zhang L (2009) Boolean satisfiability from theoretical hardness to practical success. Commun ACM 52(8):76–82
Manna Z, Pnueli A (1992) The temporal logic of reactive and concurrent systems: specification. Springer, Berlin
Manquinho VM, Flores PF, Silva JPM, Oliveira AL (1997) Prime implicant computation using satisfiability algorithms. In: Proceedings of ninth IEEE international conference on tools with artificial intelligence, pp 232–239
Marques-Silva J, Lynce I (2011) On improving MUS extraction algorithms. In: Sakallah K, Simon L (eds) Theory and applications of satisfiability testing—SAT 2011. Lecture notes in computer science, vol 6695. Springer, Berlin, pp 159–173
McMillan K (1993) Symbolic model checking. Kluwer Academic Publishers, Dordrecht
McMillan K (2003) Interpolation and SAT-based model checking. In: Hunt WA Jr., Somenzi F (eds) International conference on computer aided verification. Lecture notes in computer science, vol 2725. Springer, Berlin, pp 1–13
Pnueli A (1977) The temporal logic of programs. In: Proceedings of 18th IEEE symposium on foundations of computer science, pp 46–57
Rozier K, Vardi M (2010) LTL satisfiability checking. Int J Softw Tools Technol Transf 12(2):123–137
Schuppan V, Darmawan L (2011) Evaluating LTL satisfiability solvers. In: Proceedings of the 9th international conference on automated technology for verification and analysis, ATVA’11. Springer, Berlin, pp 397–413
Schwendimann S (1998) A new one-pass tableau calculus for PLTL. In: Proceedings of the international conference on automated reasoning with analytic tableaux and related methods. Springer, Berlin, pp 277–292
Schwoon S, Esparza J (2005) A note on on-the-fly verification algorithms. In: Proceedings 11th international conference on tools and algorithms for the construction and analysis of systems. Lecture notes in computer science, vol 3440. Springer, Berlin, pp 174–190
Somenzi F, Bloem R (2000) Efficient Büchi automata from LTL formulae. In: Proceedings of 12th international conference on computer aided verification. Lecture notes in computer science, vol 1855. Springer, Berlin, pp 248–263
Suda M (2015) Variable and clause elimination for LTL satisfiability checking. Math Comput Sci 9(3):327–344
Suda M, Weidenbach C (2012) A PLTL-prover based on labelled superposition with partial model guidance. In: International joint conference on automated reasoning. Lecture notes in computer science, vol 7364. Springer, Berlin, pp 537–543
Tabakov D, Rozier K, Vardi MY (2012) Optimized temporal monitors for SystemC. Form Methods Syst Des 41(3):236–268
Vardi M (1989) On the complexity of epistemic reasoning. In: Proceedings of the fourth annual symposium on logic in computer science. IEEE Press, Piscataway, pp 243–252
Vardi M (1989) Unified verification theory. In: Banieqbal B, Barringer H, Pnueli A (eds) Proceedings of temporal logic in specification, vol 398. Springer, Berlin, pp 202–212
Vardi M, Wolper P (1986) An automata-theoretic approach to automatic program verification. In: Proceedings of 1st IEEE symposium on logic in computer science, pp 332–344
Williams R, Konev B (2013) Propositional temporal proving with reductions to a sat problem. In: Bonacina MP (ed) International conference on automated deduction—CADE-24. Springer, Berlin, pp 421–435
Acknowledgements
The authors thank anonymous reviewers for useful comments. The work is supported in part by NSF Grants CCF-1319459, by NSF Expeditions in Computing project “ExCAPE: Expeditions in Computer Augmented Program Engineering”, and by BSF Grant 9800096. Jianwen Li is partially supported by NSFC Projects No. 61572197 and No. 61632005. Geguang Pu is partially supported by MOST NKTSP Project 2015BAG19G02 (Grant No. ZF1213) and STCSM Project No. 16DZ1100600. Lijun Zhang is supported by NSFC Grant No. 61532019.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, J., Zhu, S., Pu, G. et al. SAT-based explicit LTL reasoning and its application to satisfiability checking. Form Methods Syst Des 54, 164–190 (2019). https://doi.org/10.1007/s10703-018-00326-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10703-018-00326-5