Refinement in Object-Z and CSP

  • Christie Bolton
  • Jim Davies
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2335)


In this paper we explore the relationship between refinement in Object-Z and refinement in CSP. We prove with a simple counter-example that refinement within Object-Z, established using the standard simulation rules, does not imply failures-divergences refinement in CSP. This contradicts accepted results.

Having established that data refinement in Object-Z and failures refinement in CSP are not equivalent we identify alternative refinement orderings that may be used to compare Object-Z classes and CSP processes. When reasoning about concurrent properties we need the strength of the failures-divergences refinement ordering and hence identify equivalent simulation rules for Object-Z. However, when reasoning about sequential properties it is sufficient to work within the simpler relational semantics of Object-Z. We discuss an alternative denotational semantics for CSP, the singleton failures semantic model, which has the same information content as the relational model of Object-Z.


Semantic Model Concrete State State Transition System External Choice Internal Choice 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    R. J. R. Back and R. Kurki-Suonio. Decentralisation of process nets with centralised control. In In 2nd ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, 1983.Google Scholar
  2. 2.
    C. Bolton. On the refinement of state-based and event-based models. PhD thesis, University of Oxford, January 2002. Submitted for examination.Google Scholar
  3. 3.
    C. Bolton and J. Davies. A singleton failures semantics for communicating sequential processes, 2001. Submitted to Formal Aspects of Computing.Google Scholar
  4. 4.
    C. Bolton, J. Davies, and J. Woodcock. On the refinement and simulation of data types and processes. In K. Araki, A. Galloway, and K. Taguchi, editors, Proceedings of Integrated Formal Methods (IFM’99). Springer, 1999.Google Scholar
  5. 5.
    M. J. Butler. A CSP approach to action systems. PhD thesis, University of Oxford, 1992.Google Scholar
  6. 6.
    J. Derrick and E. Boiten. Refinement in Z and Object-Z. Springer, 2001.Google Scholar
  7. 7.
    E. W. Dijkstra. A discipline of Programming. Prentice Hall, 1976.Google Scholar
  8. 8.
    R. Duke, G. Rose, and G. Smith. Object-Z: a specification language advocated for the description of standards. Computer Standards and Interfaces, 17, 1995.Google Scholar
  9. 9.
    C. Fischer. Combination and implementation of processes and data: from CSP-OZ to Java. PhD thesis, University of Oldenburg, 2000.Google Scholar
  10. 10.
    J. He. Process refinement. In J. McDermid, editor, The theory and practice of refinement. Butterworths, 1989.Google Scholar
  11. 11.
    C. A. R. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.Google Scholar
  12. 12.
    C. A. R. Hoare, J. He, and J. W. Sanders. Prespecification in data refinement. Information Processing Letters, 1987.Google Scholar
  13. 13.
    M. B. Josephs. A state-based approach to communicating processes. Distributed Computing, 3:9–18, 1988.zbMATHCrossRefGoogle Scholar
  14. 14.
    C.C. Morgan. Of wp and CSP. In W.H.J. Feijen, A.J.M. van Gasteren, D. Gries, and J. Misra, editors, Beauty is our business: a birthday salute to Edsger W. Dijkstra. Springer-Verlag, 1990.Google Scholar
  15. 15.
    A. W. Roscoe. The Theory and Practice of Concurrency. Prentice Hall Series in Computer Science, 1998.Google Scholar
  16. 16.
    J. Rumbaugh, I. Jacobson, and G. Booch. The Unified Modeling Language Reference Manual. Addison-Wesley, 1997.Google Scholar
  17. 17.
    G. Smith. A fully abstract semantics of classes for Object-Z. Formal Aspects of Computing, 7, 1995.Google Scholar
  18. 18.
    G. Smith. A semantic integration of Object-Z and CSP. In J. Fitzgerald, C.B. Jones, and P. Lucas, editors, Proceedings of Formal Methods Europe (FME’ 97), volume 1313 of Lecture Notes in Computer Science. Springer Verlag, 1997.Google Scholar
  19. 19.
    G. Smith. The Object-Z specification language. Kluwer Academic Publishers, 2000.Google Scholar
  20. 20.
    G. Smith and J. Derrick. Refinement and verification of concurrent systems specified in Object-Z and CSP. In M. Hinchey and Shaoying Liu, editors, Proceedings of First IEEE International Conference on Formal Engineering Methods (ICFEM’ 97). IEEE Computer Society, 1997.Google Scholar
  21. 21.
    J. M. Spivey. The Z notation: a reference manual. Prentice Hall, 1992.Google Scholar
  22. 22.
    J. C. P. Woodcock and C. C. Morgan. Refinement of state-based concurrent systems. In D. Bjørner, C. A. R. Hoare, and H. Langmaack, editors, VDM and Z: Formal methods in software development. Springer, 1990.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Christie Bolton
    • 1
  • Jim Davies
    • 1
  1. 1.Oxford University Computing LaboratoryOxford

Personalised recommendations