Skip to main content

A Refinement Tool for Z

  • Conference paper
Formal Methods and Software Engineering (ICFEM 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2885))

Included in the following conference series:

Abstract

Recently, a refinement calculus called ZRC has been proposed for Z; it follows the style and conventions of the Z notation and is completely formalised. As any other formal technique, however, it needs tool support to be of practical use. In this paper, we present such a tool, which we call ZRC-Refine. It is an interactive tool, whose design makes it distinctively user-friendly. We believe that ZRC-Refine is a significant encouragement to the extended application of ZRC and of Z itself.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ISO/IEC 13568: Information technology—Z formal specification notation— syntax, type system and semantics. International Standard (2002)

    Google Scholar 

  2. Abrial, J.-R.: The B-Book: Assigning Progams to Meanings. Cambridge University Press, Cambridge (1996)

    Book  Google Scholar 

  3. Back, R.J.R.: Procedural Abstraction in the Refinement Calculus. Technical report, Department of Computer Science, Åbo, Finland, Ser. A No. 55 (1987)

    Google Scholar 

  4. Back, R.J.R., Wright, J.: Refinement Concepts Formalised in Higher Order Logic. Formal Aspects of Computing 2, 247–274 (1990)

    Article  Google Scholar 

  5. Butler, M.J., Grundy, J., Langbacka, T., Rukvenas, R., Wright, J.: The Refinement Calculator – Proof Support for Program Refinement. In: FMP 1997 – Formal Methods Pacific. Springer, Heidelberg (1997)

    Google Scholar 

  6. Carrington, D., Hayes, I., Nickson, R., Watson, G., Welsh, J.: A program Refinement Tool. Formal Aspects of Computing 10(2), 97–124 (1998)

    Article  MATH  Google Scholar 

  7. Cavalcanti, A.L.C.: A Refinement Calculus for Z. PhD thesis, Oxford University Computing Laboratory, Oxford - UK, Technical Monograph TM-PRG-123 (1997) ISBN 00902928-97-X

    Google Scholar 

  8. Cavalcanti, A.L.C., Sampaio, A.C.A., Woodcock, J.C.P.: Procedures and Recursion in the Refinement Calculus. Journal of the Brazilian Computer Society 5(1), 1–15 (1998)

    Article  Google Scholar 

  9. Cavalcanti, A.L.C., Sampaio, A.C.A., Woodcock, J.C.P.: An Inconsistency in Procedures, Parameters, and Substitution the Refinement Calculus. Science of Computer Programming 33(1), 87–96 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  10. Cavalcanti, A.L.C., Woodcock, J.C.P.: A Weakest Precondition Semantics for Z. The Computer Journal 41(1), 1–15 (1998)

    Article  MATH  Google Scholar 

  11. Cavalcanti, A.L.C., Woodcock, J.C.P.: ZRC—A Refinement Calculus for Z. Formal Aspects of Computing 10(3), 267–289 (1999)

    Article  Google Scholar 

  12. Coutinho, S.L., Reis, T.P.C., Cavalcanti, A.L.C.: Uma Ferramenta Educacional de Refinamentos. In: XIII Simpósio Brasileiro de Engenharia de Software, Florianópolis - SC, pp. 61–64. Sessão de Ferramentas (1999)

    Google Scholar 

  13. Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)

    MATH  Google Scholar 

  14. Gordon, M.J.C., Melham, T.F. (eds.): Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, Cambridge (1993)

    MATH  Google Scholar 

  15. Groves, L.: Adapting Formal Derivations. Technical Report CS-TR-95-9, Victoria University of Wellington (1995)

    Google Scholar 

  16. Groves, L., Nickson, R., Utting, M.: A Tactic Driven Refinement Tool. In: Jones, C.B., Shaw, R.C., Denvir, T. (eds.) 5th Refinement Workshop, Workshops in Computing, pp. 272–297. Springer, Heidelberg (1992)

    Google Scholar 

  17. Grundy, J.: A Window Inference Tool for Refinement. In: Jones, C.B., Shaw, R.C., Denvir, T. (eds.) 5th Refinement Workshop, Workshops in Computing, pp. 230–254. Springer, Heidelberg (1992)

    Google Scholar 

  18. Hamer, U., Peleska, J.: Z Applied to the A330/340 CIDS Cabin Communication System. In: Hinchey, M.G., Bowen, J.P. (eds.) Applications of Formal Methods. ch. 11, pp. 253–284. Prentice-Hall, Englewood Cliffs (1995)

    Google Scholar 

  19. King, S.: Z and the Refinement Calculus. In: Langmaack, H., Hoare, C.A.R., Bjorner, D. (eds.) VDM 1990. LNCS, vol. 428, pp. 164–188. Springer, Heidelberg (1990)

    Google Scholar 

  20. Laibinis, L.: Mechanised Formal Reasoning about Modular Programs. PhD thesis, Turku Centre for Computer Science (2000)

    Google Scholar 

  21. Morgan, C.C.: Programming from Specifications, 2nd edn. Prentice-Hall, Englewood Cliffs (1994)

    MATH  Google Scholar 

  22. Oliveira, M., Cavalcanti, A.L.C.: Tactics of Refinement. In: 14th Brazilian Symposium on Software Engineering, pp. 117–132 (2000)

    Google Scholar 

  23. Snepscheut, J.L.A.: Mechanised Support for Stepwise Refinement. In: Gutknecht, J. (ed.) Programming Languages and System Architectures. LNCS, vol. 782, pp. 35–48. Springer, Heidelberg (1994)

    Google Scholar 

  24. Spivey, J.M.: The Z Notation: A Reference Manual, 2nd edn. Prentice-Hall, Englewood Cliffs (1992)

    Google Scholar 

  25. Staples, M.: A Mechanised Theory of Refinement. PhD thesis, Cambridge University (1999)

    Google Scholar 

  26. Utting, M.: The ergo5 generic proof engine. Technical Report 97-44, Software Verification Research Centre (1997)

    Google Scholar 

  27. Vickers, T.: An Overview of a Refinement Editor. In: 5th Australian Software Engineering Conference, Sidney, Australia, pp. 39–44 (1990)

    Google Scholar 

  28. Woodcock, J.C.P.: Implementing Promoted Operations in Z. In: Jones, C.B., Shaw, R.C., Denvir, T. (eds.) 5th Refinement Workshop,Workshops in Computing, London - UK. Prentice-Hall, Englewood Cliffs (1992)

    Google Scholar 

  29. Woodcock, J.C.P., Davies, J.: Using Z—Specification, Refinement, and Proof. Prentice-Hall, Englewood Cliffs (1996)

    MATH  Google Scholar 

  30. Wright, J.: Program Refinement by Theorem Prover. In: Till, D. (ed.) 6th Refinement Workshop, Workshops in Computing, London - UK, pp. 121–150. Springer, Heidelberg (1994)

    Google Scholar 

  31. Wright, J., Hekanaho, J., Luostarinen, P., Langbacka, T.: Mechanizing Some Advanced Refinement Concepts. Formal Methods in System Design 3, 49–81 (1993)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Freitas, A., Nascimento, C., Cavalcanti, A. (2003). A Refinement Tool for Z. In: Dong, J.S., Woodcock, J. (eds) Formal Methods and Software Engineering. ICFEM 2003. Lecture Notes in Computer Science, vol 2885. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39893-6_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-39893-6_23

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20461-9

  • Online ISBN: 978-3-540-39893-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics