Conference item
Hybrid multiparty session types: compositionality for protocol specification through endpoint projection
- Abstract:
- Multiparty session types (MPST) are a specification and verification framework for distributed message-passing systems. The communication protocol of the system is specified as a global type, from which a collection of local types (local process implementations) is obtained by endpoint projection. A global type is a single disciplining entity for the whole system, specified by one designer that has full knowledge of the communication protocol. On the other hand, distributed systems are often described in terms of their components: a different designer is in charge of providing a subprotocol for each component. The problem of modular specification of global protocols has been addressed in the literature, but the state of the art focuses only on dual input/output compatibility. Our work overcomes this limitation. We propose the first MPST theory of multiparty compositionality for distributed protocol specification that is semantics-preserving, allows the composition of two or more components, and retains full MPST expressiveness. We introduce hybrid types for describing subprotocols interacting with each other, define a novel compatibility relation, explicitly describe an algorithm for composing multiple subprotocols into a well-formed global type, and prove that compositionality preserves projection, thus retaining semantic guarantees, such as liveness and deadlock freedom. Finally, we test our work against real-world case studies and we smoothly extend our novel compatibility to MPST with delegation and explicit connections.
- Publication status:
- Published
- Peer review status:
- Peer reviewed
Actions
Access Document
- Files:
-
-
(Preview, Version of record, pdf, 418.7KB, Terms of use)
-
- Publisher copy:
- 10.1145/3586031
Authors
- Publisher:
- Association for Computing Machinery
- Journal:
- Proceedings of the ACM on Programming Languages More from this journal
- Volume:
- 7
- Issue:
- OOPSLA1
- Pages:
- 112-142
- Publication date:
- 2023-04-06
- Acceptance date:
- 2023-02-22
- Event title:
- Object-oriented Programming, Systems, Languages, and Applications 2023 (OOPSLA 2023)
- Event location:
- Cascais, Portugal
- Event website:
- https://2023.splashcon.org/track/splash-2023-oopsla
- Event start date:
- 2023-10-22
- Event end date:
- 2023-10-27
- DOI:
- EISSN:
-
2475-1421
- Language:
-
English
- Keywords:
- Pubs id:
-
1329560
- Local pid:
-
pubs:1329560
- Deposit date:
-
2023-02-22
Terms of use
- Copyright holder:
- Gheri and Yoshida
- Copyright date:
- 2023
- Rights statement:
- © 2023 Copyright held by the owner/author(s). This work is licensed under a Creative Commons Attribution 4.0 International License.
- Licence:
- CC Attribution (CC BY)
If you are the owner of this record, you can report an update to it here: Report update to this record