Compositional Reasoning for Explicit Resource Management in Channel-Based Concurrency

Adrian Francalanza,Edsko DeVries,Matthew Hennessy
DOI: https://doi.org/10.2168/lmcs-10(2:15)2014
2014-06-26
Logical Methods in Computer Science
Abstract:We define a pi-calculus variant with a costed semantics where channels are treated as resources that must explicitly be allocated before they are used and can be deallocated when no longer required. We use a substructural type system tracking permission transfer to construct coinductive proof techniques for comparing behaviour and resource usage efficiency of concurrent processes. We establish full abstraction results between our coinductive definitions and a contextual behavioural preorder describing a notion of process efficiency w.r.t. its management of resources. We also justify these definitions and respective proof techniques through numerous examples and a case study comparing two concurrent implementations of an extensible buffer.
computer science, theory & methods,logic
What problem does this paper attempt to address?