Shared mutable objects pose grave challenges in reasoning, especially for data abstraction and modularity. This paper presents a novel logic for erroravoiding partial correctness o...
Anindya Banerjee, David A. Naumann, Stan Rosenberg
SEQUEL is a new-generation functional programming language, which allows the specification of types in a notation based on the sequent calculus. The sequent calculus notation suff...
This paper presents a model checking algorithm for Propositional Dynamic Logic (PDL) with looping, repeat, test, intersection, converse, program complementation as well as context...
We study the relationship between Concurrent Separation Logic (CSL) and the assume-guarantee (A-G) method (a.k.a. rely-guarantee method). We show in three steps that CSL can be tre...
We show how to reason about “step-indexed” logitions in an abstract way, avoiding the tedious, error-prone, and proof-obscuring step-index arithmetic that seems superficially...