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.