POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Typed memory management in a calculus of capabilities
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ACM Transactions on Programming Languages and Systems (TOPLAS)
Enforcing high-level protocols in low-level software
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Flow-sensitive type qualifiers
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
On Asynchronous Communication Semantics
ECOOP '91 Proceedings of the Workshop on Object-Based Concurrent Computing
Static Analysis of Communication for Asynchronous Concurrent Programming Languages
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Alias Types for Recursive Data Structures
TIC '00 Selected papers from the Third International Workshop on Types in Compilation
State Space Reduction by Proving Confluence
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
FLEETzero: An Asynchronous Switching Experiment
ASYNC '01 Proceedings of the 7th International Symposium on Asynchronous Circuits and Systems
Typing correspondence assertions for communication protocols
Theoretical Computer Science
A generic type system for the Pi-calculus
Theoretical Computer Science
Strong normalisation in the π-calculus
Information and Computation
SHIM: a deterministic model for heterogeneous embedded systems
Proceedings of the 5th ACM international conference on Embedded software
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Software and the Concurrency Revolution
Queue - Multiprocessors
Checking interference with fractional permissions
SAS'03 Proceedings of the 10th international conference on Static analysis
Operational determinism and fast algorithms
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
A capability calculus for concurrency and determinism
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
Type-Based Automated Verification of Authenticity in Cryptographic Protocols
ESOP '09 Proceedings of the 18th European Symposium on Programming Languages and Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Polymorphic Fractional Capabilities
SAS '09 Proceedings of the 16th International Symposium on Static Analysis
A type and effect system for deterministic parallel Java
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Fractional Ownerships for Safe Memory Deallocation
APLAS '09 Proceedings of the 7th Asian Symposium on Programming Languages and Systems
A hybrid type system for lock-freedom of mobile processes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Types, regions, and effects for safe programming with object-oriented parallel frameworks
Proceedings of the 25th European conference on Object-oriented programming
Proceedings of the 10th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software
Deterministic parallelism via liquid effects
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
A type and effect system for determinism in multithreaded programs
ESOP'12 Proceedings of the 21st European conference on Programming Languages and Systems
Yada: Straightforward parallel programming
Parallel Computing
Towards a practical secure concurrent language
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Alias control for deterministic parallelism
Aliasing in Object-Oriented Programming
Aliasing in Object-Oriented Programming
Hi-index | 0.00 |
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.