ZB 2005: Formal Specification and Development in Z and B

Volume 3455 of the series Lecture Notes in Computer Science pp 393-413

Practical Data Refinement for the Z Schema Calculus

  • Lindsay GrovesAffiliated withSchool of Mathematics, Statistics and Computer Science, Victoria University of Wellington

* Final gross prices may vary according to local VAT.

Get Access


It is well known that the principal operators in the Z schema calculus are not monotonic with respect to either operation or data refinement. This is generally regarded as limiting their usefulness in software development, and has lead to proposals to redefine the schema calculus and/or the notion of refinement so that monotonicity is established. We examine this issue more closely, to demonstrate just how non-monotonicity arises, and identify various conditions under which components of schema expressions can be safely replaced by their refinements. This shows that in a wide range of practical situations, refinement of such components can be justified by checking fairly simple conditions.