ZB 2003: Formal Specification and Development in Z and B

Volume 2651 of the series Lecture Notes in Computer Science pp 178-196


Introducing Backward Refinement into B

  • Steve DunneAffiliated withSchool of Computing and Mathematics, University of Teesside

* Final gross prices may vary according to local VAT.

Get Access


The B Method exploits a direct first-order wp predicate-transformer formulation of downward simulation to generate its proof obligations for a refinement, so B’s notion of refinement is restricted to that of forward refinement. Therefore some refinements we would intuitively recognise as valid cannot be proved so in B. While relational formulations of upward simulation abound in the refinement literature, the only predicate-transformer formulations proposed hitherto have been higher-order ones quantified over all postconditions, which cannot be conveniently exploited by the B Method. Here, we propose a new first-order predicate-transformer formulation of upward simulation suitable to be adopted by B for backward refinement.