Modelling and verifying contract-oriented systems in Maude

Post date: 08-Feb-2014 10:11:15

Upcoming paper (to be presented at WRLA 2014, Grenoble, April 5-6 2014)

Modelling and verifying contract-oriented systems in Maude

M. Bartoletti, M. Murgia, A. Scalas, and R. Zunino

Abstract. We address the problem of modelling and verifying contract-oriented systems, wherein distributed agents may advertise and stipulate contracts, but - differently to most other approaches to distributed agents - are not assumed to always behave "honestly".

We describe an executable specification in Maude of the semantics of CO2, a calculus for contract-oriented systems. The honesty property characterises those agents which always respect their contracts, in all possible execution contexts. Since there is an infinite number of such contexts, honesty cannot be directly verified by model-checking the state space of an agent (indeed, honesty is an undecidable property in general).

The main contribution is a sound verification technique for honesty. To do that, we safely over-approximate the honesty property by abstracting from the actual contexts a process may be engaged with. Then, we develop a model-checking technique for this abstraction, we describe an implementation in Maude, and we discuss some experiments with it.