Skip to main content

Specification and Inheritance in CSP-OZ

  • Conference paper
Formal Methods for Components and Objects (FMCO 2002)

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

Included in the following conference series:

Abstract

CSP-OZ [16,18] is a combination of Communicating Sequential Processes (CSP) and Object-Z (OZ). It enables the specification of systems having both a state-based and a behaviour-oriented view using the object-oriented concepts of classes, instantiation and inheritance. CSP-OZ has a process semantics in the failures divergence model of CSP. In this paper we explain CSP-OZ and investigate the notion of inheritance. Behavioural subtyping relations between classes introduced in [50] guarantee the inheritance of safety and ”liveness” properties.

This research is partially supported by the DFG under grant Ol/98-3.

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. America, P.: Designing an object-oriented programming language with behavioural subtyping. In: de Bakker, J.W., Rozenberg, G., de Roever, W.-P. (eds.) REX 1990. LNCS, vol. 489. Springer, Heidelberg (1991)

    Google Scholar 

  2. Bolognesi, T., Brinksma, E.: Introduction to the ISO specification language LOTOS. Computer Networks and ISDN Systems 14, 25–59 (1987)

    Article  Google Scholar 

  3. Bredereke, J.: Maintaining telephone switching software requirements. IEEE Communications Magazine 40(11), 104–109 (2002)

    Article  Google Scholar 

  4. Brookes, S.D., Hoare, C.A.R., Roscoe, A.W.: A theory of communicating sequential processes. Journal of the ACM 31, 560–599 (1984)

    Article  MATH  MathSciNet  Google Scholar 

  5. Brucker, A., Wolff, B.: A proposal for a formal OCL semantics in Isabelle/HOL. In: Carreño, V.A., Muñoz, C.A., Tahar, S. (eds.) TPHOLs 2002. LNCS, vol. 2410, p. 99. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  6. Butler, M.: csp2B: A practical approach to combining CSP and B. In: Wing, J.M., Woodcock, J.C.P., Davies, J. (eds.) FM 1999. LNCS, vol. 1708, pp. 490–508. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  7. Chandy, K.M., Misra, J.: Parallel Program Design – A Foundation. Addison-Wesley, Reading (1988)

    MATH  Google Scholar 

  8. Damm, W., Josko, B., Pnueli, A., Votintseva, A.: Understanding UML: A Formal Semantics of Concurrency and Communication in Real-Time UML. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 71–98. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  9. Damm, W., Westphal, B.: Live and Let Die: LSC-based Verification of UMLModels. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 99–135. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  10. Denvir, B.T., Oliveira, J., Plat, N.: The Cash-Point (ATM) Problem. Formal Aspects of Computing 12(4), 211–215 (2000)

    Article  Google Scholar 

  11. Duke, R., Rose, G., Smith, G.: Object-Z: A specification language advocated for the description of standards. Computer Standards and Interfaces 17, 511–533 (1995)

    Article  Google Scholar 

  12. Fischer, C., Olderog, E.-R., Wehrheim, H.: A CSP view on UML-RT structure diagrams. In: Hussmann, H. (ed.) FASE 2001. LNCS, vol. 2029, pp. 91–108. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  13. Fischer, C., Smith, G.: Combining CSP and Object-Z: Finite or infinite tracesemantics? In: Mizuno, T., Shiratori, N., Higashino, T., Togashi, A. (eds.) Proceedings of FORTE/PSTV 1997, pp. 503–518. Chapmann & Hall, Boca Raton (1997)

    Google Scholar 

  14. Fischer, C., Wehrheim, H.: Model-checking CSP-OZ specifications with FDR. In: Araki, K., Galloway, A., Taguchi, K. (eds.) Integrated Formal Methods, pp. 315–334. Springer, Heidelberg (1999)

    Google Scholar 

  15. Fischer, C., Wehrheim, H.: Behavioural subtyping relations for object-oriented formalisms. In: Rus, T. (ed.) AMAST 2000. LNCS, vol. 1816, pp. 469–483. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  16. Fischer, C.: CSP-OZ: A combination of Object-Z and CSP. In: Bowman, H., Derrick, J. (eds.) Formal Methods for Open Object-Based Distributed Systems (FMOODS 1997), vol. 2, pp. 423–438. Chapman & Hall, Boca Raton (1997)

    Google Scholar 

  17. Fischer, C.: How to combine Z with a process algebra. In: Bowen, J.P., Fett, A., Hinchey, M.G. (eds.) ZUM 1998. LNCS, vol. 1493, pp. 5–23. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  18. Fischer, C.: Combination and Implementation of Processes and Data: From CSPOZ to Java. PhD thesis, Bericht Nr. 2/2000, University of Oldenburg (April 2000)

    Google Scholar 

  19. Galloway, A.J., Stoddart, W.: An operational semantics for ZCCS. In: Hinchey, M., Liu, S. (eds.) Int. Conf. of Formal Engineering Methods (ICFEM), IEEE, Los Alamitos (1997)

    Google Scholar 

  20. Hatcliff, J., Dwyer, M.: Using the Bandera tool set to model-check properties of concurrent Java software. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, p. 39. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  21. Helke, S., Santen, T.: Mechanized analysis of behavioral conformance in the Eiffel base libraries. In: Oliveira, J.N., Zave, P. (eds.) FME 2001. LNCS, vol. 2021, p. 20. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  22. Hoare, C.A.R.: Communicating sequential processes. CACM 21, 666–677 (1978)

    MATH  Google Scholar 

  23. Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)

    MATH  Google Scholar 

  24. Hoenicke, J., Olderog, E.-R.: Combining specification techniques for processes, data and time. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 245–266. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  25. Huisman, M., Jacobs, B.: Java Program Verification via a Hoare Logic with Abrupt Termination. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 284–303. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  26. ISO. Final comittee draft on enhancements to LOTOS. ISO/IEC JTC1/SC21, WG7 Enhancements to LOTOS (1998), ftp://ftp.dit.upm.es/pub/lotos/elotos/Working.Docs/

  27. Kolyang. HOL-Z – An Integrated Formal Support Environment for Z in Isabelle/ HOL. PhD thesis, Univ. Bremen, 1997. Shaker Verlag, Aachen (1999)

    Google Scholar 

  28. Latella, D., Majzik, I., Massink, M.: Automatic verification of a behavioural subset of UML statechart diagrams using the SPIN model-checker. Formal Aspects of Computing 11, 430–445 (1999)

    Article  Google Scholar 

  29. Leavens, G.T., Weihl, W.E.: Specification and verification of object-oriented programs using supertype abstraction. Acta Informatica 32, 705–778 (1995)

    MATH  MathSciNet  Google Scholar 

  30. Leino, K.R.M.: Extended static checking: A ten-year perspective. In: Wilhelm, R. (ed.) Informatics: 10 Years Back, 10 Years Ahead. LNCS, vol. 2000, pp. 157–175. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  31. Liskov, B., Wing, J.: A behavioural notion of subtyping. ACM Transactions on Programming Languages and Systems 16(6), 1811–1841 (1994)

    Article  Google Scholar 

  32. Mahony, B.P., Dong, J.S.: Blending Object-Z and Timed CSP: An introduction to TCOZ. In: The 20th International Conference on Software Engineering (ICSE 1998), April 1998, pp. 95–104. IEEE Computer Society Press, Los Alamitos (1998)

    Chapter  Google Scholar 

  33. Mota, A., Sampaio, A.: Model-checking CSP-Z: strategy, tool support and industrial application. Science of Computer Programming 40(1) (2001)

    Google Scholar 

  34. Nierstrasz, O.: Regular types for active objects. In: Nierstrasz, O., Tsichritzis, D. (eds.) Object-oriented software composition, pp. 99–121. Prentice Hall, Englewood Cliffs (1995)

    Google Scholar 

  35. Olderog, E.-R., Hoare, C.A.R.: Specification-oriented semantics for communicating processes. Acta Inform. 23, 9–66 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  36. Poetzsch-Heffter, A., Meyer, J.: Interactive verification environments for objectoriented languages. Journal of Universal Computer Science 5(3), 208–225 (1999)

    Google Scholar 

  37. Roscoe, A.W.: Model-checking CSP. In: Roscoe, A.W. (ed.) A Classical Mind — Essays in Honour of C.A.R.Hoare, pp. 353–378. Prentice-Hall, Englewood Cliffs (1994)

    Google Scholar 

  38. Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)

    Google Scholar 

  39. Saaltink, M.: The Z/EVES system. In: Till, D., Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1997. LNCS, vol. 1212, pp. 72–88. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  40. Schäfer, T., Knapp, A., Merz, S.: Model Checking UML State Machines and Collaborations. In: Workshop on Software Model Checking. ENTCS, vol. 55 (2001)

    Google Scholar 

  41. Smith, G., Kammüller, F., Santen, T.: Encoding Object-Z in Isabelle/HOL. In: Bert, D., Bowen, J.P., Henson, M.C., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 82–99. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  42. Smith, G.: A fully abstract semantics of classes for Object-Z. Formal Aspects of Computing 7, 289–313 (1995)

    Article  Google Scholar 

  43. Smith, G.: A semantic integration of Object-Z and CSP for the specification of cocurrent systems. In: Fitzgerald, J.S., Jones, C.B., Lucas, P. (eds.) FME 1997. LNCS, vol. 1313, pp. 62–81. Springer, Heidelberg (1997)

    Google Scholar 

  44. Smith, G.: The Object-Z Specification Language. Kluwer Academic Publisher, Dordrecht (2000)

    MATH  Google Scholar 

  45. Smith, G.: An integration of real-time Object-Z and CSP for specifying concurrent real-time systems. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 267–285. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  46. Spivey, J.M.: The Z Notation: A Reference Manual, 2nd edn. Prentice-Hall International Series in Computer Science (1992)

    Google Scholar 

  47. Taguchi, K., Araki, K.: Specifying concurrent systems by Z + CCS. In: International Symposium on Future Software Technology (ISFST), pp. 101–108 (1997)

    Google Scholar 

  48. van der Aalst, W.M.P., Basten, T.: Inheritance of Workflows – An approach to tackling problems related to change. Theoretical Computer Science 270(1-2), 125–203 (2002)

    Article  MATH  MathSciNet  Google Scholar 

  49. Wehrheim, H.: Specification of an automatic manufacturing system – a case study in using integrated formal methods. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 334–348. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  50. Wehrheim, H.: Behavioural subtyping in object-oriented specification formalisms. University of Oldenburg, Habilitation Thesis (2002)

    Google Scholar 

  51. Wehrheim, H.: Checking behavioural subtypes via refinement. In: Rensink, A., Jacobs, B. (eds.) FMOODS 2002: Formal Methods for Open Object-Based Distributed Systems, pp. 79–93. Kluwer, Dordrecht (2002)

    Google Scholar 

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

    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

Olderog, ER., Wehrheim, H. (2003). Specification and Inheritance in CSP-OZ. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, WP. (eds) Formal Methods for Components and Objects. FMCO 2002. Lecture Notes in Computer Science, vol 2852. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39656-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-39656-7_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20303-2

  • Online ISBN: 978-3-540-39656-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics