Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Abadi and L. Lamport. The existence of refinement mappings. Theoretical Computer Science, 82(2):253–284, 1991.
J.-R. Abrial. The B-Book: Assigning Programs to Meanings. Cambridge University Press, 1996.
W.-P. de Roever and K. Engelhardt. Data Refinement: Model-Oriented Proof Methods and their Comparison. Number 47 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1998.
J. Derrick. A single complete refinement rule for Z. Journal of Logic and Computation, 10(5): 663–675, 2000.
E.W. Dijkstra. A Discipline of Programming. Prentice-Hall International, 1976.
E.W. Dijkstra and C.S. Scholten. Predicate Calculus and Program Semantics. Springer Berlin, 1990.
S.E. Dunne. A theory of generalised substitutions. In D. Bert, J.P. Bowen, M.C. Henson, and K. Robinson, editors, ZB2002: Formal Specification and Development in Z and B, number 2272 in Lecture Notes in Computer Science, pages 270–290. Springer-Verlag, 2002.
P.H.B. Gardiner and Carroll Morgan. A single complete rule for data refinement. Formal Aspects of Computing, 5:367–382, 1993.
E.C.R. Hehner. Bunch theory: a simple set theory for computer science. Information Processing Letters, 12(1):26–30, 1981.
Wim H. Hesselink. Programs, Recursion and Unbounded Choice. Number 27 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1992.
C.A.R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12(10): 576–583, 1969.
C.A.R. Hoare, He Jifeng, and J.W. Sanders. Data refinement refined. Number 213 in Lecture Notes in Computer Science, pages 187–196. Springer-Verlag, 1986.
C.C. Morgan. Programming from Specifications (2nd edn). Prentice Hall International, 1994.
K. Robinson. Reconciling axiomatic and model-based specifications using the B Method. In Jonathan P. Bowen, Steve Dunne, Andy Galloway, and Steve King, editors, ZB2000: Formal Specification and Development in B and Z, number 1878 in Lecture Notes in Computer Science, pages 95–106. Springer, 2000.
Steve Schneider. The B Method: an introduction. Cornerstones of Computing. Palgrave, 2001.
J.M. Spivey. The Z Notation: a Reference Manual (2nd edn). Prentice Hall, 1992.
Susan Stepney, David Cooper, and Jim Woodcock. More powerful Z data refinement: pushing the state of the art in industrial refinement. In Jonathan P. Bowen, Andreas Fett, and Michael G. Hinchey, editors, ZUM’ 98: The Z Formal Specification Notation, 11th International Conference of Z Users, Berlin, September,1998, Proceedings, number 1493 in Lecture Notes in Computer Science, pages 284–307. Springer, 1997.
J. von Wright. The lattice of data refinement. Acta Informatica, 31(2):105–135, 1994.
J. Woodcock and J. Davies. Using Z: Specification, Refinement and Proof. Prentice Hall, 1996.
J.C.P. Woodcock and Carroll Morgan. Refinement of state-based concurrent systems. In Dines Bjørner, C. A. R. Hoare, and Hans Langmaack, editors, VDM’ 90, VDM and Z — Formal Methods in Software Development, Third International Symposium of VDM Europe, Kiel, FRG, April 17–21, 1990, Proceedings, number 428 in Lecture Notes in Computer Science, pages 340–351. Springer, 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dunne, S. (2003). Introducing Backward Refinement into B. In: Bert, D., Bowen, J.P., King, S., Waldén, M. (eds) ZB 2003: Formal Specification and Development in Z and B. ZB 2003. Lecture Notes in Computer Science, vol 2651. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44880-2_13
Download citation
DOI: https://doi.org/10.1007/3-540-44880-2_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40253-4
Online ISBN: 978-3-540-44880-8
eBook Packages: Springer Book Archive