On the progress of communication between two finite state machines
Information and Control
On Communicating Finite-State Machines
Journal of the ACM (JACM)
Language Primitives and Type Discipline for Structured Communication-Based Programming
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
Secure Implementations for Typed Session Abstractions
CSF '07 Proceedings of the 20th IEEE Computer Security Foundations Symposium
Multiparty asynchronous session types
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Global Progress in Dynamically Interleaved Multiparty Sessions
CONCUR '08 Proceedings of the 19th international conference on Concurrency Theory
Verification of programs with half-duplex communication
Information and Computation
Buffered communication analysis in distributed multiparty sessions
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Dynamic multirole session types
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Safe parallel programming with session Java
COORDINATION'11 Proceedings of the 13th international conference on Coordination models and languages
On global types and multi-party sessions
FMOODS'11/FORTE'11 Proceedings of the joint 13th IFIP WG 6.1 and 30th IFIP WG 6.1 international conference on Formal techniques for distributed systems
On asynchronous session semantics
FMOODS'11/FORTE'11 Proceedings of the joint 13th IFIP WG 6.1 and 30th IFIP WG 6.1 international conference on Formal techniques for distributed systems
Secure distributed programming with value-dependent types
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Deciding choreography realizability
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Parameterised multiparty session types
FOSSACS'10 Proceedings of the 13th international conference on Foundations of Software Science and Computational Structures
Efficient session type guided distributed interaction
COORDINATION'10 Proceedings of the 12th international conference on Coordination Models and Languages
Synchronizability for verification of asynchronously communicating systems
VMCAI'12 Proceedings of the 13th international conference on Verification, Model Checking, and Abstract Interpretation
Reliable contracts for unreliable half-duplex communications
WS-FM'11 Proceedings of the 8th international conference on Web Services and Formal Methods
Multiparty session c: safe parallel programming with message optimisation
TOOLS'12 Proceedings of the 50th international conference on Objects, Models, Components, Patterns
Deadlock-freedom-by-design: multiparty asynchronous global programming
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ICALP'13 Proceedings of the 40th international conference on Automata, Languages, and Programming - Volume Part II
An interface theory for service-oriented design
Theoretical Computer Science
Hi-index | 0.00 |
Communicating finite state machines (CFSMs) represent processes which communicate by asynchronous exchanges of messages via FIFO channels. Their major impact has been in characterising essential properties of communications such as freedom from deadlock and communication error, and buffer boundedness. CFSMs are known to be computationally hard: most of these properties are undecidable even in restricted cases. At the same time, multiparty session types are a recent typed framework whose main feature is its ability to efficiently enforce these properties for mobile processes and programming languages. This paper ties the links between the two frameworks to achieve a two-fold goal. On one hand, we present a generalised variant of multiparty session types that have a direct semantical correspondence to CFSMs. Our calculus can treat expressive forking, merging and joining protocols that are absent from existing session frameworks, and our typing system can ensure properties such as safety, boundedness and liveness on distributed processes by a polynomial time type checking. On the other hand, multiparty session types allow us to identify a new class of CFSMs that automatically enjoy the aforementioned properties , generalising Gouda et al's work [12] (for two machines) to an arbitrary number of machines.