Depending on Session-Typed Processes

01/24/2018
by   Bernardo Toninho, et al.
0

This work proposes a dependent type theory that combines functions and session-typed processes (with value dependencies) through a contextual monad, internalising typed processes in a dependently-typed lambda-calculus. The proposed framework, by allowing session processes to depend on functions and vice-versa, enables us to specify and statically verify protocols where the choice of the next communication action can depend on specific values of received data. Moreover, the type theoretic nature of the framework endows us with the ability to internally describe and prove predicates on process behaviours. Our main results are type soundness of the framework, and a faithful embedding of the functional layer of the calculus within the session-typed layer, showcasing the expressiveness of dependent session types.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/02/2017

On Polymorphic Sessions and Functions: A Tale of Two (Fully Abstract) Encodings

This work exploits the logical foundation of session types to determine ...
research
06/10/2019

Minimal Session Types (Extended Version)

Session types are a type-based approach to the verification of message-p...
research
11/02/2019

Label-Dependent Session Types

Session types have emerged as a typing discipline for communication prot...
research
07/31/2018

Multiparty Dependent Session Types (Extended Abstract)

Programs are more distributed and concurrent today than ever before, and...
research
05/02/2022

Functions as Processes: The Case of Collapsing Non-determinism

This paper studies typed translations of λ-calculi into π-calculi, both ...
research
02/04/2019

A Session Type System for Asynchronous Unreliable Broadcast Communication

Session types are formal specifications of communication protocols, allo...
research
01/13/2020

Session Types with Arithmetic Refinements and Their Application to Work Analysis

Session types statically prescribe bidirectional communication protocols...

Please sign up or login with your details

Forgot password? Click here to reset