Reasoning in dynamic logic about program termination

  • Authors:
  • Daniel Leivant

  • Affiliations:
  • Computer Science Department, Indiana University, Bloomington, IN

  • Venue:
  • Pillars of computer science
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

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.