English
Related papers

Related papers: Polymorphic Typestate for Session Types

200 papers

We present a calculus that models a form of process interaction based on copyless message passing, in the style of Singularity OS. The calculus is equipped with a type system ensuring that well-typed processes are free from memory faults,…

Programming Languages · Computer Science 2015-07-01 Viviana Bono , Luca Padovani

Multiparty Session Types (MPST) is a typing discipline for communication protocols. It ensures the absence of communication errors and deadlocks for well-typed communicating processes. The state-of-the-art implementations of the MPST theory…

Programming Languages · Computer Science 2020-05-26 Keigo Imai , Rumyana Neykova , Nobuko Yoshida , Shoji Yuen

Session types define protocols that processes must follow when communicating. The special case of binary session types, i.e. type annotations of protocols between two parties, is known to be in a propositions-as-types correspondence with…

Programming Languages · Computer Science 2021-12-15 Marco Carbone , Sonia Marin , Carsten Schürmann

Emerging network scenarios require the development of solid large-scale situated systems. Unfortunately, the diffusion/aggregation computational processes therein often introduce a source of complexity that hampers predictability of the…

Logic in Computer Science · Computer Science 2017-01-11 Ferruccio Damiani , Mirko Viroli

We present Concurrent GV (CGV), a functional calculus with message-passing concurrency governed by session types. With respect to prior calculi, CGV has increased support for concurrent evaluation and for cyclic network topologies. The…

Logic in Computer Science · Computer Science 2022-09-15 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 address the problem of local type inference for a language based on System F with context-free session types. We present an algorithm that leverages the bidirectional type checking approach to propagate type information, enabling first…

Programming Languages · Computer Science 2025-05-28 Bernardo Almeida , Andreia Mordido , Vasco T. Vasconcelos

We present Concurrent GV (CGV), a functional calculus with message-passing concurrency governed by session types. With respect to prior calculi, CGV has increased support for concurrent evaluation and for cyclic network topologies. The…

Logic in Computer Science · Computer Science 2022-10-07 Bas van den Heuvel , Jorge A. Pérez

Algebraic effects and handlers are a powerful abstraction mechanism to represent and implement control effects. In this work, we study their extension with parametric polymorphism that allows abstracting not only expressions but also…

Programming Languages · Computer Science 2020-01-16 Taro Sekiyama , Atsushi Igarashi

Text-to-Speech (TTS) has recently seen great progress in synthesizing high-quality speech owing to the rapid development of parallel TTS systems, but producing speech with naturalistic prosodic variations, speaking styles and emotional…

Audio and Speech Processing · Electrical Eng. & Systems 2023-11-21 Yinghao Aaron Li , Cong Han , Nima Mesgarani

Modal types -- types that are derived from proof systems of modal logic -- have been studied as theoretical foundations of metaprogramming, where program code is manipulated as first-class values. In modal type systems, modality corresponds…

Logic in Computer Science · Computer Science 2023-01-06 Yuito Murase , Yuichi Nishiwaki , Atsushi Igarashi

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

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

Context: Tables are ubiquitous formats for data. Therefore, techniques for writing correct programs over tables, and debugging incorrect ones, are vital. Our specific focus in this paper is on rich types that articulate the properties of…

Programming Languages · Computer Science 2021-11-23 Kuang-Chen Lu , Ben Greenman , Shriram Krishnamurthi

The naive combination of polymorphic effects and polymorphic type assignment has been well known to break type safety. Existing approaches to this problem are classified into two groups: one for restricting how effects are triggered and the…

Programming Languages · Computer Science 2024-05-29 Taro Sekiyama , Takeshi Tsukada , Atsushi Igarashi

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 system of session types based on adjoint logic which generalize standard binary session types. Our system allows us to uniformly capture several new behaviors in the space of asynchronous message-passing communication,…

Programming Languages · Computer Science 2019-04-03 Klaas Pruiksma , Frank Pfenning

The Abella interactive theorem prover has proven to be an effective vehicle for reasoning about relational specifications. However, the system has a limitation that arises from the fact that it is based on a simply typed logic:…

Logic in Computer Science · Computer Science 2018-06-21 Gopalan Nadathur , Yuting Wang

Multi-hop reasoning over real-life knowledge graphs (KGs) is a highly challenging problem as traditional subgraph matching methods are not capable to deal with noise and missing information. To address this problem, it has been recently…

Artificial Intelligence · Computer Science 2022-07-05 Zhiwei Hu , Víctor Gutiérrez-Basulto , Zhiliang Xiang , Xiaoli Li , Ru Li , Jeff Z. Pan

Besides respecting prescribed protocols, communication-centric systems should never "get stuck". This requirement has been expressed by liveness properties such as progress or (dead)lock freedom. Several typing disciplines that ensure these…

Logic in Computer Science · Computer Science 2015-08-28 Ornela Dardha , Jorge A. Pérez