Abstract
We introduce a new way of reasoning about invariance in terms of foot-prints in a Hoare logic for recursive programs with (unbounded) arrays. A foot-print of a statement is a predicate that describes that part of the state that can be changed by the statement. We define invariance of an assertion with respect to a foot-print by means of a logical operation. This new Hoare logic is applied in a new simpler and modular proof of correctness of the well-known Quicksort sorting algorithm.
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
Ahrendt, W., de Boer, F.S., Grabe, I.: Abstract Object Creation in Dynamic Logic. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 612–627. Springer, Heidelberg (2009)
Apt, K.R., de Boer, F.S., Olderog, E.-R.: Verification of Sequential and Concurrent Programs, Texts in Computer Science. Springer (2009)
Apt, K.R.: Ten years of hoare’s logic: A survey part II: nondeterminism. Theor. Comput. Sci. 28, 83–109 (1984)
Beckert, B., Hähnle, R., Schmitt, P.H.: Verification of object-oriented software: The KeY approach. Springer (2007)
Brotherston, J., Kanovich, M.I.: Undecidability of propositional separation logic and its neighbours. J. ACM 61(2), 14 (2014)
Calcagno, C., Yang, H., O’Hearn, P.W.: Computability and Complexity Results for a Spatial Assertion Language for Data Structures. In: Hariharan, R., Mukund, M., Vinay, V. (eds.) FSTTCS 2001. LNCS, vol. 2245, pp. 108–119. Springer, Heidelberg (2001)
Foley, M., Hoare, C.A.R.: Proof of a recursive program: Quicksort. Comput. J. 14(4), 391–395 (1971)
Hoare, C.A.R.: Quicksort. Comput. J. 5(1), 10–15 (1962)
Hoare, C.A.R.: Procedures and parameters: An axiomatic approach. In: Symposium on Semantics of Algorithmic Languages, pp. 102–116 (1971)
Olderog, E.-R.: On the notion of expressiveness and the rule of adaption. Theor. Comput. Sci. 24, 337–347 (1983)
Reynolds, J.C.: An Overview of Separation Logic. In: Meyer, B., Woodcock, J. (eds.) VSTTE 2005. LNCS, vol. 4171, pp. 460–469. Springer, Heidelberg (2008)
Weiß, B.: Deductive Verification of Object-Oriented Software: Dynamic Frames, Dynamic Logic and Predicate Abstraction. PhD thesis, Karlsruhe Institute of Technology (2011)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this chapter
Cite this chapter
de Boer, F.S., de Gouw, S. (2015). Being and Change: Reasoning About Invariance. In: Meyer, R., Platzer, A., Wehrheim, H. (eds) Correct System Design. Lecture Notes in Computer Science(), vol 9360. Springer, Cham. https://doi.org/10.1007/978-3-319-23506-6_13
Download citation
DOI: https://doi.org/10.1007/978-3-319-23506-6_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-23505-9
Online ISBN: 978-3-319-23506-6
eBook Packages: Computer ScienceComputer Science (R0)