Contracts in distributed systems

We present a parametric calculus for contract-based computing in distributed systems. By abstracting from the actual contract language, our calculus generalises both the contracts-as-processes and contracts-as-formulae paradigms. The calculus features primitives for advertising contracts, for reaching agreements, and for querying the fulfilment of contracts. Coordination among principals happens via multi-party sessions, which are created once agreements are reached. We present two instances of our calculus, by modelling contracts as (i) processes in a variant of CCS, and (ii) as formulae in a logic. With the help of a few examples, we discuss the primitives of our calculus, as well as some possible variants.

[1]  Ugo Montanari,et al.  CC-Pi: A Constraint-Based Language for Specifying Service Level Agreements , 2007, ESOP.

[2]  Prakash Panangaden,et al.  The semantic foundations of concurrent constraint programming , 1991, POPL '91.

[3]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[4]  Massimo Bartoletti,et al.  A Logic for Contracts , 2009, ICTCS.

[5]  Cosimo Laneve,et al.  A Basic Contract Language for Web Services , 2006, ESOP.

[6]  Mariangiola Dezani-Ciancaglini,et al.  Structured Communications with Concurrent Constraints , 2008, TGC.

[7]  Gian Luigi Ferrari,et al.  A Logic for Graphs with QoS , 2004, VODCA@FOSAD.

[8]  Alexander Artikis,et al.  Specifying norm-governed computational societies , 2009, TOCL.

[9]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[10]  C. McCarty CONSTRUCTIVISM IN MATHEMATICS , 2009 .

[11]  Massimo Bartoletti,et al.  Primitives for Contract-based Synchronization , 2010, ICE.

[12]  Felice Cardone,et al.  The geometry and algebra of commitment , 2011 .

[13]  Vasco Thudichum Vasconcelos,et al.  Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication , 1998, SecReT@ICALP.

[14]  Luca Padovani,et al.  Contracts for Mobile Processes , 2009, CONCUR.

[15]  Maria Grazia Buscemi,et al.  Transactional Service Level Agreement , 2007, TGC.

[16]  Mario Bravetti,et al.  Towards a Unifying Theory for Choreography Conformance and Contract Compliance , 2007, SC@ETAPS.

[17]  Massimo Bartoletti,et al.  A Calculus of Contracting Processes , 2010, 2010 25th Annual IEEE Symposium on Logic in Computer Science.

[18]  Laura Bocchi,et al.  A Theory of Design-by-Contract for Distributed Multiparty Interactions , 2010, CONCUR.

[19]  Martín Abadi,et al.  A Modal Deconstruction of Access Control Logics , 2008, FoSSaCS.

[20]  Ashley T. McNeile,et al.  Protocol contracts with application to choreographed multiparty collaborations , 2010, Service Oriented Computing and Applications.

[21]  Luca Padovani,et al.  A theory of contracts for Web services , 2007, TOPL.

[22]  Christian Johansen,et al.  A Formal Language for Electronic Contracts , 2007, FMOODS.