English
Related papers

Related papers: Design-by-Contract for Flexible Multiparty Session…

200 papers

Choreographic programming is a paradigm for writing coordination plans for distributed systems from a global point of view, from which correct-by-construction decentralised implementations can be generated automatically. Theory of…

Logic in Computer Science · Computer Science 2022-09-07 Luís Cruz-Filipe , Fabrizio Montesi , Marco Peressotti

Choreographic programming is a paradigm where developers write the global specification (called choreography) of a communicating system, and then a correct-by-construction distributed implementation is compiled automatically. Unfortunately,…

Logic in Computer Science · Computer Science 2023-03-01 Luís Cruz-Filipe , Fabrizio Montesi

Modern service-oriented systems are often built by reusing, and composing together, existing services distributed over the Internet. Service choreography is a possible form of service composition whose goal is to specify the interactions…

Software Engineering · Computer Science 2015-02-13 Marco Autili , Massimo Tivoli

Choreographic programming is a paradigm for writing distributed applications. It allows programmers to write a single program, called a choreography, that can be compiled to generate correct implementations of each process in the…

Programming Languages · Computer Science 2024-07-16 Dan Plyukhin , Marco Peressotti , Fabrizio Montesi

Choreographic Programming (CP) is a language paradigm whereby software artefacts, called choreographies, specify the behaviour of communicating participants. CP is famous for its correctness-by-construction approach to the development of…

Programming Languages · Computer Science 2024-06-14 Giuseppe De Palma , Saverio Giallorenzo , Jacopo Mauro , Matteo Trentin , Gianluigi Zavattaro

Recent advances in large language models have led to the rise of software systems (i.e. agents) that execute with increasing autonomy on behalf of users in open, multi-party settings, interacting with untrusted counterparts and managing…

Programming Languages · Computer Science 2026-05-06 Kiran Gopinathan , Jack Feser , Michelangelo Naim , Zenna Tavares , Eli Bingham

Implementing distributed systems is hard; choreographic programming aims to make it easier. In this paper, we present the design of a new choreographic programming language that supports isolated transactions among overlapping sets of…

Programming Languages · Computer Science 2023-04-14 Ton Smeele , Sung-Shik Jongmans

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

Choreographic programming is an emerging programming paradigm for concurrent and distributed systems, whereby developers write the communications that should be enacted and then a distributed implementation is automatically obtained by…

Programming Languages · Computer Science 2022-08-18 Luís Cruz-Filipe , Eva Graversen , Lovro Lugović , Fabrizio Montesi , Marco Peressotti

We define a method to automatically synthesize provably-correct efficient distributed implementations from high-level global choreographies. A global choreography describes the execution and communication logic between a set of provided…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-06-03 Mohamad Jaber , Yliès Falcone , Paul Attie , Al-Abbass Khalil , Rayan Hallal

Choreographies prescribe the rendez-vous synchronisation of messages in a system of communicating finite state machines. Such a system is called realisable, if the traces of the prescribed communication coincide with those of the…

Logic in Computer Science · Computer Science 2022-12-06 Klaus-Dieter Schewe , Yamine Ait-Ameur , Sarah Benyagoub

Choreographies describe distributed protocols from a global viewpoint, enabling correct-by-construction synthesis of local behaviours. We develop a policy-parametric type system that prevents information leaks from high-security data to…

Programming Languages · Computer Science 2026-02-26 Marco Bertoni , Saverio Giallorenzo , Marco Peressotti

We present a programming model and typing discipline for complex multi-robot coordination programming. Our model encompasses both synchronisation through message passing and continuous-time dynamic motion primitives in physical space. We…

Robotics · Computer Science 2020-10-13 Rupak Majumdar , Nobuko Yoshida , Damien Zufferey

Designing and analysing multiparty distributed interactions can be achieved either by means of a global view (e.g. in choreography-based approaches) or by composing available computational entities (e.g. in service orchestration). This…

Programming Languages · Computer Science 2012-04-13 Julien Lange , Emilio Tuosto

We present initial results on a comprehensive model of structured communications, in which self- adaptation and security concerns are jointly addressed. More specifically, we propose a model of self-adaptive, multiparty communications with…

Logic in Computer Science · Computer Science 2014-08-27 Ilaria Castellani , Mariangiola Dezani-Ciancaglini , Jorge A. Pérez

We present an overview of some recent efforts aimed at the development of Choreographic Programming, a programming paradigm for the production of concurrent software that is guaranteed to be correct by construction from global descriptions…

Programming Languages · Computer Science 2015-02-11 Fabrizio Montesi

Contract-based design is a promising methodology for taming the complexity of developing sophisticated systems. A formal contract distinguishes between assumptions, which are constraints that the designer of a component puts on the…

Formal Languages and Automata Theory · Computer Science 2020-05-11 Ezio Bartocci , Thomas Ferrère , Thomas A. Henzinger , Dejan Nickovic , Ana Oliveira da Costa

Choreographies are global descriptions of system behaviors, from which the local behavior of each endpoint entity can be obtained automatically through projection. To guarantee that its projection is correct, i.e. it has the same behaviors…

Programming Languages · Computer Science 2013-08-05 Ivan Lanese , Fabrizio Montesi , Gianluigi Zavattaro

Choreographies are global descriptions of interactions among concurrent components, most notably used in the settings of verification (e.g., Multiparty Session Types) and synthesis of correct-by-construction software (Choreographic…

Programming Languages · Computer Science 2017-08-09 Luís Cruz-Filipe , Kim S. Larsen , Fabrizio Montesi

Relating the specification of the global communication behavior of a distributed system and the specifications of the local communication behavior of each of its nodes/peers (e.g., to check if the former is realizable by the latter under…

Logic in Computer Science · Computer Science 2014-07-17 Luís Caires , Jorge A. Pérez