A Logical Account of Subtyping for Session Types

04/13/2023
by   Ross Horne, et al.
0

We study the notion of subtyping for session types in a logical setting, where session types are propositions of multiplicative/additive linear logic extended with least and greatest fixed points. The resulting subtyping relation admits a simple characterization that can be roughly spelled out as the following lapalissade: every session type is larger than the smallest session type and smaller than the largest session type. At the same time, we observe that this subtyping, unlike traditional ones, preserves termination in addition to the usual safety properties of sessions. We present a calculus of sessions that adopts this subtyping relation and we show that subtyping, while useful in practice, is superfluous in the theory: every use of subtyping can be "compiled away" via a coercion semantics.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/15/2017

Timed Session Types

Timed session types formalise timed communication protocols between two ...
research
10/16/2020

Relating Functional and Imperative Session Types

Imperative session types provide an imperative interface to session-type...
research
04/03/2020

Session Type Systems based on Linear Logic: Classical versus Intuitionistic

Session type systems have been given logical foundations via Curry-Howar...
research
09/01/2023

Logical Relations for Session-Typed Concurrency

Program equivalence is the fulcrum for reasoning about and proving prope...
research
04/29/2021

Session Logical Relations for Noninterference

Information flow control type systems statically restrict the propagatio...
research
06/15/2020

Parametrized Fixed Points on O-Categories and Applications to Session Types

O-categories generalize categories of domains to provide just the struct...
research
09/28/2020

Ferrite: A Judgmental Embedding of Session Types in Rust

This article introduces Ferrite, a shallow embedding of session types in...

Please sign up or login with your details

Forgot password? Click here to reset