Abstract
Total correctness assertions (TCAs) have long been considered a natural formalization of successful program termination. However, research dating back to the 1980s suggests that validity of TCAs is a notion of limited interest; we corroborate this by proving compactness and Herbrand properties for the valid TCAs, defining in passing a new sound, complete, and syntax-directed deductive system for TCAs.
It follows that proving TCAs whose truth depends on underlying inductive data-types is impossible in logics of programs that are sound for all structures, such as Dynamic Logic (DL) based on Segerberg-Pratt’s PDL, even when augmented with powerful first-order theories like Peano Arithmetic. The Convergence Rule of [6] bypasses this difficulty, but is methodologically and conceptually problematic, in addition to being unsound for general validity. We propose instead to bind variables to inductive data via DL’s box operator, leading to an alternative formalization of termination assertions, which we dub Inductive TCA (ITCA). We show that validity of ITCAs is directly reducible to validity of partial correctness assertions, confirming the foundational importance of the latter.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Andreka, H., Nemeti, I., Sain, I.: A complete logic for reasoning about programs via nonstandard model theory, Parts I and II. Theoretical Computer Science 17, 193–212, 259–278 (1982)
Bergstra, J.A., Tucker, J.V.: Hoare’s Logic and Peano’s Arithmetic. Theoretical Computer Science 22, 265–284 (1983)
Gries, D. (ed.): The science of programming. Springer, Berlin (1981)
Hajek, P.: Arithmetical interpretations of Dynamic Logic. Jourmal of Symbolic Logic 48, 704–713 (1983)
Hajek, P.: A simple dynamic logic. Theoretical Computer Science 46, 239–259 (1986)
Harel, D.: First-Order Dynamic Logic. LNCS, vol. 68. Springer, Heidelberg (1979)
Harel, D., Kozen, D., Tiuryn, J.: Dynamic Logic. MIT Press, Cambridge (2000)
Kreisel, G.: Survey of proof theory. Journal of symbolic Logic 33, 321–388 (1968)
Leivant, D.: Logical and mathematical reasoning about imperative programs. In: Conference Record of the Twelfth Annual Symposium on Principles of Programming Languages, pp. 132–140. ACM, New York (1985)
Leivant, D.: Partial corretness assertions provable in dynamic logics. In: Walukiewicz, I. (ed.) FOSSACS 2004. LNCS, vol. 2987, Springer, Heidelberg (2004)
Leivant, D.: Proving termination assertions in dynamic logics. In: Nineteenth Symposium on Logic in Computer Science, pp. 89–99. IEEE Computer Society Press, Washington (2004)
Meyer, A., Halpern, J.: Axiomatic definition of programming languages: a theoretical assessment. Journal of the ACM 29, 555–576 (1982)
Meyer, A., Mitchell, J.: Termination assertions for recursive programs: completeness and axiomatic definability. Information and Control 56, 112–138 (1983)
Sain, I.: Total correctness in nonstandard logics of programs. Theoretical Computer Science 50, 285–321 (1987)
Schmitt, P.H.: Diamond formulas: A fragment of Dynamic Logic with recursive enumerable validity problem. Information and Computation 61, 147–158 (1984)
Segerberg, K.: A completeness theorem in the modal logic of programs (preliminary report). Notics of the American Mathematical Society 24(6), A–552 (1977)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Leivant, D. (2008). Reasoning in Dynamic Logic about Program Termination. In: Avron, A., Dershowitz, N., Rabinovich, A. (eds) Pillars of Computer Science. Lecture Notes in Computer Science, vol 4800. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78127-1_23
Download citation
DOI: https://doi.org/10.1007/978-3-540-78127-1_23
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-78126-4
Online ISBN: 978-3-540-78127-1
eBook Packages: Computer ScienceComputer Science (R0)