Assuming Just Enough Fairness to make Session Types Complete for Lock-freedom

  title={Assuming Just Enough Fairness to make Session Types Complete for Lock-freedom},
  author={R. V. Glabbeek and P. H{\"o}fner and Ross Horne},
  journal={2021 36th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)},
We investigate how different fairness assumptions affect results concerning lock-freedom, a typical liveness property targeted by session type systems. We fix a minimal session calculus and systematically take into account all known fairness assumptions, thereby identifying precisely three interesting and semantically distinct notions of lock-freedom, all of which having a sound session type system. We then show that, by using a general merge operator in an otherwise standard approach to global… Expand

Figures from this paper


Weak and Strong Fairness in CCS
A distinguishing feature of the weak fair calculus, unlike standard approaches which appeal to random assignment, is that it does not involve predictive choice. Expand
Fair Subtyping for Multi-party Session Types
An original and remarkably simple coinductive characterization of the fair testing preorder for nondeterministic, sequential processes consisting of internal choices of outputs and external choices of inputs is provided. Expand
Progress as Compositional Lock-Freedom
A conservative extension of catalysers that does not depend on types is developed, generalising the notion of progress to untyped session-based processes and leads to a novel characterisation of progress in terms of the standard notion of lock-freedom. Expand
Guaranteeing liveness in an object calculus through behavioural typing
The present paper provides for the incremental extension of well-typed (and well-behaved) configrations: when the code of an object is type checked in the context of an interface repository, it can be added a existing configuration while preserving the liveness property. Expand
Less is more: multiparty session types revisited
A new MPST theory is proposed that is less complicated, and yet more general, than the classic one, and does not require global multiparty session types nor binary session type duality, and proves type safety of many more protocols and processes. Expand
Typing Liveness in Multiparty Communicating Systems
This paper generalizes the approach to multiparty sessions following the conversation type approach, while strengthening progress to liveness, and devise an original treatment of recursive types to address challenging configurations that are out of the reach of existing approaches. Expand
A Very Gentle Introduction to Multiparty Session Types
This paper provides a very gentle introduction of the simplest version of multiparty session types for readers who are not familiar with session types nor process calculi. Expand
Appraising fairness in languages for distributed programming
The relations among various languages and models for distributed computation and various possible definitions of fairness are considered. Natural semantic criteria are presented which an acceptableExpand
Subtyping for session types in the pi calculus
The syntax, operational semantics and typing rules of an extended pi calculus are formalized, it is proved that typability guarantees absence of run-time communication errors, and the typing rules are transformed into a practical typechecking algorithm. Expand
Exploring Type-Level Bisimilarity towards More Expressive Multiparty Session Types
This work presents well-formed conditions for global types that guarantee weak bisimilarity between a global type and its endpoint types and proves their check is decidable, which guarantees deadlock-freedom and absence of protocol violations. Expand