Skip to main content

UTP and Temporal Logic Model Checking

  • Conference paper

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

Abstract

In this paper we give an additional perspective to the formal verification of programs through temporal logic model checking, which uses Hoare and He Unifying Theories of Programming (UTP). Our perspective emphasizes the use of UTP designs, an alphabetised relational calculus expressed as a pre/post condition pair of relations, to verify state or temporal assertions about programs. The temporal model checking relation is derived from a satisfaction relation between the model and its properties. The contribution of this paper is that it shows a UTP perspective to temporal logic model checking. The approach includes the notion of efficiency found in traditional model checkers, which reduced a state explosion problem through the use of efficient data structures

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Back, R.-J., von Wright, J.: Refinement Calculus, A Systematic Introduction. Springer, Heidelberg (1998)

    MATH  Google Scholar 

  2. Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)

    Article  MATH  Google Scholar 

  3. Butterfield, A., Sherif, A., Woodcock, J.: Slotted-Circus. In: Davies, J., Gibbons, J. (eds.) IFM 2007. LNCS, vol. 4591, pp. 75–97. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  4. Butterfield, A., Woodcock, J.: A “Hardware Compiler” Semantics for Handel-C. Electronic Notes on Theoretical Computer Science 161, 73–90 (2006)

    Article  Google Scholar 

  5. Cavalcanti, A., Clayton, P., O’Halloran, C.: Control Law Diagrams in Circus. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 253–268. Springer, Heidelberg (2005)

    Google Scholar 

  6. Cavalcanti, A., Sampaio, A., Woodcock, J.: Unifying Classes and Processes. Software and System Modeling 4(3), 277–296 (2005)

    Article  Google Scholar 

  7. Cavalcanti, A., Woodcock, J.: Angelic Nondeterminism and Unifying Theories of Programming. Electr. Notes on Theoretical Computer Science 137(2), 45–66 (2005)

    Article  Google Scholar 

  8. Cavalcanti, A., Woodcock, J.: A Tutorial Introduction to CSP in Unifying Theories of Programming. In: Cavalcanti, A., Sampaio, A., Woodcock, J. (eds.) PSSE 2004. LNCS, vol. 3167, pp. 220–268. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  9. Cavalcanti, A., Woodcock, J., Dunne, S.: Angelic Nondeterminism in the Unifying Theories of Programming. Formal Aspects of Computing 18(3), 288–307 (2006)

    Article  MATH  Google Scholar 

  10. Cavalcanti, A., Harwood, W., Woodcock, J.: Pointers and Records in the Unifying Theories of Programming. In: Dunne, S., Stoddart, B. (eds.) UTP 2006. LNCS, vol. 4010, pp. 200–216. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  11. Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (1999)

    Google Scholar 

  12. Cousot, P., Cousot, R.: Software Analysis and Model Checking, pp. 37–56. Springer, Heidelberg (2002)

    Google Scholar 

  13. Freitas, L.: Model Checking Circus. Ph.D. thesis. Department of Computer Science, University of York (2005)

    Google Scholar 

  14. Goldblatt, R.: Modal Logics of Programs. Research Report 94-146, Victoria University of Wellington (1994)

    Google Scholar 

  15. He, J., Liu, Z., Li, X.: rCOS: A refinement calculus of object systems. Theoretical Computer Science 365, 109–142 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  16. Hoare, C.A.R., He, J.: Unifying Theories of Programming. Prentice-Hall, Englewood Cliffs (1998)

    Google Scholar 

  17. von Karger, B., Hoare, C.A.R.: Sequential calculus. Information Processing Letters 53(3), 123–130 (1995)

    Article  MATH  MathSciNet  Google Scholar 

  18. McMillan, K.L.: Symbolic Model Checking: An Approach to the State Explosion Problem. PhD thesis, School of Computer Science, Carnegie Mellon University (1992)

    Google Scholar 

  19. Merz, S.: Model Checking Techniques for the Analysis of Reactive Systems. Synthese, 173–201 (2002)

    Google Scholar 

  20. Qin, S., Dong, J.-S., Chin, W.-N.: A Semantic Foundation for TCOZ in Unifying Theories of Programming. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 321–340. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  21. Santos, T.L.V.L., Cavalcanti, A., Sampaio, A.: Object-Orientation in the UTP. In: Dunne, S., Stoddart, B. (eds.) UTP 2006. LNCS, vol. 4010, pp. 18–37. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  22. Sherif, A., He, J.: Towards a Time Model for Circus. In: George, C.W., Miao, H. (eds.) ICFEM 2002. LNCS, vol. 2495, pp. 613–624. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  23. Tang, X., Woodcock, J.: Travelling Processes. In: Kozen, D. (ed.) MPC 2004. LNCS, vol. 3125, pp. 381–399. Springer, Heidelberg (2004)

    Google Scholar 

  24. Woodcock, J.: Unifying Theories of Parallel Programming. In: Logic and Algebra for Engineering Software. IOS Press, Amsterdam (2002)

    Google Scholar 

  25. Woodcock, J., Cavalcanti, A.: The Semantics of Circus. In: Bert, D., P. Bowen, J., C. Henson, M., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 184–203. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Anderson, H., Ciobanu, G., Freitas, L. (2010). UTP and Temporal Logic Model Checking. In: Butterfield, A. (eds) Unifying Theories of Programming. UTP 2008. Lecture Notes in Computer Science, vol 5713. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14521-6_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-14521-6_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-14520-9

  • Online ISBN: 978-3-642-14521-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics