Skip to main content

Typechecking Z

  • Conference paper
  • First Online:
ZB 2000: Formal Specification and Development in Z and B (ZB 2000)

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

Included in the following conference series:

Abstract

This paper presents some of our requirements for a Z typechecker: that the typechecker accept all well-typeable formulations, however contrived; that it gather information about uses of declarations as needed to support interactive browsing and formal reasoning; that it fit the description given by draft standard Z; and that it be able to check some particular extensions to Z that are intended to allow explicit definitions of schema calculus operators. The paper presents a specification of such a Z typechecker, which we have implemented.

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 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. L. Cardelli. Basic polymorphic typechecking. Science of Computer Programming, 8(2):147–172, April 1987.

    Google Scholar 

  2. P. Hancock. Polymorphic type-checking. In S.L. Peyton Jones, editor, The Implementation of Functional Programming Languages, 1987.

    Google Scholar 

  3. ISO/IEC 14977:1996(E). Information Technology—Syntactic Metalanguage—Extended BNF.

    Google Scholar 

  4. Xiaoping Jia. ZTC: A type checker for Z notation, user’s guide. Technical Report Version 2.03, Division of Software Engineering, School of Computer Science, Telecommunication, and Information Systems, DePaul University, August 1998.

    Google Scholar 

  5. L. Lamport and L.C. Paulson. Should your specification language be typed? Transactions on Programming Languages and Systems, 21(3):502–526, May 1999.

    Google Scholar 

  6. R. Milner. A theory of type polymorphism in programming languages. Journal of Computer and System Science, 17:348–357, 1978.

    Article  MATH  MathSciNet  Google Scholar 

  7. D. Neilson. Machine support for Z: the zedB tool. In Proceedings of the 5th Z User Meeting, 1990.

    Google Scholar 

  8. J.N. Reed and J.E. Sinclair. An algorithm for type-checking Z. Technical Monograph PRG-81, Oxford University Computing Laboratory, Programming Research Group, March 1990.

    Google Scholar 

  9. C.T. Sennett. Review of the type checking and scope rules of the specification language Z. Technical Report 87017, Royal Signals and Radar Establishment, Malvern, November 1987.

    Google Scholar 

  10. J.M. Spivey. Understanding Z: A Specification Language and its Formal Semantics. Cambridge University Press, 1988.

    Google Scholar 

  11. J.M. Spivey. The Z Notation: A Reference Manual, 2nd editon. Prentice Hall, 1992.

    Google Scholar 

  12. J.M. Spivey and B.A. Sufrin. Type inference in Z. In D. Bjørner, C.A.R. Hoare, and H. Langmaack, editors, VDM’90: VDM and Z—Formal Methods in Software Development, LNCS 428, pages 426–451. Springer, 1990.

    Google Scholar 

  13. S. Stepney. Formaliser Home Page. http://public.logica.com/~formaliser/.

  14. B. Sufrin. Using the Hippo system. Technical report, Oxford University Computing Laboratory, Programming Research Group, June 1989.

    Google Scholar 

  15. I. Toyn. Innovations in the notation of standard Z. In ZUM’98: The Z Formal Specification Notation, LNCS 1493. Springer, September 1998.

    Chapter  Google Scholar 

  16. I. Toyn, editor. Z Notation: Final Committee Draft. http://www.cs.york.ac.uk/~ian/zstan/fcd.ps August 1999.

  17. I. Toyn. CADiZ web pages. http://www.cs.york.ac.uk/~ian/cadiz/ 2000.

  18. I. Toyn and J.A. McDermid. CADiZ: An architecture for Z tools and its implementation. Software — Practice and Experience, 25(3):305–330, March 1995.

    Google Scholar 

  19. I. Toyn and S.H. Valentine. Type inference rules for Z. ftp://ftp.cs.york.ac.uk/hisereports/cadiz/ZSTAN/rules.ps March 2000.

  20. I. Toyn, S.H. Valentine, and D.A. Duffy. On mutually recursive free types in Z. In ZB2000: International Conference of B and Z Users, 2000.

    Google Scholar 

  21. S.H. Valentine, I. Toyn, S. Stepney, and S. King. Type-constrained generics. In ZB2000: International Conference of B and Z Users, 2000.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Toyn, I., Valentine, S.H., Stepney, S., King, S. (2000). Typechecking Z. In: ZB 2000: Formal Specification and Development in Z and B. ZB 2000. Lecture Notes in Computer Science, vol 1878. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44525-0_16

Download citation

  • DOI: https://doi.org/10.1007/3-540-44525-0_16

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67944-8

  • Online ISBN: 978-3-540-44525-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics