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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
ISO/IEC 13568: Information technology—Z formal specification notation— syntax, type system and semantics. International Standard (2002)
Abrial, J.-R.: The B-Book: Assigning Progams to Meanings. Cambridge University Press, Cambridge (1996)
Back, R.J.R.: Procedural Abstraction in the Refinement Calculus. Technical report, Department of Computer Science, Åbo, Finland, Ser. A No. 55 (1987)
Back, R.J.R., Wright, J.: Refinement Concepts Formalised in Higher Order Logic. Formal Aspects of Computing 2, 247–274 (1990)
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)
Carrington, D., Hayes, I., Nickson, R., Watson, G., Welsh, J.: A program Refinement Tool. Formal Aspects of Computing 10(2), 97–124 (1998)
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
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)
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)
Cavalcanti, A.L.C., Woodcock, J.C.P.: A Weakest Precondition Semantics for Z. The Computer Journal 41(1), 1–15 (1998)
Cavalcanti, A.L.C., Woodcock, J.C.P.: ZRC—A Refinement Calculus for Z. Formal Aspects of Computing 10(3), 267–289 (1999)
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)
Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)
Gordon, M.J.C., Melham, T.F. (eds.): Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, Cambridge (1993)
Groves, L.: Adapting Formal Derivations. Technical Report CS-TR-95-9, Victoria University of Wellington (1995)
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)
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)
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)
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)
Laibinis, L.: Mechanised Formal Reasoning about Modular Programs. PhD thesis, Turku Centre for Computer Science (2000)
Morgan, C.C.: Programming from Specifications, 2nd edn. Prentice-Hall, Englewood Cliffs (1994)
Oliveira, M., Cavalcanti, A.L.C.: Tactics of Refinement. In: 14th Brazilian Symposium on Software Engineering, pp. 117–132 (2000)
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)
Spivey, J.M.: The Z Notation: A Reference Manual, 2nd edn. Prentice-Hall, Englewood Cliffs (1992)
Staples, M.: A Mechanised Theory of Refinement. PhD thesis, Cambridge University (1999)
Utting, M.: The ergo5 generic proof engine. Technical Report 97-44, Software Verification Research Centre (1997)
Vickers, T.: An Overview of a Refinement Editor. In: 5th Australian Software Engineering Conference, Sidney, Australia, pp. 39–44 (1990)
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)
Woodcock, J.C.P., Davies, J.: Using Z—Specification, Refinement, and Proof. Prentice-Hall, Englewood Cliffs (1996)
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)
Wright, J., Hekanaho, J., Luostarinen, P., Langbacka, T.: Mechanizing Some Advanced Refinement Concepts. Formal Methods in System Design 3, 49–81 (1993)
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
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