English
Related papers

Related papers: Synchronous Forwarders

200 papers

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

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

All formalizations of session types rely on linear types for soundness as session-typed communication channels must change their type at every operation. Embedded language implementations of session types follow suit. They either rely on…

Programming Languages · Computer Science 2023-03-03 Peter Thiemann

Session types provide guarantees about concurrent behaviour and can be understood through their correspondence with linear logic, with propositions as sessions and proofs as processes. However, a strictly linear setting is somewhat…

Programming Languages · Computer Science 2024-10-23 Danielle Marshall , Dominic Orchard

The emergence of propositions-as-sessions, a Curry-Howard correspondence between propositions of Linear Logic and session types for concurrent processes, has settled the logical foundations of message-passing concurrency. Central to this…

Logic in Computer Science · Computer Science 2022-09-13 Dan Frumin , Emanuele D'Osualdo , Bas van den Heuvel , Jorge A. Pérez

Program equivalence is the fulcrum for reasoning about and proving properties of programs. For noninterference, for example, program equivalence up to the secrecy level of an observer is shown. A powerful enabler for such proofs are logical…

Programming Languages · Computer Science 2022-08-31 Farzaneh Derakhshan , Stephanie Balzer

We develop a generalization of existing Curry-Howard interpretations of (binary) session types by relying on an extension of linear logic with features from hybrid logic, in particular modal worlds that indicate domains. These worlds govern…

Logic in Computer Science · Computer Science 2019-07-03 Luís Caires , Jorge A. Pérez , Frank Pfenning , Bernardo Toninho

Motivated by distributed implementations of game-theoretical algorithms, we study symmetric process systems and the problem of attaining common knowledge between processes. We formalize our setting by defining a notion of peer-to-peer…

Distributed, Parallel, and Cluster Computing · Computer Science 2008-04-14 Andreas Witzel

This paper presents the first implementation of session types in a dynamically-typed language - Python. Communication safety of the whole system is guaranteed at runtime by monitors that check the execution traces comply with an associated…

Programming Languages · Computer Science 2013-12-11 Rumyana Neykova

Session types employ a linear type system that ensures that communication channels cannot be implicitly copied or discarded. As a result, many mechanizations of these systems require modeling channel contexts and carefully ensuring that…

Programming Languages · Computer Science 2023-09-25 Chuta Sano , Ryan Kavanagh , Brigitte Pientka

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

Population protocols are a model of distributed computation intended for the study of networks of independent computing agents with dynamic communication structure. Each agent has a finite number of states, and communication opportunities…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-09-02 Michael Raskin

Session types are a discipline for the static verification of message-passing programs. A session type specifies a channel's protocol as sequences of exchanges. It is most relevant to investigate session-based concurrency by identifying the…

Programming Languages · Computer Science 2024-01-24 Alen Arslanagic , Jorge A. Pérez , Anda-Amelia Palamariuc

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

Session types using affinity and exception handling mechanisms have been developed to ensure the communication safety of protocols implemented in concurrent and distributed programming languages. Nevertheless, current affine session types…

Programming Languages · Computer Science 2024-09-02 Ping Hou , Nicolas Lagaillardie , Nobuko Yoshida

We propose an interpretation of multiparty sessions as "flow event structures", which allows concurrency between communications within a session to be explicitly represented. We show that this interpretation is equivalent, when the…

Logic in Computer Science · Computer Science 2022-05-18 Ilaria Castellani , Mariangiola Dezani-Ciancaglini , Paola Giannini

Multiparty session types (MPST) are a specification and verification framework for distributed message-passing systems. The communication protocol of the system is specified as a global type, from which a collection of local types (local…

Programming Languages · Computer Science 2026-05-06 Lorenzo Gheri , Nobuko Yoshida

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

Low-power wireless communication is a central building block of Cyber-physical Systems and the Internet of Things. Conventional low-power wireless protocols make avoiding packet collisions a cornerstone design choice. The concept of…

Networking and Internet Architecture · Computer Science 2020-01-27 Marco Zimmerling , Luca Mottola , Silvia Santini

There is often a sort of a protocol associated to each class, stating when and how certain methods should be called. Given that this protocol is, if at all, described in the documentation accompanying the class, current mainstream…

Programming Languages · Computer Science 2011-10-20 Joana Campos , Vasco T. Vasconcelos