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
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Back, R.-J., von Wright, J.: Refinement Calculus, A Systematic Introduction. Springer, Heidelberg (1998)
Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)
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)
Butterfield, A., Woodcock, J.: A “Hardware Compiler” Semantics for Handel-C. Electronic Notes on Theoretical Computer Science 161, 73–90 (2006)
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)
Cavalcanti, A., Sampaio, A., Woodcock, J.: Unifying Classes and Processes. Software and System Modeling 4(3), 277–296 (2005)
Cavalcanti, A., Woodcock, J.: Angelic Nondeterminism and Unifying Theories of Programming. Electr. Notes on Theoretical Computer Science 137(2), 45–66 (2005)
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)
Cavalcanti, A., Woodcock, J., Dunne, S.: Angelic Nondeterminism in the Unifying Theories of Programming. Formal Aspects of Computing 18(3), 288–307 (2006)
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)
Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (1999)
Cousot, P., Cousot, R.: Software Analysis and Model Checking, pp. 37–56. Springer, Heidelberg (2002)
Freitas, L.: Model Checking Circus. Ph.D. thesis. Department of Computer Science, University of York (2005)
Goldblatt, R.: Modal Logics of Programs. Research Report 94-146, Victoria University of Wellington (1994)
He, J., Liu, Z., Li, X.: rCOS: A refinement calculus of object systems. Theoretical Computer Science 365, 109–142 (2006)
Hoare, C.A.R., He, J.: Unifying Theories of Programming. Prentice-Hall, Englewood Cliffs (1998)
von Karger, B., Hoare, C.A.R.: Sequential calculus. Information Processing Letters 53(3), 123–130 (1995)
McMillan, K.L.: Symbolic Model Checking: An Approach to the State Explosion Problem. PhD thesis, School of Computer Science, Carnegie Mellon University (1992)
Merz, S.: Model Checking Techniques for the Analysis of Reactive Systems. Synthese, 173–201 (2002)
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)
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)
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)
Tang, X., Woodcock, J.: Travelling Processes. In: Kozen, D. (ed.) MPC 2004. LNCS, vol. 3125, pp. 381–399. Springer, Heidelberg (2004)
Woodcock, J.: Unifying Theories of Parallel Programming. In: Logic and Algebra for Engineering Software. IOS Press, Amsterdam (2002)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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)