Asynchronous multiparty session types are a type-based framework that ensures the compatibility of components in a distributed system by specifying a global protocol. Each component can be independently developed and refined locally, before being integrated into a larger system, leading to higher quality distributed software. This paper studies the interplay between global protocols and an asynchronous refinement relation, precise asynchronous multiparty subtyping. This subtyping relation locally optimises asynchronous messaging, enabling a permutation of two actions in a component while still preserving the safety and liveness of the overall composed system. In this paper, we first define the asynchronous association between a global protocol and a set of local (optimised) specifications. We then prove the soundness and completeness of the operational correspondence of this asynchronous association. We demonstrate that the association acts as an invariant to provide type soundness, deadlock-freedom and liveness of a collection of components optimised from the end-point projections of a given global protocol.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Asynchronous Global Protocols, Precisely

  • Kai Pischke,
  • Nobuko Yoshida

摘要

Asynchronous multiparty session types are a type-based framework that ensures the compatibility of components in a distributed system by specifying a global protocol. Each component can be independently developed and refined locally, before being integrated into a larger system, leading to higher quality distributed software. This paper studies the interplay between global protocols and an asynchronous refinement relation, precise asynchronous multiparty subtyping. This subtyping relation locally optimises asynchronous messaging, enabling a permutation of two actions in a component while still preserving the safety and liveness of the overall composed system. In this paper, we first define the asynchronous association between a global protocol and a set of local (optimised) specifications. We then prove the soundness and completeness of the operational correspondence of this asynchronous association. We demonstrate that the association acts as an invariant to provide type soundness, deadlock-freedom and liveness of a collection of components optimised from the end-point projections of a given global protocol.