Advertisement

Formal Methods in System Design

, Volume 49, Issue 3, pp 219–271 | Cite as

From LTL to deterministic automata

A safraless compositional approach
  • Javier Esparza
  • Jan KřetínskýEmail author
  • Salomon Sickert
Article

Abstract

We present a new algorithm to construct a (generalized) deterministic Rabin automaton for an LTL formula \(\varphi \). The automaton is the product of a co-Büchi automaton for \(\varphi \) and an array of Rabin automata, one for each \({\mathbf {G}}\)-subformula of \(\varphi \). The Rabin automaton for \({\mathbf {G}}\psi \) is in charge of recognizing whether \({\mathbf {F}}{\mathbf {G}}\psi \) holds. This information is passed to the co-Büchi automaton that decides on acceptance. As opposed to standard procedures based on Safra’s determinization, the states of all our automata have a clear logical structure, which allows for various optimizations. Experimental results show improvement in the sizes of the resulting automata compared to existing methods.

Keywords

Automata theory Temporal logic Verification 

Notes

Acknowledgements

We are grateful to the anonymous referees for their helpful comments to improve previous versions of the manuscript and their interesting suggestions for future work. This research was funded in part by the Czech Science Foundation Grant No. P202/12/G061, the DFG Research Training Group “PUMA: Programm- und Modell-Analyse” (GRK 1480), and the DFG grant CAVA, Computer Aided Verification of Automata.

References

  1. 1.
    Vardi MY (1999) Probabilistic linear-time model checking: an overview of the automata-theoretic approach. In: Formal methods for real-time and probabilistic systems, 5th international AMAST workshop, pp 265–276Google Scholar
  2. 2.
    Vardi MY, Wolper P (1986) An automata-theoretic approach to automatic program verification (preliminary report). In: LICS, pp 332–344Google Scholar
  3. 3.
    Vardi MY, Wolper P (1994) Reasoning about infinite computations. Inf Comput 115(1):1–37MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Couvreur J-M (1999) On-the-fly verification of linear temporal logic. In: World congress on formal, methods, pp 253–271Google Scholar
  5. 5.
    Gastin P, Oddoux D (2001) Fast LTL to Büchi automata translation. In: CAV. LNCS, vol 2102. Springer, Berlin, pp 53–65. http://www.lsv.ens-cachan.fr/~gastin/ltl2ba/
  6. 6.
    Gerth R, Peled D, Vardi MY, Wolper P (1995) Simple on-the-fly automatic verification of linear temporal logic. In Proceedings of the fifteenth IFIP WG6.1 international symposium on protocol specification, testing and verification protocol specification, testing and verification XV, pp 3–18Google Scholar
  7. 7.
    Babiak T, Křetínský M, Rehák V, Strejček J (2012) LTL to Büchi automata translation: fast and more deterministic. In: TACAS, pp 95–109Google Scholar
  8. 8.
    Duret-Lutz A (2013) Manipulating LTL formulas using spot 1.0. In: ATVA, pp 442–445Google Scholar
  9. 9.
    Baier C, Katoen J-P (2008) Principles of model checking. MIT Press, Cambridge, MAzbMATHGoogle Scholar
  10. 10.
    Chatterjee K, Gaiser A, Křetínský J (2013) Automata with generalized Rabin pairs for probabilistic model checking and LTL synthesis. In: CAV, pp 559–575Google Scholar
  11. 11.
    Safra S (1988) On the complexity of \(\omega \)-automata. In: FOCS. IEEE Computer Society, Los Alamitos, pp 319–327Google Scholar
  12. 12.
    Piterman N (2006) From nondeterministic Büchi and Streett automata to deterministic parity automata. In: LICS, pp 255–264Google Scholar
  13. 13.
    Schewe S (2009) Tighter bounds for the determinisation of Büchi automata. In: FOSSACS, pp 167–181Google Scholar
  14. 14.
    Kwiatkowska MZ, Norman G, Parker D (2011) PRISM 4.0: verification of probabilistic real-time systems. In: CAV, pp 585–591Google Scholar
  15. 15.
    Klein J (2005) Linear time logic and deterministic omega-automata. Master’s thesis, Rheinische Friedrich-Wilhelms Universität Bonn. The tool ltl2dstar—LTL to deterministic Streett and Rabin automata. http://www.ltl2dstar.de/
  16. 16.
    Kupferman O (2012) Recent challenges and ideas in temporal synthesis. In: SOFSEM. LNCS, vol 7147. Springer, New York, pp 88–98Google Scholar
  17. 17.
    Křetínský J, Esparza J (2012) Deterministic automata for the (F,G)-fragment of LTL. In: CAV, pp 7–22Google Scholar
  18. 18.
    Gaiser A, Křetínský J, Esparza J (2012) Rabinizer: small deterministic automata for LTL(F,G). In: ATVA, pp 72–76Google Scholar
  19. 19.
    Křetínský J, Ledesma-Garza R (2013) Rabinizer 2: small deterministic automata for LTL\(\setminus \)GU. In: ATVA, pp 446–450Google Scholar
  20. 20.
    Esparza J, Křetínský J (2014) From LTL to deterministic automata: a safraless compositional approach. In: CAV, pp 192–208Google Scholar
  21. 21.
    Daniele M, Giunchiglia F, Vardi MY (1999) Improved automata generation for linear temporal logic. In: CAV, pp 249–260Google Scholar
  22. 22.
    Etessami K, Holzmann GJ (2000) Optimizing Büchi automata. In: CONCUR, pp 153–167Google Scholar
  23. 23.
    Fritz C (2003) Constructing Büchi automata from linear temporal logic using simulation relations for alternating Büchi automata. In: CIAA, pp 35–48Google Scholar
  24. 24.
    Giannakopoulou D, Lerda F (2002) From states to transitions: improving translation of LTL formulae to Büchi automata. In: FORTE, pp 308–326Google Scholar
  25. 25.
    Somenzi F, Bloem R (2000) Efficient Büchi automata from LTL formulae. In: CAV. LNCS, vol 1855. Springer, Heidelberg, pp 248–263Google Scholar
  26. 26.
    Klein J, Baier C (2007) On-the-fly stuttering in the construction of deterministic \(\omega \)-automata. In: CIAA. LNCS, vol 4783. Springer, New York, pp 51–61Google Scholar
  27. 27.
    Blahoudek F, Křetínský M, Strejček J (2013) Comparison of LTL to deterministic Rabin automata translators. In: LPAR, pp 164–172Google Scholar
  28. 28.
    Pnueli A, Zaks A (2008) On the merits of temporal testers. In: 25 years of model checking—history, achievements, perspectives, pp 172–195Google Scholar
  29. 29.
    Pnueli A, Rosner R (1988) A framework for the synthesis of reactive modules. In Concurrency. LNCS, vol 335. Springer, Heidelberg, pp 4–17Google Scholar
  30. 30.
    Di Giampaolo B, Geeraerts G, Raskin J-F, Sznajder N (2010) Safraless procedures for timed specifications. In: FORMATS, pp 2–22Google Scholar
  31. 31.
    Kupferman O, Piterman N, Vardi MY (2006) Safraless compositional synthesis. In: CAV. LNCS, vol 4144. Springer, New York, pp 31–44Google Scholar
  32. 32.
    Kupferman O, Vardi MY (2005) Safraless decision procedures. In: FOCS. IEEE Computer Society, Los Alamitos, pp 531–542Google Scholar
  33. 33.
    Alur R, La Torre S (2004) Deterministic generators and games for LTL fragments. ACM Trans Comput Log 5(1):1–25MathSciNetCrossRefGoogle Scholar
  34. 34.
    Komárková Z, Křetínský J (2014) Rabinizer 3: safraless translation of LTL to small deterministic automata. In: ATVA, pp 235–241Google Scholar
  35. 35.
    Babiak T, Blahoudek F, Duret-Lutz A, Klein J, Křetínský J, Müller D, Parker D, Strejček J (2015) The Hanoi omega-automata format. In: CAV, pp 479–486Google Scholar
  36. 36.
    Babiak T, Blahoudek F, Křetínský M, Strejček J (2013) Effective translation of LTL to deterministic Rabin automata: beyond the (F, G)-fragment. In: ATVA, pp 24–39Google Scholar
  37. 37.
    Babiak T, Badie T, Duret-Lutz A, Křetínský M, Strejček J (2013) Compositional approach to suspension and other improvements to LTL translation. In: SPIN, pp 81–98Google Scholar
  38. 38.
    Pelánek R (2007) Beem: benchmarks for explicit model checkers. In: Proc of SPIN Workshop. LNCS, vol 4595. Springer, Heidelberg, pp 263–267Google Scholar
  39. 39.
    Klein J, Baier C (2006) Experiments with deterministic \(\omega \)-automata for formulas of linear temporal logic. Theor Comput Sci 363(2):182–195MathSciNetCrossRefzbMATHGoogle Scholar
  40. 40.
    Dwyer MB, Avrunin GS, Corbett JC (1999) Patterns in property specifications for finite-state verification. In: ICSE, pp 411–420Google Scholar
  41. 41.
    Nipkow T, Paulson LC, Wenzel M (2002) Isabelle/HOL: a proof assistant for higher-order logic., Lecture notes in computer scienceSpringer, HeidelbergCrossRefzbMATHGoogle Scholar
  42. 42.
    Esparza J, Lammich P, Neumann R, Nipkow T, Schimpf A, Smaus J-G (2013) A fully verified executable LTL model checker. In: CAV, pp 463–478Google Scholar
  43. 43.
    Sickert S (2015) Converting linear temporal logic to deterministic (generalized) Rabin automata. Archive of Formal Proofs. http://isa-afp.org/entries/LTL_to_DRA.shtml (Formal proof development)
  44. 44.
    Wenzel M (2007) Isabelle/isar-a generic framework for human-readable proof documents. In: From insight to proof-festschrift in honour of Andrzej Trybulec, vol 10(23), pp 277–298Google Scholar
  45. 45.
    Wenzel M (2014) The Isabelle/Isar reference manualGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  1. 1.Fakultät für InformatikTechnische Universität MünchenGarching bei MünchenGermany

Personalised recommendations