Skip to main content

Modularity and the Rule of Adaptation

  • Conference paper
Algebraic Methodology and Software Technology (AMAST 2004)

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

Abstract

This paper presents a new rule for reasoning about method calls in object-oriented programs. It is an adaptation of Hoareā€™s rule of adaptation to the object-oriented paradigm, which takes both the write effects and the creational effects of a method into account. The new rule contributes in various ways to the modularity of the specification. We also argue that our rule of adaptation is the missing link between Hoare logics and proof outlines for object-oriented programs.

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. de Boer, F., Pierik, C.: Computer-aided specification and verification of annotated object-oriented programs. In: Jacobs, B., Rensink, A. (eds.) FMOODS V, pp. 163ā€“177. Kluwer Academic Publishers, Dordrecht (2002)

    Google ScholarĀ 

  2. Bijlsma, A., Matthews, P., Wiltink, J.: A sharp proof rule for procedures in wp semantics. Acta InformaticaĀ 26, 409ā€“419 (1989)

    ArticleĀ  MATHĀ  MathSciNetĀ  Google ScholarĀ 

  3. Catano, N., Huisman, M.: Chase: a static checker for JMLā€™s assignable clause. In: Zuck, L.D., Attie, P.C., Cortesi, A., Mukhopadhyay, S. (eds.) VMCAI 2003. LNCS, vol.Ā 2575, pp. 26ā€“40. Springer, Heidelberg (2002)

    ChapterĀ  Google ScholarĀ 

  4. Greenhouse, A., Boyland, J.: An object-oriented effects system. In: Guerraoui, R. (ed.) ECOOP 1999. LNCS, vol.Ā 1628, pp. 205ā€“229. Springer, Heidelberg (1999)

    ChapterĀ  Google ScholarĀ 

  5. Hoare, C.: Procedures and parameters:an axiomatic approach. In: Engeler, E. (ed.) Symp. on Semantics of Algorithmic Languages. Lecture Notes in Mathematics, vol.Ā 188, pp. 102ā€“116 (1971)

    Google ScholarĀ 

  6. Huisman, M.: Reasoning about Java programs in higher order logic with PVS and Isabelle. PhD thesis, Katholieke Universiteit Nijmegen (2001)

    Google ScholarĀ 

  7. Kleymann, T.: Hoare logic and auxiliary variables. Formal Aspects of ComputingĀ 11, 541ā€“566 (1999)

    ArticleĀ  MATHĀ  Google ScholarĀ 

  8. Leavens, G.T., Baker, A.L., Ruby, C.: Preliminary design of JML: A behavioral interface specification language for Java. Technical Report 98-06u, Department of Computer Science, Iowa State University (2003)

    Google ScholarĀ 

  9. Naumann, D.A.: Calculating sharp adaptation rules. Information Processing LettersĀ 7, 201ā€“208 (2000)

    Google ScholarĀ 

  10. von Oheimb, D.: Hoare logic for Java in Isabelle/HOL. Concurrency and Computation: Practice and ExperienceĀ 13, 1173ā€“1214 (2001)

    ArticleĀ  MATHĀ  Google ScholarĀ 

  11. Olderog, E.R.: On the notion of expressiveness and the rule of adaptation. Theoretical Computer ScienceĀ 24, 337ā€“347 (1983)

    ArticleĀ  MATHĀ  MathSciNetĀ  Google ScholarĀ 

  12. Pierik, C., de Boer, F.S.: A rule of adaptation for OO. Technical Report UU-CS-2003-032, Institute of Information and Computing Sciences, Utrecht University, The Netherlands (2003)

    Google ScholarĀ 

  13. Pierik, C., de Boer, F.S.: A syntax-directed Hoare logic for object-oriented programming concepts. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol.Ā 2884, pp. 64ā€“78. Springer, Heidelberg (2003)

    ChapterĀ  Google ScholarĀ 

  14. Poetzsch-Heffter, A., Miiller, P.: A programming logic for sequential Java. In: Swierstra, S.D. (ed.) ESOP 1999. LNCS, vol.Ā 1576, pp. 162ā€“176. Springer, Heidelberg (1999)

    ChapterĀ  Google ScholarĀ 

  15. Reus, B., Wirsing, M., Hennicker, R.: A Hoare calculus for verifying Java realizations of OCL-constrained design models. In: Hussmann, H. (ed.) FASE 2001. LNCS, vol.Ā 2029, pp. 300ā€“317. Springer, Heidelberg (2001)

    ChapterĀ  Google ScholarĀ 

  16. Zwiers, J., Hannemann, U., Lakhnech, Y., de Roever, W.P., Stomp, F.: Modular completeness: Integrating the reuse of specified software in top-down program development. In: Gaudel, M.-C., Woodcock, J.C.P. (eds.) FME 1996. LNCS, vol.Ā 1051, pp. 595ā€“608. Springer, Heidelberg (1996)

    Google ScholarĀ 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

Ā© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pierik, C., de Boer, F.S. (2004). Modularity and the Rule of Adaptation. In: Rattray, C., Maharaj, S., Shankland, C. (eds) Algebraic Methodology and Software Technology. AMAST 2004. Lecture Notes in Computer Science, vol 3116. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27815-3_31

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-27815-3_31

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-27815-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics