English
Related papers

Related papers: Implementing Choreography Extraction

200 papers

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

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

A choreography describes a transaction in which several principals interact. Since choreographies frequently describe business processes affecting substantial assets, we need a security infrastructure in order to implement them safely. As…

Logic in Computer Science · Computer Science 2010-02-05 Marco Carbone , Joshua Guttman

The BPMN 2.0 standard is a widely used semi-formal notation to model distributed information systems from different perspectives. The standard makes available a set of diagrams to represent such perspectives. Choreography diagrams represent…

Software Engineering · Computer Science 2023-06-22 Flavio Corradini , Andrea Morichetta , Andrea Polini , Barbara Re , Francesco Tiezzi

We survey our results about verification of adaptable processes. We present adaptable processes as a way of overcoming the limitations that process calculi have for describing patterns of dynamic process evolution. Such patterns rely on…

Logic in Computer Science · Computer Science 2015-12-25 Mario Bravetti

We investigate refinement in the context of choreographies. We introduce refinable global choreographies allowing for the underspecification of protocols, whose interactions can be refined into actual protocols. Arbitrary refinements may…

Logic in Computer Science · Computer Science 2020-09-18 Ugo de'Liguoro , Hernán Melgratti , Emilio Tuosto

Pattern discovery algorithms in the music domain aim to find meaningful components in musical compositions. Over the years, although many algorithms have been developed for pattern discovery in music data, it remains a challenging task. To…

Sound · Computer Science 2020-10-26 Iris Ren , Anja Volk , Wouter Swierstra , Remco C. Veltkamp

Choreographic programming promises a simple approach to the coding of concurrent and distributed systems: write the collective communication behaviour of a system of processes as a choreography, and then the programs for these processes are…

Programming Languages · Computer Science 2025-03-18 Eva Graversen , Fabrizio Montesi , Marco Peressotti

Programming distributed applications free from communication deadlocks and race conditions is complex. Preserving these properties when applications are updated at runtime is even harder. We present a choreographic approach for programming…

Programming Languages · Computer Science 2019-03-14 Mila Dalla Preda , Maurizio Gabbrielli , Saverio Giallorenzo , Ivan Lanese , Jacopo Mauro

Distributed interactions can be suitably designed in terms of choreographies. Such abstractions can be thought of as global descriptions of the coordination of several distributed parties. Global assertions define contracts for…

Distributed, Parallel, and Cluster Computing · Computer Science 2011-08-03 Laura Bocchi , Julien Lange , Emilio Tuosto

Probabilistic programming is a growing area that strives to make statistical analysis more accessible, by separating probabilistic modelling from probabilistic inference. In practice this decoupling is difficult. No single inference…

Programming Languages · Computer Science 2022-04-15 Maria I. Gorinova

The runtime analysis of decentralised software requires instrumentation methods that are scalable, but also minimally invasive. This paper presents a new algorithm that instruments choreographed outline monitors. Our instrumentation…

Software Engineering · Computer Science 2021-04-20 Luca Aceto , Duncan Paul Attard , Adrian Francalanza , Anna Ingólfsdóttir

Program synthesis is the process of automatically translating a specification into computer code. Traditional synthesis settings require a formal, precise specification. Motivated by computer education applications where a student learns to…

Artificial Intelligence · Computer Science 2018-06-05 Evan Hernandez , Ara Vartanian , Xiaojin Zhu

Choreographic approaches to message-passing applications can be regarded as an instance of the model-driven development principles. Choreographies specify interactions among distributed participants coordinating among themselves with…

Formal Languages and Automata Theory · Computer Science 2019-09-16 Hao Zeng , Alexander Kurz , Emilio Tuosto

Automatic choreography generation is a challenging task because it often requires an understanding of two abstract concepts - music and dance - which are realized in the two different modalities, namely audio and video, respectively. In…

Multimedia · Computer Science 2018-11-05 Juheon Lee , Seohyun Kim , Kyogu Lee

To generate dance that temporally and aesthetically matches the music is a challenging problem, as the following factors need to be considered. First, the aesthetic styles and messages conveyed by the motion and music should be consistent.…

Multimedia · Computer Science 2022-07-18 Ho Yin Au , Jie Chen , Junkun Jiang , Yike Guo

In programming, protocols are everywhere. Protocols describe the pattern of interaction (or communication) between software systems, for example, between a user-space program and the kernel or between a local application and an online…

Programming Languages · Computer Science 2022-11-08 Laura Bocchi , Dominic Orchard , A. Laura Voinea

Web service choreographies specify conditions on observable interactions among the services. An important question in this regard is realizability: given a choreography C, does there exist a set of service implementations I that conform to…

Logic in Computer Science · Computer Science 2014-09-10 R. Ramanujam , S. Sheerazuddin

We built Chorex, a language that brings choreographic programming to Elixir as a path toward robust distributed applications. Chorex is unique among choreographic languages because it tolerates failure among actors: when an actor crashes,…

Programming Languages · Computer Science 2025-11-21 Ashton Wiersdorf , Ben Greenman

We propose a formal model for distributed systems, where each participant advertises its requirements and obligations as behavioural contracts, and where multiparty sessions are started when a set of contracts allows to synthesise a…

Logic in Computer Science · Computer Science 2013-10-18 Julien Lange , Alceste Scalas