Crash-Stop Failures in Asynchronous Multiparty Session Types

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Barwell, Adam D., Hou, Ping, Yoshida, Nobuko, Zhou, Fangyi
Formato: Preprint
Publicado: 2023
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866908330076667904
author Barwell, Adam D.
Hou, Ping
Yoshida, Nobuko
Zhou, Fangyi
author_facet Barwell, Adam D.
Hou, Ping
Yoshida, Nobuko
Zhou, Fangyi
contents Session types provide a typing discipline for message-passing systems. However, their theory often assumes an ideal world: one in which everything is reliable and without failures. Yet this is in stark contrast with distributed systems in the real world. To address this limitation, we introduce a new asynchronous multiparty session types (MPST) theory with crash-stop failures, where processes may crash arbitrarily and cease to interact after crashing. We augment asynchronous MPST and processes with crash handling branches, and integrate crash-stop failure semantics into types and processes. Our approach requires no user-level syntax extensions for global types, and features a formalisation of global semantics, which captures complex behaviours induced by crashed/crash handling processes. Our new theory covers the entire spectrum, ranging from the ideal world of total reliability to entirely unreliable scenarios where any process may crash, using optional reliability assumptions. Under these assumptions, we demonstrate the sound and complete correspondence between global and local type semantics, which guarantee deadlock-freedom, protocol conformance, and liveness of well-typed processes by construction, even in the presence of crashes.
format Preprint
id arxiv_https___arxiv_org_abs_2311_11851
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle Crash-Stop Failures in Asynchronous Multiparty Session Types
Barwell, Adam D.
Hou, Ping
Yoshida, Nobuko
Zhou, Fangyi
Logic in Computer Science
Programming Languages
Session types provide a typing discipline for message-passing systems. However, their theory often assumes an ideal world: one in which everything is reliable and without failures. Yet this is in stark contrast with distributed systems in the real world. To address this limitation, we introduce a new asynchronous multiparty session types (MPST) theory with crash-stop failures, where processes may crash arbitrarily and cease to interact after crashing. We augment asynchronous MPST and processes with crash handling branches, and integrate crash-stop failure semantics into types and processes. Our approach requires no user-level syntax extensions for global types, and features a formalisation of global semantics, which captures complex behaviours induced by crashed/crash handling processes. Our new theory covers the entire spectrum, ranging from the ideal world of total reliability to entirely unreliable scenarios where any process may crash, using optional reliability assumptions. Under these assumptions, we demonstrate the sound and complete correspondence between global and local type semantics, which guarantee deadlock-freedom, protocol conformance, and liveness of well-typed processes by construction, even in the presence of crashes.
title Crash-Stop Failures in Asynchronous Multiparty Session Types
topic Logic in Computer Science
Programming Languages
url https://arxiv.org/abs/2311.11851