Concurrent Kleene Algebra and its Foundations

https://doi.org/10.1016/j.jlap.2011.04.005Get rights and content
Under an Elsevier user license
open archive

Abstract

A Concurrent Kleene Algebra offers two composition operators, related by a weak version of an exchange law: when applied in a trace model of program semantics, one of them stands for sequential execution and the other for concurrent execution of program components. After introducing this motivating concrete application, we investigate its abstract background in terms of a primitive independence relation between the traces. On this basis, we develop a series of richer algebras the richest validates a proof calculus for programs similar to that of a Jones style rely/guarantee calculus. On the basis of this abstract algebra, we finally reconstruct the original trace model, using the notion of atoms from lattice theory.

Keywords

Concurrency
Dependence
Algebra
Hoare calculus
Rely/guarantee calculus

Cited by (0)

Significantly extended and revised version of [21,22].