English
Related papers

Related papers: Designing Asynchronous Multiparty Protocols with C…

200 papers

We describe scalable protocols for solving the secure multi-party computation (MPC) problem among a large number of parties. We consider both the synchronous and the asynchronous communication models. In the synchronous setting, our…

Data Structures and Algorithms · Computer Science 2015-09-29 Varsha Dani , Valerie King , Mahnush Movahedi , Jared Saia , Mahdi Zamani

Synchronous systems provide a basic model of embedded systems and industrial systems are modeled as Simulink diagrams and/or Lustre programs. Although the test generation problem is critical in the development of safe systems, it often…

Software Engineering · Computer Science 2021-12-13 Daisuke Ishii , Takashi Tomita , Kenji Onishi , Toshiaki Aoki

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

In this paper we propose a new approach to the description of a network of interacting processes in a traditional programming language. Special programming languages or extensions to sequential languages are usually designed to express the…

Programming Languages · Computer Science 2017-02-17 Sergey Vostokin

Mixed-typed languages enable programmers to link typed and untyped components in various ways. Some offer rich type systems to facilitate the smooth migration of untyped code to the typed world; others merely provide a convenient form of…

Programming Languages · Computer Science 2021-11-23 Ben Greenman , Lukas Lazarek , Christos Dimoulas , Matthias Felleisen

Message passing is a useful abstraction for implementing concurrent programs. For real-world systems, however, it is often combined with other programming and concurrency paradigms, such as higher-order functions, mutable state,…

Logic in Computer Science · Computer Science 2023-06-22 Jonas Kastberg Hinrichsen , Jesper Bengtson , Robbert Krebbers

We propose SessionC#, a lightweight session typed library for safe concurrent/distributed programming. The key features are (1) the improved fluent interface which enables writing communication in chained method calls, by exploiting C#'s…

Programming Languages · Computer Science 2020-04-06 Shunsuke Kimura , Keigo Imai

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

We provide the first denotational semantics for asynchronous multiparty session types with precise asynchronous subtyping. Our semantics enables us to reason about asynchronous message-passing, in which message-sending is non-blocking. It…

Programming Languages · Computer Science 2026-04-14 Dylan McDermott , Nobuko Yoshida

This paper proposes a bisimulation theory based on multiparty session types where a choreography specification governs the behaviour of session typed processes and their observer. The bisimulation is defined with the observer cooperating…

Logic in Computer Science · Computer Science 2015-07-01 Dimitrios Kouzapas , Nobuko Yoshida

Most STM systems are poorly equipped to support libraries of concurrent data structures. One reason is that they typically detect conflicts by tracking transactions' read sets and write sets, an approach that often leads to false conflicts.…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-06-27 Thomas D. Dickerson , Paul Gazzillo , Maurice Herlihy , Eric Koskinen

This paper proposes a novel end-to-end architecture for task-oriented dialogue systems. It is based on a simple and practical yet very effective sequence-to-sequence approach, where language understanding and state tracking tasks are…

Computation and Language · Computer Science 2019-08-08 Lei Shu , Piero Molino , Mahdi Namazifar , Hu Xu , Bing Liu , Huaixiu Zheng , Gokhan Tur

The popularity of smart contracts is on the rise, yet breaches in reliability and security linger. Among the many facets of smart contract reliability, we concentrate on faults rooted in out-of-order interactions with contract endpoints. We…

Programming Languages · Computer Science 2021-08-06 Afonso Falcão , Andreia Mordido , Vasco T. Vasconcelos

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

Choreographic models support a correctness-by-construction principle in distributed programming. Also, they enable the automatic generation of correct message-based communication patterns from a global specification of the desired system…

Programming Languages · Computer Science 2022-05-16 Lorenzo Gheri , Ivan Lanese , Neil Sayers , Emilio Tuosto , Nobuko Yoshida

Transactional Stream Processing Engines (TSPEs) form the backbone of modern stream applications handling shared mutable states. Yet, the full potential of these systems, specifically in exploiting parallelism and implementing dynamic…

Databases · Computer Science 2023-07-25 Yancan Mao , Jianjun Zhao , Zhonghao Yang , Shuhao Zhang , Haikun Liu , Volker Markl

Distributed system theory literature often argues for correctness using an informal, Hoare-like style of reasoning. While these arguments are intuitive, they have not all been foolproof, and whether they directly correspond to formal proofs…

Programming Languages · Computer Science 2025-10-15 Haobin Ni , Robbert van Renesse , Greg Morrisett

Secure multi-party computation (MPC) is a fundamental problem in secure distributed computing. An MPC protocol allows a set of $n$ mutually distrusting parties to carry out any joint computation of their private inputs, without disclosing…

Cryptography and Security · Computer Science 2022-08-10 Ananya Appan , Anirudh Chandramouli , Ashish Choudhury

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

It is notoriously hard to correctly implement a multiparty protocol which involves asynchronous/concurrent interactions and the constraints on states of multiple participants. To assist developers in implementing such protocols, we propose…

Programming Languages · Computer Science 2018-06-26 Eduard Kamburjan , Tzu-Chun Chen