English
Related papers

Related papers: Subtyping Context-Free Session Types

200 papers

Session types statically prescribe bidirectional communication protocols for message-passing processes and are in a Curry-Howard correspondence with linear logic propositions. However, simple session types cannot specify properties beyond…

Programming Languages · Computer Science 2020-01-27 Ankush Das , Frank Pfenning

The importance of subtyping to enable a wider range of well-typed programs is undeniable. However, the interaction between subtyping, recursion, and polymorphism is not completely understood yet. In this work, we explore subtyping in a…

Programming Languages · Computer Science 2021-03-30 Ankush Das , Henry DeYoung , Andreia Mordido , Frank Pfenning

Session types model structured communication-based programming. In particular, binary session types for the pi-calculus describe communication between exactly two participants in a distributed scenario. Adding sessions to the pi-calculus…

Programming Languages · Computer Science 2014-08-27 Ornela Dardha

This paper improves the session typing theory to support the modelling and verification of processes that implement federated learning protocols. To this end, we build upon the asynchronous ``bottom-up'' session typing approach by adding…

Logic in Computer Science · Computer Science 2026-03-27 Ivan Prokić , Simona Prokić , Silvia Ghilezan , Alceste Scalas , Nobuko Yoshida

Information flow control type systems statically restrict the propagation of sensitive data to ensure end-to-end confidentiality. The property to be shown is noninterference, asserting that an attacker cannot infer any secrets from made…

Programming Languages · Computer Science 2021-04-30 Farzaneh Derakhshan , Stephanie Balzer , Limin Jia

We propose the integration of staged metaprogramming into a session-typed message passing functional language. We build on a model of contextual modal type theory with multi-level contexts, where contextual values, closing arbitrary terms…

Programming Languages · Computer Science 2026-01-22 Pedro Ângelo , Atsushi Igarashi , Yuito Murase , Vasco T. Vasconcelos

Subtyping is a crucial ingredient of session type theory and its applications, notably to programming language implementations. In this paper, we study effective ways to check whether a session type is a subtype of another by applying a…

Logic in Computer Science · Computer Science 2015-10-26 Julien Lange , Nobuko Yoshida

The scenario-based specification of a large distributed system is usually naturally decomposed into various modules. The integration of specification modules contrasts to the parallel composition of program components, and includes various…

Programming Languages · Computer Science 2012-10-09 Guoxin Su , Mingsheng Ying , Chengqi Zhang

The notion of subtyping has gained an important role both in theoretical and applicative domains: in lambda and concurrent calculi as well as in programming languages. The soundness and the completeness, together referred to as the…

Logic in Computer Science · Computer Science 2016-02-12 Mariangiola Dezani-Ciancaglini , Silvia Ghilezan , Svetlana Jakšić , Jovanka Pantović , Nobuko Yoshida

Multiparty session types (MSTs) are a type-based approach to verifying communication protocols, represented as global types in the framework. We present a precise subtyping relation for asynchronous MSTs with communicating state machines…

Formal Languages and Automata Theory · Computer Science 2024-01-30 Elaine Li , Felix Stutz , Thomas Wies

Session types statically prescribe bidirectional communication protocols for message-passing processes. However, simple session types cannot specify properties beyond the type of exchanged messages. In this paper we extend the type system…

Programming Languages · Computer Science 2020-05-14 Ankush Das , Frank Pfenning

Programs are more distributed and concurrent today than ever before, and structural communications are at the core. Constructing and debugging such programs are hard due to the lack of formal specification/verification of concurrency. This…

Programming Languages · Computer Science 2018-08-02 Hanwen Wu , Hongwei Xi

Formal verification methods for concurrent systems cannot always be scaled-down or tailored in order to be applied on specific subsystems. We address such an issue in a MultiParty Session Types setting by devising a partial type assignment…

Logic in Computer Science · Computer Science 2024-10-02 Franco Barbanera , Mariangiola Dezani-Ciancaglini , Ugo de'Liguoro

Session types are formal specifications of communication protocols, allowing protocol implementations to be verified by typechecking. Up to now, session type disciplines have assumed that the communication medium is reliable, with no loss…

Logic in Computer Science · Computer Science 2024-08-07 Dimitrios Kouzapas , Ramunas Forsberg Gutkovas , A. Laura Voinea , Simon J. Gay

We (re)define session types as projections of process behaviors with respect to the communication channels they use. In this setting, we give session types a semantics based on fair testing. The outcome is a unified theory of behavioral…

Programming Languages · Computer Science 2009-12-01 Luca Padovani

We present a type checking algorithm for establishing a session-based discipline in the pi calculus of Milner, Parrow and Walker. Our session types are qualified as linear or unrestricted. Linearly typed communication channels are…

Programming Languages · Computer Science 2011-08-12 Marco Giunti

We consider a general prescriptive type system with parametric polymorphism and subtyping for logic programs. The property of subject reduction expresses the consistency of the type system w.r.t. the execution model: if a program is…

Logic in Computer Science · Computer Science 2009-09-25 Jan-Georg Smaus , Francois Fages , Pierre Deransart

Many type systems include infinite types. In session type systems, which are the focus of this paper, infinite types are important because they allow the specification of communication protocols that are unbounded in time. Usually infinite…

Programming Languages · Computer Science 2022-01-21 Simon J. Gay , Diogo Poças , Vasco T. Vasconcelos

Session types have been proposed as a means of statically verifying implementations of communication protocols. Although prior work has been successful in verifying some classes of protocols, it does not cope well with parameterized,…

Programming Languages · Computer Science 2012-08-24 Minas Charalambides , Peter Dinges , Gul Agha

Session types capture precise protocol structure in concurrent programming, but do not specify properties of the exchanged values beyond their basic type. Refinement types are a form of dependent types that can address this limitation,…

Logic in Computer Science · Computer Science 2012-11-20 Pedro Baltazar , Dimitris Mostrous , Vasco T. Vasconcelos