论文标题

异步多党会话的精确亚型

Precise Subtyping for Asynchronous Multiparty Sessions

论文作者

Ghilezan, Silvia, Pantović, Jovanka, Prokić, Ivan, Scalas, Alceste, Yoshida, Nobuko

论文摘要

本文介绍了异步多党会议的精确亚型关系的第一个形式化。我们表明,我们的亚型关系是合理的(即保证安全的过程更换),并且也完成:关系的任何扩展都不符合。为了实现我们的结果,我们开发了一种新颖的会话分解技术,从完整的会话类型(包括内部/外部选择)到单个输入/输出会话树(无需选择)。先前的工作研究精确的二进制会话(只有两个参与者)或多党会议(与任何数量的参与者)和同步相互作用进行精确亚型。在这里,我们介绍了具有异步相互作用的多方会话,其中消息是通过FIFO队列传输的(如TCP/IP协议中的),并证明我们的子类型在操作上是在操作上和指示性精确的。在异步多党设置中,找到确切的亚型关系是一项高度复杂的任务:这是因为在某些条件下,参与者可以通过更早或以后收到一些消息,而不会引起误差,从而可以将其输入和输出的顺序置于其输入和输出的顺序。确切的亚型关系必须捕获所有此类有效的排列,因此,其形式化,推理和证据变得具有挑战性。我们的会话分解技术克服了这种复杂性,将亚型关系表示为单个输入/输出树之间的完善关系组成,并为异步消息优化提供了简单的推理原理。

This paper presents the first formalisation of the precise subtyping relation for asynchronous multiparty sessions. We show that our subtyping relation is sound (i.e., guarantees safe process replacement) and also complete: any extension of the relation is unsound. To achieve our results, we develop a novel session decomposition technique, from full session types (including internal/external choices) into single input/output session trees (without choices). Previous work studies precise subtyping for binary sessions (with just two participants), or multiparty sessions (with any number of participants) and synchronous interaction. Here, we cover multiparty sessions with asynchronous interaction, where messages are transmitted via FIFO queues (as in the TCP/IP protocol), and prove that our subtyping is both operationally and denotationally precise. In the asynchronous multiparty setting, finding the precise subtyping relation is a highly complex task: this is because, under some conditions, participants can permute the order of their inputs and outputs, by sending some messages earlier or receiving some later, without causing errors; the precise subtyping relation must capture all such valid permutations -- and consequently, its formalisation, reasoning and proofs become challenging. Our session decomposition technique overcomes this complexity, expressing the subtyping relation as a composition of refinement relations between single input/output trees, and providing a simple reasoning principle for asynchronous message optimisations.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源