Calculational Design of [In]Correctness Transformational Program Logics by Abstract Interpretation
Creators
Description
This is the 66 pages full version (paper + appendix) with clickable hyper-references of the paper
Patrick Cousot. 2024. Calculational Design of [In]Correctness Transformational Program Logics by Abstract Interpretation. Proc. ACM Program. Lang. 8, POPL, Article 7 (January 2024), 34 pages. https://doi.org/10.1145/ 3632849
We study transformational program logics for correctness and incorrectness that we extend to explicitly handle both termination and nontermination. We show that the logics are abstract interpretations of the right image transformer for a natural relational semantics covering both finite and infinite executions. This understanding of logics as abstractions of a semantics facilitates their comparisons through their respective abstractions of the semantics (rather that the much more difficult comparison through their formal proof systems). More importantly, the formalization provides a calculational method for constructively designing the sound and complete formal proof system by abstraction of the semantics. As an example, we extend Hoare logic to cover all possible behaviors of nondeterministic programs and design a new precondition (in)correctness logic.
Files
cousot-POPL2024.pdf
Files
(1.9 MB)
Name | Size | Download all |
---|---|---|
md5:08c1e534c369bcd2f0c7006874f4f080
|
1.9 MB | Preview Download |