Skip to main content
Log in

A model checker for linear time temporal logic

  • Published:
Formal Aspects of Computing

Abstract

This report describes the design and implementation of a model checker for linear time temporal logic. The model checker uses a depth-first search algorithm that attempts to find a minimal satisfying model and uses as little space as possible during the checking procedure. The depth-first nature of the algorithm enables the model checker to be used where space is at a premium.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Banieqbal, B.: The Problem of Verifying Systems with Many Processes. TEMPLE project report, Department of Computer Science, University of Manchester, 1987.

  2. Barringer, H., Fisher, M., and Gough, G.: Fair SMG and Linear Time Model Checking. InProc. Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, June 1989. (Published inLecture Notes in Computer Science 407.)

  3. Barringer, H., Kuiper, R., and Pnueli A.: A Really Abstract Concurrent Model and its Temporal Logic. InProc. 13th ACM Symp. on the Principles of Programming Languages, St. Petersberg Beach, Florida, January 1986.

  4. Browne, M.C.: An Improved Algorithm for the Automatic Verification of Finite State Systems using Temporal Logic. Technical report, Department of Computer Science, Carnegie Mellon University, December 1986.

  5. Browne, M.C, Clarke, E.M., Dill, D., and Mishra, B.: Automatic Verification of Sequential Circuits using Temporal Logic. Technical Report CS-85-100, Department of Computer Science, Carnegie Mellon University, 1984.

  6. Clarke, E.M., and Grümberg, O.: Avoiding the State Explosion Problem in Temporal Logic Model Checking Algorithms. Technical report, Department of Computer Science, Carnegie Mellon University, 1987.

  7. Clarke, E.M., Emerson, E.A., and Sistla, A.P.: Automatic Verification of Finite State Concurrent Systems Using Temporal Logic Specifications: A Practical Approach. InProc. 10th ACM Symp. on the Principles of Programming Languages, Austin, Texas, 1983.

  8. Clarke, E. M., Grümberg, O., and Browne, M. C.: Reasoning about Networks with many identical Finite-State Processes. Technical report, Department of Computer Science, Carnegie Mellon University, December 1986.

  9. Emerson, E. A., and Halpern, J. Y.: Decision Procedures and Expressiveness in the Temporal Logic of Branching Time. InProc. 14th ACM Symp. on the Theory of Computing, pp. 169–180, 1982.

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

    Google Scholar 

  11. Fischer, M. J., and Ladner, R. E.: Propositional Dynamic Logic of Regular Programs.Journal of Computer and System Sciences, 18(2), 194–211 (1979).

    Google Scholar 

  12. Fisher, M.: Characterising Temporal Logic. Technical Report UMCS-89-10-6, Department of Computer Science, University of Manchester, Oxford Road, Manchester M13 9PL, UK, October 1989.

    Google Scholar 

  13. Gough, G. D.: Decision Procedures for Temporal Logic. Master's thesis, Department of Computer Science, University of Manchester, October 1984.

  14. Gough, G. D., and Barringer, H.: A Semantics Driven Temporal Verification System. InProc. ESOP '88, March 1988.

  15. Lichtenstein, O., and Pnueli, A.: Checking that Finite State Concurrent Programs Satisfy their Linear Specification. InProc. 12th ACM Symposium on the Principles of Programming Languages, New Orleans, Louisiana, January 1985.

  16. Lichtenstein, O., Pnueli, A., and Zuck, L.: The Glory of the Past.Lecture Notes in Computer Science 193, pp. 196–218, Springer-Verlag, 1985.

  17. Pnueli, A.: The Temporal Logic of Programs. InProc. 18th Symp. on the Foundations of Computer Science, Providence, November 1977.

  18. Sistla, A. P., and Clarke, E. M.: Complexity of propositional linear temporal logics.ACM Journal, 32(3), 733–749, (1985).

    Google Scholar 

  19. Stroustrup, B.:The C++ Programming Language, Addison-Wesley, 1986.

  20. Vardi, M. Y., and Wolper, P.: An Automata-Theoretic Approach to Automatic Program Verification. Technical Report RJ 5184 (53488), IBM Almaden Research Center, San Jose, California, January 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

This work was supported both by Alvey under grant PRJ/SE/054 (SERC grant GR/D/57942) and by ESPRIT under Basic Research Action 3096 (SPEC).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fisher, M. A model checker for linear time temporal logic. Formal Aspects of Computing 4, 299–319 (1992). https://doi.org/10.1007/BF01212306

Download citation

  • Received:

  • Accepted:

  • Issue Date:

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

Keywords

Navigation