Skip to main content

Inheritance in object oriented Z

  • Conference paper
  • First Online:
ECOOP'91 European Conference on Object-Oriented Programming (ECOOP 1991)

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

Included in the following conference series:

Abstract

The Z notation for the formal specification of software and systems is based on set-theory and first-order predicate calculus and is widely used and understood. Recent research has demonstrated that by extending the notation to include the idea of a class schema grouping together a state schema and the operation schemas referring to it, an object oriented specification style can be supported.

This paper introduces the concept of inheritance into object oriented Z in two ways. First of all, it defines derivation, an incremental inheritance technique for expressing new class schemas in terms of old ones. Secondly, it characterises subtyping inheritance as a technique for the hierarchical classification of objects. Thus derivation in Z is a basis for reusing existing specification modules. Subtyping inheritance is the basis for considering the substitutability of one class for another.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J-R Abrial, S Schumann and B Meyer, Specification language, in R McKeag and A Macnaghten (eds), On the construction of programs: an advanced course, Cambridge University Press, 1980

    Google Scholar 

  2. Pierre America, A behavioural approach to subtyping in object oriented programming languages, ESPRIT Project 415 Doc No 443, January 1989

    Google Scholar 

  3. Ed Brinksma, Giuseppe Scollo and Chris Steenbergen, LOTOS specifications, their implementations and their tests, Proc. Sixth International Symposium on Protocol Specification, Testing and Verification, Montreal, June 1986 (North Holland)

    Google Scholar 

  4. Luca Cardelli and Peter Wegner, On understanding types, data abstraction and polymorphism, Computing Surveys 17, December 1985

    Google Scholar 

  5. D Carrington, D Duke, R Duke, P King, G Rose and G Smith, Object-Z: An object oriented extension to Z, FORTE89 — International Conference On Formal Description Techniques, Vancouver, December 1989 (North Holland)

    Google Scholar 

  6. William Cook, Jens Palsberg, A denotational semantics of inheritance and its correctness, Object Oriented Programming Systems, Languages and Applications 89, New Orleans, October 1989

    Google Scholar 

  7. Elspeth Cusack, Refinement, conformance and inheritance, Formal Aspects of Computing Vol 3 No 2, April–June 1991

    Google Scholar 

  8. Elspeth Cusack, Steve Rudkin and Chris Smith, An object oriented interpretation of LOTOS, FORTE89 — International Conference On Formal Description Techniques, Vancouver, December 1989 (North Holland)

    Google Scholar 

  9. Elspeth Cusack and Mike Lai, Object oriented specification in LOTOS and Z or, My cat really is object oriented!, Workshop on the Foundations of Object Oriented Languages, Noordwijkerhout, The Netherlands, May 1990

    Google Scholar 

  10. Elspeth Cusack, Object oriented modelling in Z, February 1991, submitted for publication

    Google Scholar 

  11. David Duke and Roger Duke, Towards a semantics for Object-Z, VDM'90: VDM and Z, April 1990

    Google Scholar 

  12. Roger Duke, Gordon Rose and Anthony Lee, Object oriented protocol specification, Proc Tenth International Symposium on Protocol Specification, Testing and Verification, Ottawa, June 1990 (North Holland)

    Google Scholar 

  13. A Goldberg and D Robson, Smalltalk-80: the language and its implementation, Addison-Wesley (1983) reprinted 1985

    Google Scholar 

  14. Joseph A Goguen and Jose Meseguer, Unifying functional, object-oriented and relational programming with logical semantics in Research Directions In Object Oriented Programming, Bruce Shriver and Peter Wegner (editors), MIT Press, 1987

    Google Scholar 

  15. Ian Hayes (ed), Specification Case Studies, Prentice-Hall International Series in Computer Science, 1987

    Google Scholar 

  16. C A R Hoare, Communicating Sequential Processes, Prentice-Hall International Series in Computer Science, 1985

    Google Scholar 

  17. Carroll Morgan, Programming from specifications, Prentice Hall International Series in Computer Science, 1990

    Google Scholar 

  18. T Mayr, Specification of object-oriented systems in LOTOS, International Conference on Formal Description Techniques — FORTE88, Stirling, September 1988 (North Holland)

    Google Scholar 

  19. Peter Wegner and Stanley Zdonik, Inheritance as an incremental modification technique, or what like is and isn't like, European Conference on Object Oriented Programming, Norway, August 1988

    Google Scholar 

  20. J M Spivey, The Z Notation: A Reference Manual, Prentice-Hall International Series in Computer Science, 1989

    Google Scholar 

  21. ISO IS 8807, LOTOS — a formal description technique based on the temporal ordering of observational behaviour, 1989

    Google Scholar 

  22. ISO JTC1 SC21 WG7 N315 Basic Reference Model for Open Distributed Processing, Draft Working Document, December 1990

    Google Scholar 

  23. ISO JTC1 SC21 WG7 N314, Architectural semantics, specification techniques and formalisms, Draft Working Document, December 1990

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pierre America

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cusack, E. (1991). Inheritance in object oriented Z. In: America, P. (eds) ECOOP'91 European Conference on Object-Oriented Programming. ECOOP 1991. Lecture Notes in Computer Science, vol 512. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0057021

Download citation

  • DOI: https://doi.org/10.1007/BFb0057021

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics