Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2896))

Included in the following conference series:

Abstract

A coinduction-based technique to generate an optimal monitor from a Linear Temporal Logic (LTL) formula is presented in this paper. Such a monitor receives a sequence of states (one at a time) from a running process, checks them against a requirements specification expressed as an LTL formula, and determines whether the formula has been violated or validated. It can also say whether the LTL formula is not monitorable any longer, i.e., that the formula can in the future neither be violated nor be validated. A Web interface for the presented algorithm adapted to extended regular expressions is available.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alpern, B., Schneider, F.B.: Defining liveness. Information Processing Letters 21(4) (1985)

    Google Scholar 

  2. Drusinsky, D.: The Temporal Rover and the ATG Rover. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  3. Geilen, M.: On the construction of monitors for temporal logic properties. In: ENTCS, vol. 55. Elsevier, Amsterdam (2001)

    Google Scholar 

  4. Giannakopoulou, D., Havelund, K.: Automata-Based Verification of Temporal Properties on Running Programs. In: Proceedings, International Conference on Automated Software Engineering (ASE 2001). IEEE, Coronado Island (2001)

    Google Scholar 

  5. Goguen, J., Lin, K., Roşu, G.: Circular coinductive rewriting. In: Proceedings, International Conference on Automated Software Engineering (ASE 2000), Grenoble, France, IEEE, Los Alamitos (2000)

    Google Scholar 

  6. Goguen, J., Lin, K., Rosu, G.: Conditional circular coinductive rewriting with case analysis. In: Wirsing, M., Pattinson, D., Hennicker, R. (eds.) WADT 2003. LNCS, vol. 2755, pp. 216–232. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  7. Havelund, K., Pressburger, T.: Model Checking Java Programs using Java PathFinder. International Journal on Software Tools for Technology Transfer 2(4) (April 2000)

    Google Scholar 

  8. Havelund, K., Roşu, G.: Java PathExplorer – A Runtime Verification Tool. In: The 6th International Symposium on Artificial Intelligence, Robotics and Automation in Space: A New Space Odyssey, Montreal, Canada, June 18-21 (2001)

    Google Scholar 

  9. Havelund, K., Roşu, G.: Monitoring Programs using Rewriting. In: Proceedings, International Conference on Automated Software Engineering (ASE 2001), Coronado Island, California. IEEE, Los Alamitos (2001)

    Google Scholar 

  10. Havelund, K., Roşu, G.: Runtime Verification 2002. In: Proceedings of a Computer Aided Verification (CAV 2002) satellite workshop. ENTCS, vol. 70(4). Elsevier, Amsterdam (2002)

    Google Scholar 

  11. Havelund, K., Roşu, G.: Synthesizing monitors for safety properties. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, p. 342. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  12. Hopcroft, J.E., Ullman, J.D.: Introduction to Automata Theory, Languages and Computation. Addison Wesley, Reading (1979)

    MATH  Google Scholar 

  13. Hsiang, J.: Refutational theorem proving using term rewriting systems. Artificial Intelligence 25 (1985)

    Google Scholar 

  14. Kim, M., Kannan, S., Lee, I., Sokolsky, O.: Java-MaC: a Run-time Assurance Tool for Java. In: Proceedings of Runtime Verification (RV 2001). ENTCS, vol. 55. Elsevier, Amsterdam (2001)

    Google Scholar 

  15. Kupferman, O., Vardi, M.Y.: Freedom, Weakness, and Determinism: From linear-time to branching-time. In: Proceedings of the IEEE Symposium on Logic in Computer Science (LICS 1998) (1998)

    Google Scholar 

  16. Kupferman, O., Vardi, M.Y.: Model Checking of Safety Properties. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 172–183. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  17. Lee, S., Kannan, M., Kim, O.: Runtime Assurance Based on Formal Specifications. In: Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (1999)

    Google Scholar 

  18. Manna, Z., Bjørner, N., Browne, A., et al.: An update on STeP: Deductive-algorithmic verification of reactive systems. In: Tool Support for System Specification, Development and Verification. LNCS, Springer, Heidelberg (1998)

    Google Scholar 

  19. Manna, Z., Pnueli, A.: Temporal verification of reactive systems: Safety. Springer, Heidelberg (1995)

    Google Scholar 

  20. O’Malley, T., Richardson, D., Dillon, L.: Efficient Specification-Based Oracles for Critical Systems. In: Proceedings of the California Software Symposium (1996)

    Google Scholar 

  21. Richardson, D.J., Aha, S.L., O’Malley, T.O.: Specification-Based Test Oracles for Reactive Systems. In: Proceedings of the Fourteenth International Conference on Software Engineering (ICSE 1992) (1992)

    Google Scholar 

  22. Roşu, G.: Hidden Logic. PhD thesis, University of California at San Diego (2000)

    Google Scholar 

  23. Roşu, G., Viswanathan, M.: Testing extended regular language membership incrementally by rewriting. In: Nieuwenhuis, R. (ed.) RTA 2003. LNCS, vol. 2706. Springer, Heidelberg (2003)

    Google Scholar 

  24. Sen, K., Roşu, G.: Generating Optimal Monitors for Extended Regular Expressions. In: Proceedings of Runtime Verification (RV 2003). ENTCS, vol. 89(2). Elsevier, Amsterdam (2003) (to appear)

    Google Scholar 

  25. Sen, K., Roşu, G., Agha, G.: Runtime Safety Analysis of Multithreaded Programs. In: ACM SIGSOFT Conference on the Foundations of Software Engineering / European Software Engineering Conference (FSE / ESEC 2003), Helsinki, Finland (2003)

    Google Scholar 

  26. Stoller, S.D.: Model-Checking Multi-threaded Distributed Java Programs. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  27. Visser, W., Havelund, K., Brat, G., Park, S.: Model Checking Programs. In: Proceedings, The 15th IEEE International Conference on Automated Software Engineering (ASE 2000), September 2000. IEEE CS Press, Los Alamitos (2000)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sen, K., Roşu, G., Agha, G. (2003). Generating Optimal Linear Temporal Logic Monitors by Coinduction. In: Saraswat, V.A. (eds) Advances in Computing Science – ASIAN 2003. Progamming Languages and Distributed Computation Programming Languages and Distributed Computation. ASIAN 2003. Lecture Notes in Computer Science, vol 2896. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-40965-6_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-40965-6_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20632-3

  • Online ISBN: 978-3-540-40965-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics