English
Related papers

Related papers: Using Session Types for Reasoning About Boundednes…

200 papers

Session types are a type-based approach to the verification of message-passing programs. They specify communication structures essential to enforcing program correctness; by relying on sequencing constructs, a session type can precisely…

Programming Languages · Computer Science 2025-05-14 Alen Arslanagić , Jorge A. Pérez , Dan Frumin

A system of session types is introduced as induced by a Curry Howard correspondence applied to Bounded Linear Logic, and then extending the thus obtained type system with probabilistic choices and ground types. The obtained system satisfies…

Logic in Computer Science · Computer Science 2022-07-08 Ugo Dal Lago , Giulia Giusti

Behavioural type systems ensure more than the usual safety guarantees of static analysis. They are based on the idea of "types-as-processes", providing dedicated type algebras for particular properties, ranging from protocol compatibility…

Programming Languages · Computer Science 2014-08-08 Simon J. Gay , Nils Gesbert , António Ravara

Type-preserving translations are effective rigorous tools in the study of core programming calculi. In this paper, we develop a new typed translation that connects sequential and concurrent calculi; it is governed by type systems that…

Programming Languages · Computer Science 2022-06-01 Joseph W. N. Paulus , Daniele Nantes-Sobrinho , Jorge A. Pérez

The pi-calculus is a widely used process calculus, which models communications between processes and allows the passing of communication links. Various operational semantics of the pi-calculus have been proposed, which can be classified…

Formal Languages and Automata Theory · Computer Science 2020-04-14 Eva Graversen , Iain Phillips , Nobuko Yoshida

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

We describe a process calculus featuring high level constructs for component-oriented programming in a distributed setting. We propose an extension of the higher-order pi-calculus intended to capture several important mechanisms related to…

Programming Languages · Computer Science 2009-09-04 Daniel Hirschkoff , Aurélien Pardon , Tom Hirschowitz , Samuel Hym , Damien Pous

In this work, we incorporate reversibility into structured communication-based programming, to allow parties of a session to automatically undo, in a rollback fashion, the effect of previously executed interactions. This permits taking…

Programming Languages · Computer Science 2014-06-16 Francesco Tiezzi , Nobuko Yoshida

This paper deals with the probabilistic behaviours of distributed systems described by a process calculus considering both probabilistic internal choices and nondeterministic external choices. For this calculus we define and study a typing…

Logic in Computer Science · Computer Science 2019-09-05 Bogdan Aman , Gabriel Ciobanu

This paper is concerned with the shape invariants satisfied by the communication topology of {\pi}-terms, and the automatic inference of these invariants. A {\pi}-term P is hierarchical if there is a finite forest T such that the…

Programming Languages · Computer Science 2016-04-20 Emanuele D'Osualdo , C. -H. Luke Ong

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

We show how systems of session types can enforce interactions to be bounded for all typable processes. The type system we propose is based on Lafont's soft linear logic and is strongly inspired by recent works about session types as…

Logic in Computer Science · Computer Science 2011-08-24 Ugo Dal Lago , Paolo Di Giamberardino

We show how systems of sessions types can enforce interactions to be bounded for all typable processes. The type system we propose is based on Lafont's soft linear logic and is strongly inspired by recent works about session types as…

Logic in Computer Science · Computer Science 2012-01-04 Ugo Dal Lago , Paolo Di Giamberardino

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

Parameterization extends higher-order processes with the capability of abstraction (akin to that in lambda-calculus), and is known to be able to enhance the expressiveness. This paper focuses on the parameterization of names, i.e. a…

Logic in Computer Science · Computer Science 2015-08-21 Xian Xu , Qiang Yin , Huan Long

We define a novel calculus that combines a call-by-name functional core with session-based communication primitives. We develop a typing discipline that guarantees both normalisation of expressions and progress of processes and that…

Logic in Computer Science · Computer Science 2023-06-22 Paula Severi , Luca Padovani , Emilio Tuosto , Mariangiola Dezani-Ciancaglini

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 binary session type system using context-free session types to a version of the applied pi-calculus of Abadi et. al. where only base terms, constants and channels can be sent. Session types resemble process terms from BPA and…

Logic in Computer Science · Computer Science 2018-08-28 Jens Aagaard , Hans Hüttel , Mathias Jakobsen , Mikkel Kettunen

Session types allow communication protocols to be specified type-theoretically so that protocol implementations can be verified by static type checking. We extend previous work on session types for distributed object-oriented languages in…

Programming Languages · Computer Science 2017-01-11 Simon J. Gay , Nils Gesbert , António Ravara , Vasco T. Vasconcelos

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