Skip to main content

From Linear Temporal Logics to Büchi Automata: The Early and Simple Principle

  • Chapter
  • First Online:
Model Checking, Synthesis, and Learning

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 13030))

Abstract

The automata-theoretic approach advocates reducing problems in an application domain to those in automata theory. When there are multiple paths for the reduction, leaving the realm of application and entering that of automata as early as possible should be preferred, to take full advantages of the abundant algorithmic techniques from the latter. This makes the entire reduction simpler for intuitive understanding and easier for correctness proofs. Indeed, for linear-time temporal logic model checking, there are quite a few ways for translating a temporal formula into an equivalent Büchi automaton. They all go through one or more types of automata as intermediaries, with various interspersing formula manipulation and automaton generation along the way. Among them, translations via alternating automata apparently better adhere to the aforementioned “early and simple” principle. When it comes to translating temporal formulae with past operators, algorithms following the principle generalize more easily by using a two-way alternating automaton as the first intermediary.

In this paper, we give a tutorial presentation of two translation algorithms adhering to the early and simple principle, one for formulae with only future operators and the other for formulae with both future and past operators. They are adaptations of existing works, with a substantially different exposition, further improving simplicity for understanding and easiness for proofs. In particular, we have tried wherever possible to avoid using types of automata or notations that are less common. The relevant notion of a very weak automaton is introduced with two equivalent defining conditions, each offering its unique advantage in a suitable context. Finally, we discuss the role of minimization in such an approach to translation of temporal formulae.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    The equivalence between two temporal formulae can be conveniently checked with, e.g., the GOAL tool [29].

  2. 2.

    The name LTL follows the naming convention in model checking [3]. In other contexts, LTL may refer to the temporal logic of Manna and Pnueli [21, 22] with past operators, variables of infinite domains, and quantification. On the other hand, the name PTL was used instead of LTL in some early works on propositional linear temporal logics without past operators, e.g., [34].

References

  1. Benedetti, M., Cimatti, A.: Bounded model checking for past LTL. In: Garavel, H., Hatcliff, J. (eds.) Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2003. LNCS, vol. 2619, pp. 18–33. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-36577-X_3

  2. Büchi, J.R.: On a decision method in restricted second-order arithmetic. In: Proceedings of the 1960 International Congress on Logic, Methodology and Philosophy of Science, pp. 1–11. Stanford University Press (1962). https://doi.org/10.1007/978-1-4613-8928-6_23, The doi refers to republication of the paper. In: Mac Lane S., Siefkes D. (eds) The Collected Works of J. Richard Büchi. Springer

  3. Clarke, E.M., Grumberg, O., Kroening, D., Peled, D.A., Veith, H.: Model Checking. The MIT Press, Cambridge (2018)

    MATH  Google Scholar 

  4. 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). https://doi.org/10.1007/BF00121128

    Article  MATH  Google Scholar 

  5. Couvreur, J.-M.: On-the-fly verification of linear temporal logic. In: Wing, J.M., Woodcock, J., Davies, J. (eds.) FM’99 — Formal Methods, FM 1999. LNCS, vol. 1708, pp. 253–271. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48119-2_16

  6. Daniele, M., Giunchiglia, F., Vardi, M.Y.: Improved automata generation for linear temporal logic. In: Halbwachs, N., Peled, D. (eds.) Computer Aided Verification, CAV 1999. LNCS, vol. 1633, pp. 249–260. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48683-6_23

  7. De Wulf, M., Doyen, L., Maquet, N., Raskin, J.-F.: Antichains: alternative algorithms for LTL satisfiability and model-checking. In: Ramakrishnan, C.R., Rehof, J. (eds.) Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2008. LNCS, vol. 4963, pp. 63–77. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78800-3_6

  8. Etessami, K., Holzmann, G.J.: Optimizing Büchi automata. In: Palamidessi, C. (ed.) CONCUR 2000 — Concurrency Theory, CONCUR 2000. LNCS, vol. 1877, pp. 153–168. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44618-4_13

  9. 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.) Implementation and Application of Automata, CIAA 2003. LNCS, vol. 2759, pp. 35–48. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-45089-0_5

  10. Fritz, C.: Concepts of automata construction from LTL. In: Sutcliffe, G., Voronkov, A. (eds.) Logic for Programming, Artificial Intelligence, and Reasoning, LPAR 2005. LNCS (LNAI), vol. 3835, pp. 728–742. Springer, Heidelberg (2005). https://doi.org/10.1007/11591191_50

  11. Gastin, P., Oddoux, Denis: Fast LTL to Büchi automata translation. In: Berry, G., Comon, H., Finkel, A. (eds.) Computer Aided Verification, CAV 2001. LNCS, vol. 2102, pp. 53–65. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44585-4_6

  12. Gastin, P., Oddoux, D.: LTL with past and two-way very-weak alternating automata. In: Rovan, B., Vojtáš, P. (eds.) Mathematical Foundations of Computer Science 2003, MFCS 2003. LNCS, vol. 2747, pp. 439–448. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45138-9_38

  13. Gerth, R., Peled, D., Vardi, M.Y., Wolper, P.: Simple on-the-fly automatic verification of linear temporal logic. In: Protocol Specification, Testing and Verification XV, PSTV 1995. IAICT, pp. 3–18. Springer, Boston, MA (1996). https://doi.org/10.1007/978-0-387-34892-6_1

  14. 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.) Formal Techniques for Networked and Distributed Sytems — FORTE 2002, FORTE 2002. LNCS, vol. 2529, pp. 308–326. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36135-9_20

  15. Grädel, E., Thomas, W., Wilke, T.: Automata Logics, and Infinite Games. LNCS, vol. 2500. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36387-4

  16. Jonsson, B., Tsay, Y.K.: Assumption/guarantee specifications in linear-time temporal logic. Theoret. Comput. Sci. 167, 47–72 (1996). https://doi.org/10.1016/0304-3975(96)00069-2

    Article  MathSciNet  MATH  Google Scholar 

  17. Kesten, Y., Manna, Z., McGuire, H., Pnueli, A.: A decision algorithm for full propositional temporal logic. In: Courcoubetis, C. (ed.) Computer Aided Verification, CAV 1993. LNCS, vol. 697, pp. 97–109. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-56922-7_9

  18. Laroussinie, F., Markey, N., Schnoebelen, P.: Temporal logic with forgettable past. In: Proceedings of the 17th IEEE Symposium on Logic in Computer Science (LICS 2002), pp. 383–392. IEEE (2002). https://doi.org/10.1109/LICS.2002.1029846

  19. Lichtenstein, O., Pnueli, A.: Checking that finite state concurrent programs satisfy their linear specification. In: Proceedings of the 12th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL 1985), pp. 97–107. ACM (1985). https://doi.org/10.1145/318593.318622

  20. Lichtenstein, O., Pnueli, A., Zuck, L.: The glory of the past. In: Parikh, R. (ed.) Logic of Programs 1985. LNCS, vol. 193, pp. 196–218. Springer, Heidelberg (1985). https://doi.org/10.1007/3-540-15648-8_16

    Chapter  MATH  Google Scholar 

  21. Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer, Berlin (1992). https://doi.org/10.1007/978-1-4612-0931-7

  22. Manna, Z., Pnueli, A.: Temporal Verification of Reactive Systems: Safety. Springer, Berlin (1995). https://doi.org/10.1007/978-1-4612-4222-2

  23. Miyano, S., Hayashi, T.: Alternating finite automata on \(omega\)-words. Theoret. Comput. Sci. 32, 321–330 (1984). https://doi.org/10.1016/0304-3975(84)90049-5

    Article  MathSciNet  MATH  Google Scholar 

  24. Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: Proceedings of the 16th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 1989), pp. 179–190. ACM (1989). https://doi.org/10.1145/75277.75293

  25. Rohde, G.S.: Alternating Automata and the Temporal Logic of Ordinals. Ph.D. thesis, University of Illinois at Urbana-Champaign, Champaign, IL, USA (1997). http://hdl.handle.net/2142/86954

  26. Sistla, A.P.: Theoretical Issues in the Design and Verification of Distributed Systems. Ph.D. Thesis, Harvard (1983)

    Google Scholar 

  27. 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). https://doi.org/10.1007/10722167_21

    Chapter  Google Scholar 

  28. Thomas, W.: Automata on infinite objects. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, Volume B: Formal Models and Semantics, pp. 133–191. MIT Press (1990). https://doi.org/10.1016/B978-0-444-88074-1.50009-3

  29. Tsay, Y.-K., Chen, Y.-F., Tsai, M.-H., Chan, W.-C., Luo, C.-J.: GOAL extended: towards a research tool for omega automata and temporal logic. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 346–350. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78800-3_26

    Chapter  Google Scholar 

  30. Vardi, M.Y.: A temporal fixpoint calculus. In: Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 1988), pp. 250–259. ACM (1988). https://doi.org/10.1145/73560.73582

  31. Vardi, M.Y.: An automata-theoretic approach to linear temporal logic. In: Moller, F., Birtwistle, G. (eds.) Logics for Concurrency. LNCS, vol. 1043, pp. 238–266. Springer, Heidelberg (1996). https://doi.org/10.1007/3-540-60915-6_6

    Chapter  Google Scholar 

  32. Vardi, M.Y.: Reasoning about the past with two-way automata. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) Automata, Languages and Programming, ICALP 1998. LNCS, vol. 1443, pp. 628–641. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0055090

  33. Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification. In: Proceedings of the 1st Annual IEEE Symposium on Logic in Computer Science (LICS 1986), pp. 332–344. IEEE (1986). http://hdl.handle.net/2268/116609

  34. Wolper, P.: Temporal logic can be more expressive. Inf. Comput. 56(1–2), 72–99 (1983). https://doi.org/10.1016/S0019-9958(83)80051-5

    Article  MathSciNet  MATH  Google Scholar 

  35. Wolper, P., Vardi, M.Y., Sistla, A.P.: Reasoning about infinite computation paths (extended abstract). In: Proceedings of the 24th Annual Symposium on Foundations of Computer Science (FOCS 1983). pp. 185–194. IEEE (1983). https://doi.org/10.1109/SFCS.1983.51

Download references

Acknowledgements

This paper has been written on the occasion of Bengt Jonsson’s 60th birthday. The first author Yih-Kuen Tsay worked as a postdoctoral researcher with Bengt at Uppsala University for near two years, from 1993 to 1995. One of their collaborative works [16] shows how the LTL of Manna and Pnueli [22], which includes past temporal operators, can be conveniently used to write and reason about modular specifications in the “assume-guarantee” style.

We thank the anonymous reviewers and our colleagues Ming-Hsien Tsai, Wayne Zeng, Dror Fried, Suguman Bansal, and Kevin Smith for many helpful comments and suggestions on earlier drafts of this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yih-Kuen Tsay .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Tsay, YK., Vardi, M.Y. (2021). From Linear Temporal Logics to Büchi Automata: The Early and Simple Principle. In: Olderog, ER., Steffen, B., Yi, W. (eds) Model Checking, Synthesis, and Learning. Lecture Notes in Computer Science(), vol 13030. Springer, Cham. https://doi.org/10.1007/978-3-030-91384-7_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-91384-7_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-91383-0

  • Online ISBN: 978-3-030-91384-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics