TY - JOUR
T1 - A capability calculus for concurrency and determinism
AU - Terauchi, Tachio
AU - Aiken, Alex
PY - 2008/8/1
Y1 - 2008/8/1
N2 - This article presents a static system for checking determinism (technically, partial confluence) of communicating concurrent processes. Our approach automatically detects partial confluence in programs communicating via a mix of different kinds of communication methods: rendezvous channels, buffered channels, broadcast channels, and reference cells. Our system reduces the partial confluence checking problem in polynomial time (in the size of the program) to the problem of solving a system of rational linear inequalities, and is thus efficient.
AB - This article presents a static system for checking determinism (technically, partial confluence) of communicating concurrent processes. Our approach automatically detects partial confluence in programs communicating via a mix of different kinds of communication methods: rendezvous channels, buffered channels, broadcast channels, and reference cells. Our system reduces the partial confluence checking problem in polynomial time (in the size of the program) to the problem of solving a system of rational linear inequalities, and is thus efficient.
KW - Capabilities
KW - Determinism
KW - Type systems
UR - http://www.scopus.com/inward/record.url?scp=51849136830&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=51849136830&partnerID=8YFLogxK
U2 - 10.1145/1387673.1387676
DO - 10.1145/1387673.1387676
M3 - Article
AN - SCOPUS:51849136830
SN - 0164-0925
VL - 30
JO - ACM Transactions on Programming Languages and Systems
JF - ACM Transactions on Programming Languages and Systems
IS - 5
M1 - 27
ER -