English
Related papers

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

200 papers

Choreographies are global descriptions of interactions among concurrent components, most notably used in the settings of verification and synthesis of correct-by-construction software. They require a top-down approach: programmers first…

Programming Languages · Computer Science 2022-05-09 Luis Cruz-Filipe , Kim S. Larsen , Fabrizio Montesi , Larisa Safina

We present Cho-Reo-graphies (CR), a new language model that unites two powerful programming paradigms for concurrent software based on communicating processes: Choreographic Programming and Exogenous Coordination. In CR, programmers specify…

Programming Languages · Computer Science 2018-04-25 Farhad Arbab , Luís Cruz-Filipe , Sung-Shik Jongmans , Fabrizio Montesi

Design-by-contract is an important technique for model-based design in which a composite system is specified by a collection of contracts that specify the behavioural assumptions and guarantees of each component. In this paper, we describe…

Logic in Computer Science · Computer Science 2020-07-30 Simon Foster , Ana Cavalcanti , Samuel Canham , Jim Woodcock , Frank Zeyda

An approach to the formal description of service contracts is presented in terms of automata. We focus on the basic property of guaranteeing that in the multi-party composition of principals each of them gets his requests satisfied, so that…

Logic in Computer Science · Computer Science 2023-06-22 Davide Basile , Pierpaolo Degano , Gian-Luigi Ferrari

We consider a solution of automata similar to Population Protocols and Network Constructors. The automata (or nodes) move passively in a well-mixed solution and can cooperate by interacting in pairs. Every such interaction may result in an…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-04-01 Othon Michail

Distributed software is becoming more and more dynamic to support applications able to respond and adapt to the changes of their execution environment. For instance, service-oriented computing (SOC) envisages applications as services…

Logic in Computer Science · Computer Science 2016-02-12 Ignacio Vissani , Carlos Gustavo Lopez Pombo , Emilio Tuosto

Programs are more distributed and concurrent today than ever before, and structural communications are at the core. Constructing and debugging such programs are hard due to the lack of formal specification/verification of concurrency. This…

Programming Languages · Computer Science 2018-08-02 Hanwen Wu , Hongwei Xi

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

Choreographic programming (CP) is a paradigm for implementing distributed systems that uses a single global program to define the actions and interactions of all participants. Library-level CP implementations, like HasChor, integrate well…

Programming Languages · Computer Science 2025-04-25 Mako Bates , Shun Kashiwa , Syed Jafri , Gan Shen , Lindsey Kuper , Joseph P. Near

In service-oriented architecture, services coordinate in one of two ways: directly, using point-to-point communication, or indirectly, through an intermediary called the orchestrator. Orchestrators tend to be more popular because their…

Programming Languages · Computer Science 2026-03-24 Viktor Strate Kløvedal , Dan Plyukhin , Marco Peressotti , Fabrizio Montesi

The paper presents a data-driven model of self-adaptivity for multiparty sessions. System choreography is prescribed by a global type. Participants are incarnated by processes associated with monitors, which control their behaviour. Each…

Logic in Computer Science · Computer Science 2016-06-21 Mario Coppo , Mariangiola Dezani-Ciancaglini , Betti Venneri

Dance performance traditionally follows a unidirectional relationship where movement responds to music. While AI has advanced in various creative domains, its application in dance has primarily focused on generating choreography from…

Sound · Computer Science 2025-06-16 Olga Vechtomova , Jeff Bos

Contracts are a well-established approach for describing and analyzing behavioral aspects of web service compositions. The theory of contracts comes equipped with a notion of compatibility between clients and servers that ensures that every…

Programming Languages · Computer Science 2011-01-26 Maria Grazia Buscemi , Hernán Melgratti

Designing large-scale control systems to satisfy complex specifications is hard in practice, as most formal methods are limited to systems of modest size. Contract theory has been proposed as a modular alternative to formal methods in…

Systems and Control · Electrical Eng. & Systems 2022-11-03 Miel Sharf , Bart Besselink , Karl Henrik Johansson

Choreographies are widely used for the specification of concurrent and distributed software architectures. Since asynchronous communications are ubiquitous in real-world systems, previous works have proposed different approaches for the…

Programming Languages · Computer Science 2017-11-28 Luís Cruz-Filipe , Fabrizio Montesi

Distributed programs are hard to get right because they are required to be open, scalable, long-running, and tolerant to faults. In particular, the recent approaches to distributed software based on (micro-)services where different services…

Programming Languages · Computer Science 2017-08-25 Ian Cassar , Adrian Francalanza , Claudio Antares Mezzina , Emilio Tuosto

Concurrent distributed systems are notoriously difficult to construct and reason about. Choreographic programming is a recent paradigm that describes a distributed system in a single global program called a choreography. Choreographies…

Programming Languages · Computer Science 2024-03-13 Mako Bates , Joseph P. Near

Functional choreographic programming suggests a new propositions-as-types paradigm might be possible. In this new paradigm, communication is not modeled linearly; instead, ownership of a piece of data is modeled as a modality, and…

Programming Languages · Computer Science 2024-06-04 Andrew K. Hirsch

The shift from monolithic applications to composition of distributed software initiated in the early twentieth, is based on the vision of software-as-service. This vision, found in many technologies such as RESTful APIs, advocates globally…

Software Engineering · Computer Science 2024-05-01 Carlos G. Lopez Pombo , Pablo Montepagano , Emilio Tuosto

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