Abstract. We propose a new typing system for the π-calculus with sessions, which ensures the progress property, i.e. once a session has been initiated, typable processes will never starve at session channels. In the current literature progress for session types has been guaranteed only in the case of nested sessions, disallowing more than two session channels interfered in a single thread. This was a severe restriction since many structured communications need combinations of sessions. We overcome this restriction by inferring the order of channel usage, but avoiding any tagging of channels and names, neither explicit nor inferred. The simplicity of the typing system essentially relies on the session typing discipline, where sequencing and branching of communications are already structured by types. The resulting typing enjoys a stronger progress property than that one in the literature: it assures that for each well-typed process P which contains an open session there is an irreducible process Q such that the parallel composition P|Q is well-typed too and it always reduces, also in presence of interfered sessions.
We propose a refinement and a simplification of the behavioural semantics of session types, based on the concepts of compliance and subbehaviour from the theory of web contracts. We introduce three relations on a suitable class of behaviours with higher-order input/output, called "session behaviors". Such relations, depending on each other, represent the idea of sub-behaviour from the point of view of a client, a server or a peer, respectively. A restriction of the intersection of the first two characterizes the usual sub-behaviour relation (from the literature). We then device a formal system for three subtyping relations (dubbed CSPsubtyping) for session types that takes into account the role played by a user of a channel during an interaction, so extending Gay and Hole subtyping theory. We show that our session behaviors and sub-behaviour relations provide a sound and complete semantics for CSP-subtyping (and for Gay and Hole subtyping as a by-product).
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.