Specification, Refinement and Verification of Concurrent Systems—An Integration of Object-Z and CSP

  • Authors:
  • Graeme Smith;John Derrick

  • Affiliations:
  • Software Verification Research Centre, University of Queensland 4072, Australia. smith@it.uq.edu.au;Computing Laboratory, University of Kent, Canterbury, CT2 7NF, UK. j.derrick@ukc.ac.uk

  • Venue:
  • Formal Methods in System Design
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a method of formally specifying, refining and verifying concurrent systems which uses the object-oriented state-based specification language Object-Z together with the process algebra CSP. Object-Z provides a convenient way of modelling complex data structures needed to define the component processes of such systems, and CSP enables the concise specification of process interactions. The basis of the integration is a semantics of Object-Z classes identical to that of CSP processes. This allows classes specified in Object-Z to be used directly within the CSP part of the specification.In addition to specification, we also discuss refinement and verification in this model. The common semantic basis enables a unified method of refinement to be used, based upon CSP refinement. To enable state-based techniques to be used for the Object-Z components of a specification we develop state-based refinement relations which are sound and complete with respect to CSP refinement. In addition, a verification method for static and dynamic properties is presented. The method allows us to verify properties of the CSP system specification in terms of its component Object-Z classes by using the laws of the CSP operators together with the logic for Object-Z.