On A Parameterized Theory of Dynamic Logic for Operationally-based Programs

On A Parameterized Theory of Dynamic Logic for Operationally-based Programs
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

Applying dynamic logics to program verifications is a challenge, because their axiomatic rules for regular expressions can be difficult to be adapted to different program models. We present a novel dynamic logic, called DLp, which supports reasoning based on programs’ operational semantics. For those programs whose transitional behaviours are their standard or natural semantics, DLp makes their verifications easier since one can directly apply the program transitions for reasoning, without the need of re-designing and validating new rules as in most other dynamic logics. DLp is parametric. It provides a model-independent framework consisting of a relatively small set of inference rules, which depends on a given set of trustworthy rules for the operational semantics. These features of DLp let multiple models easily compared in its framework and makes it compatible with existing dynamic-logic theories. DLp supports cyclic reasoning, providing an incremental derivation process for recursive programs, making it more convenient to reason about without prior program transformations. We analyze and prove the soundness and completeness of DLp under certain conditions. Several case studies illustrate the features of DLp and fully demonstrate its potential usage.


💡 Research Summary

The paper addresses a long‑standing difficulty in applying dynamic logics to program verification: most existing dynamic‑logic frameworks are built on denotational semantics and require a large, language‑specific set of axioms that must be painstakingly designed, proved sound, and often re‑validated for each new programming language. This problem is especially acute for mainstream languages such as Java, C, or synchronous languages like Esterel, where the semantics are complex and the rule bases become unwieldy (e.g., KeY’s 500+ rules for Java).

To overcome these limitations, the authors introduce DL𝔭, a parameterized dynamic logic that works directly with a program’s operational semantics. The key idea is to attach an explicit label σ to a dynamic formula, yielding a labeled formula **σ :


Comments & Academic Discussion

Loading comments...

Leave a Comment