Choreography synthesis as contract agreement

Julien Lange, Alceste Scalas

    Research output: Contribution to journalConference articlepeer-review


    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 choreography. Our framework is based on the CO2 calculus for contract-oriented computing, and borrows concepts and results from the session type literature. It supports sessions where the number of participants is not determined beforehand, and keeps CO2’s ability to rule out participants that are culpable if contracts are not fulfilled at runtime. We show that we have progress and session fidelity in CO2, as a result of the honesty of participants — i.e., their ability to always adhere to their contracts.

    Original languageEnglish
    Pages (from-to)52-67
    Number of pages16
    JournalElectronic Proceedings in Theoretical Computer Science, EPTCS
    Publication statusPublished - 15 Oct 2013
    Event6th Interaction and Concurrency Experience, ICE 2013 - Florence, Italy
    Duration: 6 Jun 2013 → …

    Cite this