Skip to main content

Translating Z to Alloy

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5977))

Abstract

Few tools are available to help with the difficult task of validating that a Z specification captures its intended meaning. One tool that has been proven to be useful for validating specifications is the Alloy Analyzer, an interactive tool for checking and visualising Alloy models. However, Z specifications need to be translated to Alloy notation to make use of the Alloy Analyzer. These translations have been performed manually so far, which is a cumbersome and error-prone activity. The aim of this paper is to explore to what extent this process can be automated.

The paper identifies a subset of Z that can be straightforwardly translated to Alloy, and the translation for this subset is formalised. More complex constructs, like schemas, are harder to translate. The paper gives a brief overview of the problems, and discusses alternative translation approaches.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Arthan, R.: Proofpower, http://www.lemma-one.com/ProofPower/

  2. Aydal, E.G., Utting, M., Woodcock, J.: A comparison of state-based modelling tools for model validation. In: Proceedings of Objects, Components, Models and Patterns, 46th International Conference, TOOLS EUROPE 2008, Zurich, Switzerland, June 30 - July 4, 2008. LNBIP, vol. 11. Springer, Heidelberg (2008)

    Google Scholar 

  3. Bolton, C.: Using the Alloy analyzer to verify data refinement in Z. Electronic Notes in Theoretical Computer Science 137, 23–44 (2005)

    Article  Google Scholar 

  4. Börger, E., Butler, M., Bowen, J.P., Boca, P. (eds.): ABZ 2008. LNCS, vol. 5238. Springer, Heidelberg (2008)

    MATH  Google Scholar 

  5. Derrick, J., North, S., Simons, T.: Issues in implementing a model checker for Z. In: Liu, Z., He, J. (eds.) ICFEM 2006. LNCS, vol. 4260, pp. 678–696. Springer, Heidelberg (2006)

    Google Scholar 

  6. Estler, H.-C., Wehrheim, H.: Alloy as a refactoring checker? Electronic Notes in Theoretical Computer Science 214, 331–357 (2008)

    Article  Google Scholar 

  7. Hewitt, M.A., O’Halloran, C.M., Sennett, C.T.: Experiences with PiZA, an animator for Z. In: Till, D., Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1997. LNCS, vol. 1212, pp. 37–51. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  8. ISO/IEC 13568. Information Technology—Z Formal Specification Notation—Syntax, Type System and Semantics. ISO/IEC (2002); First Edition 2002-07-01

    Google Scholar 

  9. Jackson, D.: Software Abstractions: Logic, Language, and Analysis. The MIT Press, Cambridge (2006)

    Google Scholar 

  10. Kang, E., Jackson, D.: Formal modeling and analysis of a flash filesystem in Alloy. In: Börger, et al. (eds.) [4], pp. 294–308

    Google Scholar 

  11. Leuschel, M., Butler, M.: ProB: an automated analysis toolset for the B method. Int. J. Softw. Tools Technol. Transf. 10(2), 185–203 (2008)

    Article  Google Scholar 

  12. Malik, P., Utting, M.: CZT: A framework for Z tools. In: Treharne, et al. (eds.) [21], pp. 65–84

    Google Scholar 

  13. ORA Canada. Z/EVES version 1.5: An overview. In: Hutter, D., Traverso, P. (eds.) FM-Trends 1998. LNCS, vol. 1641, pp. 367–376. Springer, Heidelberg (1999)

    Google Scholar 

  14. Plagge, D., Leuschel, M.: Validating Z specifications using the ProB animator and model checker. In: Davies, J., Gibbons, J. (eds.) IFM 2007. LNCS, vol. 4591, pp. 480–500. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  15. Ramananandro, T.: Mondex, an electronic purse: specification and refinement checks with the Alloy model-finding method. Formal Aspects of Computing 20(1), 21–39 (2008)

    Article  Google Scholar 

  16. Reeve, G., Reeves, S.: Experiences using Z animation tools. Technical Report 01/3/2001, Department of Computer Science, University of Waikato (2001)

    Google Scholar 

  17. Smith, G., Wildman, L.: Model checking Z specifications using SAL. In: Treharne, et al. (eds.) [21]

    Google Scholar 

  18. Spivey, J.M.: The Z Notation: A Reference Manual. Prentice Hall International (UK) Ltd., Hertfordshire (1992)

    Google Scholar 

  19. Spivey, M.: The fuzz type-checker for Z, http://spivey.oriel.ox.ac.uk/mike/fuzz/

  20. Torlak, E., Jackson, D.: Kodkod: A relational model finder. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 632–647. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  21. Treharne, H., King, S., Henson, M.C., Schneider, S. (eds.): ZB 2005. LNCS, vol. 3455. Springer, Heidelberg (2005)

    MATH  Google Scholar 

  22. Utting, M., Malik, P.: Unit testing of Z specifications. In: Börger, et al. (eds.) [4], pp. 309–322

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Malik, P., Groves, L., Lenihan, C. (2010). Translating Z to Alloy. In: Frappier, M., Glässer, U., Khurshid, S., Laleau, R., Reeves, S. (eds) Abstract State Machines, Alloy, B and Z. ABZ 2010. Lecture Notes in Computer Science, vol 5977. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11811-1_28

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11811-1_28

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11810-4

  • Online ISBN: 978-3-642-11811-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics