Advances in Petri nets 1986, part II on Petri nets: applications and relationships to other models of concurrency
Model-Checking for a Subclass of Event Structures
TACAS '97 Proceedings of the Third International Workshop on Tools and Algorithms for Construction and Analysis of Systems
Theoretical Computer Science - Components and objects
Multiparty asynchronous session types
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A theory of contracts for Web services
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Computer Journal
Communications of the ACM
CC-Pi: a constraint-based language for specifying service level agreements
ESOP'07 Proceedings of the 16th European conference on Programming
A formal language for electronic contracts
FMOODS'07 Proceedings of the 9th IFIP WG 6.1 international conference on Formal methods for open object-based distributed systems
Towards a unifying theory for choreography conformance and contract compliance
SC'07 Proceedings of the 6th international conference on Software composition
A Calculus of Contracting Processes
LICS '10 Proceedings of the 2010 25th Annual IEEE Symposium on Logic in Computer Science
Causality analysis in contract violation
RV'10 Proceedings of the First international conference on Runtime verification
A survey of stochastic ω-regular games
Journal of Computer and System Sciences
On the realizability of contracts in dishonest systems
COORDINATION'12 Proceedings of the 14th international conference on Coordination Models and Languages
Hi-index | 0.00 |
We present a theory of contracts. Contracts are interacting processes with an explicit notion of obligations and objectives. We model processes and their obligations as event structures. We define a general notion of agreement, by interpreting contracts as multi-player concurrent games. A participant agrees on a contract if she has a strategy to reach her objectives (or make another participant chargeable for a violation), whatever the moves of her adversaries. We then tackle the problem of protection. A participant is protected by a contract when she has a strategy to defend herself in all possible contexts, even in those where she has not reached an agreement. We show that, in a relevant class of contracts, agreements and protection mutually exclude each other. We then propose a novel formalism for modelling contractual obligations: event structures with circular causality. Using this model, we show how to construct contracts which guarantee both agreements and protection.