English
Related papers

Related papers: Type-checking Liveness for Collaborative Processes…

200 papers

We propose a local model-checking proof system for a fragment of CTL. The rules of the proof system are motivated by the well-known fixed-point characterisation of CTL based on unfolding of the temporal operators. To guarantee termination…

Logic in Computer Science · Computer Science 2023-09-12 Georg Friedrich Schuppe , Dilian Gurov

We present TLLC which extends the Two-Level Linear dependent type theory (TLL) with session-based concurrency. Equipped with Martin-L\"{o}f style dependency, the session types of TLLC allow protocols to specify properties of communicated…

Programming Languages · Computer Science 2025-10-27 Qiancheng Fu , Hongwei Xi , Ankush Das

We introduce two-sided type systems, which are sequent calculi for typing formulas. Two-sided type systems allow for hypothetical reasoning over the typing of compound program expressions, and the refutation of typing formulas. By…

Programming Languages · Computer Science 2023-10-23 Steven Ramsay , Charlie Walpole

We propose an approach on model checking information flow for imperative language with procedures. We characterize our model with pushdown system, which has a stack of unbounded length that naturally models the execution of procedural…

Cryptography and Security · Computer Science 2010-12-15 Cong Sun , Liyong Tang , Zhong Chen

We present a formalization of session types in a multi-threaded lambda-calculus (MTLC) equipped with a linear type system, establishing for the MTLC both type preservation and global progress. The latter (global progress) implies that the…

Programming Languages · Computer Science 2016-03-14 Hongwei Xi , Zhiqiang Ren , Hanwen Wu , William Blair

Global types are formal specifications that describe communication protocols in terms of their global interactions. We present a new, streamlined language of global types equipped with a trace-based semantics and whose features and…

Programming Languages · Computer Science 2015-07-01 Giuseppe Castagna , Mariangiola Dezani-Ciancaglini , Luca Padovani

Multiparty session types (MPST) provide a rigorous foundation for verifying the safety and liveness of concurrent systems. However, existing approaches often force a difficult trade-off: classical, projection-based techniques are…

Programming Languages · Computer Science 2025-12-01 David Castro-Perez , Francisco Ferreira , Sung-Shik Jongmans

We present the design, implementation, and foundation of a verifier for higher-order functional programs with generics and recursive data types. Our system supports proving safety and termination using preconditions, postconditions and…

Logic in Computer Science · Computer Science 2020-03-25 Jad Hamza , Nicolas Voirol , Viktor Kunčak

We present Most, a process language with message-observing session types. Message-observing session types extend binary session types with type-level computation to specify communication protocols that vary based on messages observed on…

Programming Languages · Computer Science 2024-03-08 Ryan Kavanagh , Brigitte Pientka

Session types are behavioural types for guaranteeing that concurrent programs are free from basic communication errors. Recent work has shown that asynchronous session subtyping is undecidable. However, since session types have become…

Programming Languages · Computer Science 2018-02-13 Mario Bravetti , Marco Carbone , Gianluigi Zavattaro

Session types are used to describe communication protocols in distributed systems and, as usual in type theories, session subtyping characterizes substitutability of the communicating processes. We investigate the (un)decidability of…

Programming Languages · Computer Science 2017-07-20 Mario Bravetti , Marco Carbone , Gianluigi Zavattaro

MAG$\pi$ is a Multiparty, Asynchronous and Generalised $\pi$-calculus that introduces timeouts into session types as a means of reasoning about failure-prone communication. Its type system guarantees that all possible message-loss is…

Programming Languages · Computer Science 2024-04-26 Matthew Alan Le Brun , Ornela Dardha

In this paper we focus on TinySol, a minimal calculus for Solidity smart contracts, introduced by Bartoletti et al. We start by rephrasing its syntax (to emphasise its object-oriented flavour) and give a new big-step operational semantics.…

Programming Languages · Computer Science 2025-06-25 Luca Aceto , Daniele Gorla , Stian Lybech

Multiparty session types are a type system that can ensure the safety and liveness of distributed peers via the global specification of their interactions. To construct a global specification from a set of distributed uncontrolled…

Formal Languages and Automata Theory · Computer Science 2013-04-09 Pierre-Malo Deniélou , Nobuko Yoshida

We strive to use session type technology to prove behavioural properties of fault-tolerant distributed algorithms. Session types are designed to abstractly capture the structure of (even multi-party) communication protocols. The goal of…

Logic in Computer Science · Computer Science 2017-05-05 Manuel Adameit , Kirstin Peters , Uwe Nestmann

We tackle the challenge of ensuring the deadlock-freedom property for message-passing processes that communicate asynchronously in cyclic process networks. Our contributions are twofold. First, we present Asynchronous Priority-based…

Logic in Computer Science · Computer Science 2024-11-20 Bas van den Heuvel , Jorge A. Pérez

To celebrate the 30th edition of EXPRESS and the 20th edition of SOS we overview how session types can be expressed in a type theory for the standard $\pi$-calculus by means of a suitable encoding. The encoding allows one to reuse results…

Programming Languages · Computer Science 2023-09-15 Ilaria Castellani , Ornela Dardha , Luca Padovani , Davide Sangiorgi

We present a new type system combining occurrence typing, previously used to type check programs in dynamically-typed languages such as Racket, JavaScript, and Ruby, with dependent refinement types. We demonstrate that the addition of…

Programming Languages · Computer Science 2016-10-05 Andrew M. Kent , David Kempe , Sam Tobin-Hochstadt

We study an urgent semantics of asynchronous timed session types, where input actions happen as soon as possible. We show that with this semantics we can recover to the timed setting an appealing property of untimed session types: namely,…

Logic in Computer Science · Computer Science 2018-10-08 Maurizio Murgia

When scripts in untyped languages grow into large programs, maintaining them becomes difficult. A lack of explicit type annotations in typical scripting languages forces programmers to must (re)discover critical pieces of design information…

Programming Languages · Computer Science 2011-06-15 Sam Tobin-Hochstadt , Matthias Felleisen