Skip to main content

Buy one, get one free !!!

  • Conference paper
  • First Online:
Temporal Logic (ICTL 1994)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 827))

Included in the following conference series:

Abstract

The exponential gap between CTL and LTL model-checking complexity, led to a development of model-checking tools for CTL, while model checkers for LTL have stayed behind. However, users of those tools have to struggle with the limited expressive power of CTL and are often compelled to give up checking many important behaviors. As a matter of course, finding specification languages which are strictly more expressive than CTL and yet maintain its attractive model-checking complexity, is a challenging problem and has been an active area of research. In this paper we introduce such a language.

Our language, CTL2, is an outcome of a new approach for defining sub-languages of CTL*. The approach allows a bounded number of linear-time operators within the path formulas of CTL*. We discuss the expressive power of CTL2 and, in particular, focus on the relation between CTL2 and CTL. We show that beyond the increase in the expressive power, a substantial advantage of CTL2 is the neat and intuitive presentation it provides for specifications whose CTL equivalences are complicated and very hard to understand. We introduce a model-checking procedure for CTL2. Our model checker is of complexity linear in both the formula and the structure being checked, just as the one for CTL. In addition, we suggest an extension of it that, preserving its complexity, handles fairness.

Work carried out under a project on program verification and semantics of programming languages, funded by the Israeli academy of sciences (basic research). The second author was partially supported by the U.S.-Israeli Binational Science Foundation.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M.C. Browne. An improved algorithm for the automatic verification of finite state systems using temporal logic. In Proceedings of the First Symposium on Logic in Computer Science, pages 260–266, Cambridge, June 1986.

    Google Scholar 

  2. R.E. Bryant. Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers, C-35(8), 1986.

    Google Scholar 

  3. E.M. Clarke and E.A. Emerson. Design and synthesis of synchronization skeletons using branching time temporal logic. In Proc. Workshop on Logic of Programs, volume 131 of Lecture Notes in Computer Science, pages 52–71. Springer-Verlag, 1981.

    Google Scholar 

  4. E.M. Clarke, E.A. Emerson, and A.P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Transactions on Programming Languages and Systems, 8(2):244–263, January 1986.

    Article  Google Scholar 

  5. E.A. Emerson and E.M. Clarke. Using branching time logic to synthesize synchronization skeletons. Science of Computer Programming, 2:241–266, 1982.

    Article  Google Scholar 

  6. E.A. Emerson and J.Y. Halpern. Sometimes and not never revisited: On branching versus linear time. Journal of the ACM, 33(1):151–178, 1986.

    Article  Google Scholar 

  7. E.A. Emerson and C. Jutla. The complexity of tree automata and logics of programs. In Proceedings of the 29th IEEE Symposium on Foundations of Computer Science, White Plains, Oct 1988.

    Google Scholar 

  8. E.A. Emerson. Temporal and modal logic. Handbook of theoretical computer science, pages 997–1072, 1990.

    Google Scholar 

  9. A.E. Emerson and A.P. Sistla. Deciding full branching time logics. Information and Control, 61(3):175–201, 1984.

    Google Scholar 

  10. O. Grumberg and D. Long. Model checking and modular verification. In Proc. 2nd Conference on Concurrency Theory, volume 527 of Lecture Notes in Computer Science, 1991.

    Google Scholar 

  11. L. Lamport. Sometimes is sometimes “not never” — on the temporal logic of programs. In Proceedings of the 7th ACM Symposium on Principles of Programming Languages, pages 174–185, January 1980.

    Google Scholar 

  12. K.L. McMillan. Symbolic model checking. Kluwer Academic Publishers, 1993.

    Google Scholar 

  13. A. Pnueli. The temporal semantics of concurrent programs. Theoretical Computer Science, 13:45–60, 1981.

    Article  Google Scholar 

  14. M.O. Rabin. Weakly definable relations and special automata. In Proc. Symp. Math. Logic and Foundations of Set Theory, pages 1–23. North Holland, 1970.

    Google Scholar 

  15. A.P. Sistla and E.M. Clarke. The complexity of propositional linear time logic. ACM, 32(3):733–749, 1985.

    Article  Google Scholar 

  16. R.E. Tarjan. Depth first search and linear graph algorithms. SIAM Journal of Computing, 1(2):146–160, 1972.

    Google Scholar 

  17. P. Wolper and P. Godefroid. Partial-order methods for temporal verification. In Proc. 4th Conferance on Concurrency Theory, volume 715 of Lecture Notes in Computer Science, pages 233–246, Hildesheim, August 1993. Springer-Verlag.

    Google Scholar 

  18. P. Wolper. Specification and synthesis of communicating processes using an extended temporal logic. In Proc. 9th Symposium on Principles of Programming Languageseedings, pages 20–33, Albuquerque, January 1982.

    Google Scholar 

  19. P. Wolper. Temporal logic can be more expressive. Information and Control, 56(1–2):72–99, 1983.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dov M. Gabbay Hans Jürgen Ohlbach

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bernholtz, O., Grumberg, O. (1994). Buy one, get one free !!!. In: Gabbay, D.M., Ohlbach, H.J. (eds) Temporal Logic. ICTL 1994. Lecture Notes in Computer Science, vol 827. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0013990

Download citation

  • DOI: https://doi.org/10.1007/BFb0013990

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58241-0

  • Online ISBN: 978-3-540-48585-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics