ACM Transactions on Programming Languages and Systems (TOPLAS)
A generalization of Owicki-Gries's Hoare logic for a concurrent while language
Theoretical Computer Science - Thirteenth International Colloquim on Automata, Languages and Programming, Renne
Parallel program design: a foundation
Parallel program design: a foundation
The Failure of Failures in a Paradigm for Asynchronous Communication
CONCUR '91 Proceedings of the 2nd International Conference on Concurrency Theory
Modular Verification for Shared-Variable Concurrent Programs
CONCUR '96 Proceedings of the 7th International Conference on Concurrency Theory
COORDINATION '97 Proceedings of the Second International Conference on Coordination Languages and Models
On the Semantics of Fair Parallelism
Proceedings of the Abstract Software Specifications, 1979 Copenhagen Winter School
Stepwise Refinement of Action Systems
Proceedings of the International Conference on Mathematics of Program Construction, 375th Anniversary of the Groningen University
Nets, Terms and Formulas (Cambridge Tracts in Theoretical Computer Science)
Nets, Terms and Formulas (Cambridge Tracts in Theoretical Computer Science)
Communication and Parallelism Introduction and Elimination in Imperative Concurrent Programs
SAS '01 Proceedings of the 8th International Symposium on Static Analysis
Towards a Unified Development Methodology for Shared-Variable Parallel and Distributed Programs
IFM '00 Proceedings of the Second International Conference on Integrated Formal Methods
Hi-index | 0.00 |
We present a refinement calculus for shared-variable parallelprograms. The calculus allows the stepwise formal derivation of a low-level implementation from a trusted high-level specification. It is based on a trace-theoretic semantic model that supports local variable declaration and fair parallel composition. Compositionality is achieved through assumption-commitment reasoning. The refinement rules are syntax-directed in the sense that each rule corresponds to a specific language construct. The calculus is applicable to terminating and nonterminating programs and supports reasoning about liveness properties like termination and eventual entry. A detailed example is given and related work is reviewed.