English
Related papers

Related papers: Precise subtyping for synchronous multiparty sessi…

200 papers

Sized types are a modular and theoretically well-understood tool for checking termination of recursive and productivity of corecursive definitions. The essential idea is to track structural descent and guardedness in the type system to make…

Programming Languages · Computer Science 2010-12-23 Andreas Abel

As the complexity and heterogeneity of a system grows, the challenge of specifying, documenting and synthesizing correct, machine-readable designs increases dramatically. Separation of the system into manageable parts is needed to support…

Software Engineering · Computer Science 2021-06-25 John D. Foley , Spencer Breiner , Eswaran Subrahmanian , John M. Dusel

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

Type analyses of logic programs which aim at inferring the types of the program being analyzed are presented in a unified abstract interpretation-based framework. This covers most classical abstract interpretation-based type analyzers for…

Software Engineering · Computer Science 2009-09-29 Claudio Vaucheret , Francisco Bueno

We present Multiparty Classical Choreographies (MCC), a language model where global descriptions of communicating systems (choreographies) implement typed multiparty sessions. Typing is achieved by generalising classical linear logic to…

Programming Languages · Computer Science 2018-12-04 Marco Carbone , Luis Cruz-Filipe , Fabrizio Montesi , Agata Murawska

Imperative session types provide an imperative interface to session-typed communication. In such an interface, channel references are first-class objects with operations that change the typestate of the channel. Compared to functional…

Programming Languages · Computer Science 2023-06-22 Hannes Saffrich , Peter Thiemann

Negotiations are a formalism for describing multiparty distributed cooperation. Alternatively, they can be seen as a model of concurrency with synchronized choice as communication primitive. Well-designed negotiations must be sound, meaning…

Formal Languages and Automata Theory · Computer Science 2023-06-22 Javier Esparza , Denis Kuperberg , Anca Muscholl , Igor Walukiewicz

The concept of decomposition in computer science and engineering is considered a fundamental component of computational thinking and is prevalent in design of algorithms, software construction, hardware design, and more. We propose a simple…

Logic in Computer Science · Computer Science 2023-06-22 Dror Fried , Axel Legay , Joël Ouaknine , Moshe Y. Vardi

Intersection and union types denote conjunctions and disjunctions of properties. Using bidirectional typechecking, intersection types are relatively straightforward, but union types present challenges. For union types, we can case-analyze a…

Programming Languages · Computer Science 2021-03-24 Jana Dunfield

We extend the {\lambda}-calculus with constructs suitable for relational and functional-logic programming: non-deterministic choice, fresh variable introduction, and unification of expressions. In order to be able to unify…

Programming Languages · Computer Science 2021-03-02 Pablo Barenbaum , Federico Lochbaum , Mariana Milicich

We present a type system that combines, in a controlled way, first-order polymorphism with intersectiontypes, union types, and subtyping, and prove its safety. We then define a type reconstruction algorithm that issound and terminating.…

Programming Languages · Computer Science 2023-11-20 Giuseppe Castagna , Mickaël Laurent , Kim Nguyen

The purpose of Secure Multi-Party Computation is to enable protocol participants to compute a public function of their private inputs while keeping their inputs secret, without resorting to any trusted third party. However, opening the…

Cryptography and Security · Computer Science 2018-03-02 Patrick Ah-Fat , Michael Huth

The depth-bounded fragment of the pi-calculus is an expressive class of systems enjoying decidability of some important verification problems. Unfortunately membership of the fragment is undecidable. We propose a novel type system,…

Logic in Computer Science · Computer Science 2015-02-24 Emanuele D'Osualdo , Luke Ong

We present a calculus for processing semistructured data that spans differences of application area among several novel query languages, broadly categorized as "NoSQL". This calculus lets users define their own operators, capturing a wider…

Programming Languages · Computer Science 2013-03-08 Véronique Benzaken , Giuseppe Castagna , Kim Nguy\~ên , Jérôme Siméon

We propose a semantically grounded theory of session types which relies on intersection and union types. We argue that intersection and union types are natural candidates for modeling branching points in session types and we show that the…

Programming Languages · Computer Science 2011-01-25 Luca Padovani

Bidirectional typing combines two modes of typing: type checking, which checks that a program satisfies a known type, and type synthesis, which determines a type from the program. Using checking enables bidirectional typing to support…

Programming Languages · Computer Science 2022-03-21 Jana Dunfield , Neel Krishnaswami

We present $\lambda_B$, a quantum-control $\lambda$-calculus that refines previous basis-sensitive systems by allowing abstractions to be expressed with respect to arbitrary -- possibly entangled -- bases. Each abstraction and let construct…

Logic in Computer Science · Computer Science 2025-10-24 Alejandro Díaz-Caro , Octavio Malherbe , Rafael Romero

Practical checkers based on refinement types use the combination of implicit semantic sub-typing and parametric polymorphism to simplify the specification and automate the verification of sophisticated properties of programs. However, a…

Programming Languages · Computer Science 2022-07-13 Michael Borkowski , Niki Vazou , Ranjit Jhala

The additional complexity caused by concurrently communicating processes in distributed systems render the verification of such systems into a very hard problem. Multiparty session types were developed to govern communication and…

Logic in Computer Science · Computer Science 2019-08-20 Kirstin Peters , Christoph Wagner , Uwe Nestmann

This paper is a contribution to the theory of finite semigroups and their classification in pseudovarieties, which is motivated by its connections with computer science. The question addressed is what role can play the consideration of an…

Group Theory · Mathematics 2019-07-16 Jorge Almeida , Ondřej Klíma
‹ Prev 1 8 9 10 Next ›