Abstract
One of the major challenges in computer science is to put programming on a firmer mathematical basis, in order to improve the correctness of programs. This paper describes a concrete implementation of a semantic-based approach for verifying termination of open nondeterministic programs with finite data types. The presentation is focused on Erratic Idealized Algol, which represents a nondeterministic programming language that embodies many of the core ingredients of imperative and higher-order functional languages. The fully abstract game semantics of the language is used to obtain a compositional, incremental way of generating accurate models of programs. The CSP process algebra is used as a concrete formalism for representation of game models and their efficient verification. Termination of programs is decided by checking divergence-freedom of CSP processes using the FDR tool. The effectiveness of this method is presented by several examples.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abramsky, S., Ghica, D.R., Murawski, A.S., Ong, C.H.L.: Applying game semantics to compositional software modeling and verification. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 421–435. Springer, Heidelberg (2004)
Ball, T., Rajamani, S.K.: Automatically validating temporal safety properties of interfaces. In: Dwyer, M.B. (ed.) SPIN 2001. LNCS, vol. 2057, pp. 103–122. Springer, Heidelberg (2001)
Clarke, E.M., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 154–169. Springer, Heidelberg (2000)
Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (2000)
Cook, B., Podelski, A., Rybalchenko, A.: Abstraction refinement for termination. In: Hankin, C., Siveroni, I. (eds.) SAS 2005. LNCS, vol. 3672, pp. 86–101. Springer, Heidelberg (2005)
Dimovski, A.: Software Verification Based on Game Semantics and Process Algebra. VDM Verlag (2009)
Dimovski, A., Ghica, D.R., Lazić, R.S.: Data-abstraction refinement: A game semantic approach. In: Hankin, C., Siveroni, I. (eds.) SAS 2005. LNCS, vol. 3672, pp. 102–117. Springer, Heidelberg (2005)
Dimovski, A., Lazic, R.: Compositional software verification based on game semantics and process algebras. International Journal on Software Tools for Technology Transfer (STTT) 9(1), 37–51 (2007)
Formal Systems (Europe) Ltd. Failures-Divergence Refinement: FDR2 Manual (2000), http://www.fsel.com
Ghica, D.R., Murawski, A.S.: Angelic semantics of fine-grained concurrency. In: Walukiewicz, I. (ed.) FOSSACS 2004. LNCS, vol. 2987, pp. 211–225. Springer, Heidelberg (2004)
Graf, S., Saidi, H.: Construction of abstract state graphs with pvs. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 72–83. Springer, Heidelberg (1997)
Harmer, R.: Games and Full Abstraction for Nondeterministic Languages. Ph.D. Thesis. University of London, Imperial College (1999)
Henzinger, T.A., Jhala, R., Majumdar, R., Sutre, G.: Software verification with BLAST. In: Ball, T., Rajamani, S.K. (eds.) SPIN 2003. LNCS, vol. 2648, pp. 235–239. Springer, Heidelberg (2003)
Legay, A., Murawski, A.S., Ouaknine, J., Worrell, J.B.: On automated verification of probabilistic programs. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 173–187. Springer, Heidelberg (2008)
Murawski, A.: Reachability Games and Game Semantics: Comparing Nondeterministic Programs. In: Proceedings of LICS, pp. 173–183. IEEE, Los Alamitos (2008)
Roscoe, A.W.: Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1998)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dimovski, A. (2011). A Compositional Method for Deciding Program Termination. In: Gusev, M., Mitrevski, P. (eds) ICT Innovations 2010. ICT Innovations 2010. Communications in Computer and Information Science, vol 83. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19325-5_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-19325-5_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-19324-8
Online ISBN: 978-3-642-19325-5
eBook Packages: Computer ScienceComputer Science (R0)