2006
DOI: 10.1007/11817949_15
|View full text |Cite
|
Sign up to set email alerts
|

A Capability Calculus for Concurrency and Determinism

Abstract: Abstract. We present a capability calculus for checking partial confluence of channel-communicating concurrent processes. Our approach automatically detects more programs to be partially confluent than previous approaches and is able to handle a mix of different kinds of communication channels, including shared reference cells.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1

Citation Types

0
9
0

Year Published

2006
2006
2014
2014

Publication Types

Select...
5
2

Relationship

2
5

Authors

Journals

citations
Cited by 16 publications
(9 citation statements)
references
References 13 publications
(14 reference statements)
0
9
0
Order By: Relevance
“…To ensure that only safe interactions are specified, the (pre-)LTS must be able to reason compositionally about resource usage between the process, P, and the observer, Γ. We therefore imbue our type assumptions from Section 2 with a permission semantics, in the style of [42,13]. Under this interpretation, type assumptions constitute permissions describing the respective usage of resources.…”
Section: Definition 43 (Renaming Modulo γ)mentioning
confidence: 99%
“…To ensure that only safe interactions are specified, the (pre-)LTS must be able to reason compositionally about resource usage between the process, P, and the observer, Γ. We therefore imbue our type assumptions from Section 2 with a permission semantics, in the style of [42,13]. Under this interpretation, type assumptions constitute permissions describing the respective usage of resources.…”
Section: Definition 43 (Renaming Modulo γ)mentioning
confidence: 99%
“…Finally, data-centric applications such as in-place sorting also tend to reuse data-placeholders during computation, possibly at different types and formats e.g., the code in (1.3), in order to minimise resource usage. Correctness specifications such as the sequent in (1.5) handle this aspect rather naturally as opposed to traditional correctness analysis for message passing programs, such as type systems in [4,36], which often limit channel usage to one form of data.A central assumption underlying our process interpretations is the absence of program interference and the deterministic reduction of processes. In a message-passing paradigm, program interference is caused by races for values, through multiple outputs or inputs competing for shared channels.…”
mentioning
confidence: 99%
“…In cases such as (1.1) above, where channels are reused, rudimentary analysis based on the free names of processes e.g., [1] are too coarse for adequate race detection. Moreover, these type based safety analyses e.g., [4,36] tend to avoid reasoning about data, approximating control over branching as a result.To reason about such interferences in the presence of channel reuse, we define a resourcesemantics for processes, based on linear input and output permissions. Every process is embellished with a set of permissions, ⌈P⌉ ρ , denoting that process P 'owns' the permissions in set ρ (cf.…”
mentioning
confidence: 99%
See 2 more Smart Citations