Skip to main content

Reasoning in Dynamic Logic about Program Termination

  • Chapter
  • 936 Accesses

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

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.

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   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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. 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)

    Article  MATH  MathSciNet  Google Scholar 

  2. Bergstra, J.A., Tucker, J.V.: Hoare’s Logic and Peano’s Arithmetic. Theoretical Computer Science 22, 265–284 (1983)

    Article  MATH  MathSciNet  Google Scholar 

  3. Gries, D. (ed.): The science of programming. Springer, Berlin (1981)

    MATH  Google Scholar 

  4. Hajek, P.: Arithmetical interpretations of Dynamic Logic. Jourmal of Symbolic Logic 48, 704–713 (1983)

    Article  MATH  MathSciNet  Google Scholar 

  5. Hajek, P.: A simple dynamic logic. Theoretical Computer Science 46, 239–259 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  6. Harel, D.: First-Order Dynamic Logic. LNCS, vol. 68. Springer, Heidelberg (1979)

    MATH  Google Scholar 

  7. Harel, D., Kozen, D., Tiuryn, J.: Dynamic Logic. MIT Press, Cambridge (2000)

    MATH  Google Scholar 

  8. Kreisel, G.: Survey of proof theory. Journal of symbolic Logic 33, 321–388 (1968)

    Article  MATH  MathSciNet  Google Scholar 

  9. 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)

    Google Scholar 

  10. Leivant, D.: Partial corretness assertions provable in dynamic logics. In: Walukiewicz, I. (ed.) FOSSACS 2004. LNCS, vol. 2987, Springer, Heidelberg (2004)

    Google Scholar 

  11. 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)

    Chapter  Google Scholar 

  12. Meyer, A., Halpern, J.: Axiomatic definition of programming languages: a theoretical assessment. Journal of the ACM 29, 555–576 (1982)

    Article  MATH  MathSciNet  Google Scholar 

  13. Meyer, A., Mitchell, J.: Termination assertions for recursive programs: completeness and axiomatic definability. Information and Control 56, 112–138 (1983)

    Article  MATH  MathSciNet  Google Scholar 

  14. Sain, I.: Total correctness in nonstandard logics of programs. Theoretical Computer Science 50, 285–321 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  15. Schmitt, P.H.: Diamond formulas: A fragment of Dynamic Logic with recursive enumerable validity problem. Information and Computation 61, 147–158 (1984)

    MATH  Google Scholar 

  16. Segerberg, K.: A completeness theorem in the modal logic of programs (preliminary report). Notics of the American Mathematical Society 24(6), A–552 (1977)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Arnon Avron Nachum Dershowitz Alexander Rabinovich

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics