TY - JOUR
T1 - Global types with internal delegation
AU - Castellani, Ilaria
AU - Dezani-Ciancaglini, Mariangiola
AU - Giannini, Paola
AU - Horne, Ross
N1 - Publisher Copyright:
© 2019 Elsevier B.V.
PY - 2020/2/6
Y1 - 2020/2/6
N2 - This paper investigates a new form of delegation for multiparty session calculi. Usually, delegation allows a session participant to appoint a participant in another session to act on her behalf. This means that delegation is inherently an inter-session mechanism, which requires session interleaving. Hence delegation falls outside the descriptive power of global types, which specify single sessions. As a consequence, properties such as deadlock-freedom or lock-freedom are difficult to ensure in the presence of delegation. Here we adopt a different view of delegation, by allowing participants to delegate tasks to each other within the same multiparty session. This way, delegation occurs within a single session (internal delegation) and may be captured by its global type. To increase flexibility in the use of delegation, our calculus uses connecting communications, which allow optional participants in the branches of choices. By these means, we are able to express conditional delegation. We present a session type system based on global types with internal delegation, and show that it ensures the usual safety properties of multiparty sessions, together with a progress property.
AB - This paper investigates a new form of delegation for multiparty session calculi. Usually, delegation allows a session participant to appoint a participant in another session to act on her behalf. This means that delegation is inherently an inter-session mechanism, which requires session interleaving. Hence delegation falls outside the descriptive power of global types, which specify single sessions. As a consequence, properties such as deadlock-freedom or lock-freedom are difficult to ensure in the presence of delegation. Here we adopt a different view of delegation, by allowing participants to delegate tasks to each other within the same multiparty session. This way, delegation occurs within a single session (internal delegation) and may be captured by its global type. To increase flexibility in the use of delegation, our calculus uses connecting communications, which allow optional participants in the branches of choices. By these means, we are able to express conditional delegation. We present a session type system based on global types with internal delegation, and show that it ensures the usual safety properties of multiparty sessions, together with a progress property.
KW - Communication-centric systems
KW - Multiparty session types
KW - Process calculi
UR - https://www.scopus.com/pages/publications/85073502116
U2 - 10.1016/j.tcs.2019.09.027
DO - 10.1016/j.tcs.2019.09.027
M3 - Article
SN - 0304-3975
VL - 807
SP - 128
EP - 153
JO - Theoretical Computer Science
JF - Theoretical Computer Science
ER -