English
Related papers

Related papers: Session Types as Generic Process Types

200 papers

Proof theory provides a foundation for studying and reasoning about programming languages, most directly based on the well-known Curry-Howard isomorphism between intuitionistic logic and the typed lambda-calculus. More recently, a…

Logic in Computer Science · Computer Science 2023-06-22 Farzaneh Derakhshan , Frank Pfenning

This paper introduces a new theory of multiparty session types based on symmetric sum types, by which we can type non-deterministic orchestration choice behaviours. While the original branching type in session types can represent a choice…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-12-01 Lasse Nielsen , Nobuko Yoshida , Kohei Honda

Session types are a typing discipline used to formally describe communication-driven applications with the aim of fewer errors and easier debugging later into the life cycle of the software. Protocols at the transport layer such as TCP,…

Programming Languages · Computer Science 2024-04-09 Samuel Cavoj , Ivan Nikitin , Colin Perkins , Ornela Dardha

Multiparty Session Types (MPST) are a well-established typing discipline for message-passing processes interacting on sessions involving two or more participants. Session typing can ensure desirable properties: absence of communication…

Programming Languages · Computer Science 2017-04-12 Alceste Scalas , 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

Replication is an alternative construct to recursion for describing infinite behaviours in the pi-calculus. In this paper we explore the implications of including type-level replication in Multiparty Session Types (MPST), a behavioural type…

Programming Languages · Computer Science 2025-01-27 Matthew Alan Le Brun , Simon Fowler , Ornela Dardha

This paper presents a logical approach to the translation of functional calculi into concurrent process calculi. The starting point is a type system for the {\pi}-calculus closely related to linear logic. Decompositions of intuitionistic…

Logic in Computer Science · Computer Science 2011-07-22 Emmanuel Beffara

Much research has studied foundations for correct and reliable communication-centric systems. A salient approach to correctness uses session types to enforce structured communications; a recent approach to reliability uses reversible…

Logic in Computer Science · Computer Science 2016-06-21 Claudio A. Mezzina , Jorge A. Pérez

This paper presents the first formalisation of the precise subtyping relation for asynchronous multiparty sessions. We show that our subtyping relation is sound (i.e., guarantees safe process replacement) and also complete: any extension of…

Logic in Computer Science · Computer Science 2020-10-28 Silvia Ghilezan , Jovanka Pantović , Ivan Prokić , Alceste Scalas , Nobuko Yoshida

While formal models of concurrency tend to focus on synchronous communication, asynchronous communication is relevant in practice. In this paper, we will discuss asynchronous communication in the context of session-based concurrency, the…

Programming Languages · Computer Science 2024-12-12 Bas van den Heuvel , Jorge A. Pérez

Session types provide a flexible programming style for structuring interaction, and are used to guarantee a safe and consistent composition of distributed processes. Traditional session types include only one-directional input (external)…

Logic in Computer Science · Computer Science 2022-09-15 Kirstin Peters , Nobuko Yoshida

Session types statically describe communication protocols between concurrent message-passing processes. Unfortunately, parametric polymorphism even in its restricted prenex form is not fully understood in the context of session types. In…

Programming Languages · Computer Science 2020-12-11 Ankush Das , Henry DeYoung , Andreia Mordido , Frank Pfenning

Prior work has extended the deep, logical connection between the linear sequent calculus and session-typed message-passing concurrent computation with equi-recursive types and a natural notion of subtyping. In this paper, we extend this…

Programming Languages · Computer Science 2017-02-09 Coşku Acay , Frank Pfenning

Classical Processes (CP) is a calculus where the proof theory of classical linear logic types communicating processes with mobile channels, a la pi-calculus. Its construction builds on a recent propositions as types correspondence between…

Logic in Computer Science · Computer Science 2018-02-09 Fabrizio Montesi

We sketch a simple language of concurrent objects which explores the design space between type systems and continuous testing. In our language, programs are collections of communicating automata checked automatically for multiparty…

Programming Languages · Computer Science 2016-09-08 Roly Perera , Simon J. Gay

Session types guarantee that message-passing processes adhere to predefined communication protocols. Prior work on session types has focused on deterministic languages but many message-passing systems, such as Markov chains and randomized…

Programming Languages · Computer Science 2020-11-19 Ankush Das , Di Wang , Jan Hoffmann

The Message Passing Interface (MPI) is the de facto standard message-passing infrastructure for developing parallel applications. Two decades after the first version of the library specification, MPI-based applications are nowadays…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-12-11 Eduardo R. B. Marques , Francisco Martins , Vasco T. Vasconcelos , Nicholas Ng , Nuno Martins

We explore the integration of metaprogramming in a call-by-value linear lambda-calculus and sketch its extension to a session type system. We build on a model of contextual modal type theory with multi-level contexts, where contextual…

Logic in Computer Science · Computer Science 2024-04-09 Pedro Ângelo , Atsushi Igarashi , Vasco T. Vasconcelos

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

Message-passing software systems exhibit non-trivial forms of concurrency and distribution; they are expected to follow intended protocols among communicating services, but also to never "get stuck". This intuitive requirement has been…

Logic in Computer Science · Computer Science 2021-09-07 Ornela Dardha , Jorge A. Pérez
‹ Prev 1 4 5 6 7 8 10 Next ›