Skip to main content

Reasoning about interference in an object-based design method

  • Invited Lectures
  • Conference paper
  • First Online:
FME '93: Industrial-Strength Formal Methods (FME 1993)

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

Included in the following conference series:

Abstract

The property of a (formal) development method which gives the development process the potential for productivity is compositionality, compositional development methods for concurrent systems are elusive because of interference. A companion paper shows how object-based concepts can be used to provide a designer with control over interference and proposes a transformational style of development in which concurrency is introduced only in the final stages of design. That approach relies on restrictions to the object graphs which can arise and works for systems which involve limited interference. The current paper discusses the problems of interference and shows how a suitable logic can be used to reason — during design — about those systems where interference plays an essential role. Here again, concepts are used in the design notation which are taken from object-oriented languages since they offer control of granularity and ways of pinpointing interference. A further paper is in preparation which discusses the semantics of the object-based design notation.

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. P. America and F. de Boer. A proof system for process creation. In [BJ90], pages 303–332, 1990.

    Google Scholar 

  2. Pierre America. A proof theory for a sequential version of POOL. Technical Report 0188, Philips Research Laboratories, Philips Research Laboratories, Nederlandse Philips Bedrijven, B.V., September 1986.

    Google Scholar 

  3. Pierre America and Jan Rutten. A Parallel Object-Oriented Language: Design and Semantic Foundations. PhD thesis, Free University of Amsterdam, 1989.

    Google Scholar 

  4. J. C. M. Baeten and J. F. Groote, editors. CONCUR'91 — Proceedings of the 2nd International Conference on Concurrency Theory, volume 527 of Lecture Notes in Computer Science. Springer-Verlag, 1991.

    Google Scholar 

  5. M. Broy and C. B. Jones, editors. Programming Concepts and Methods. North-Holland, 1990.

    Google Scholar 

  6. R. Bloomfield, R. B. Jones, and L. S. Marshall, editors. VDM'88: VDM — The Way Ahead, volume 328 of Lecture Notes in Computer Science. Springer-Verlag, 1988.

    Google Scholar 

  7. H. Barringer and R. Kuiper. Hierachical development of concurrent systems in a temporal logic framework. In Proceedings of NSF/SERC Seminar on Concurrency, CMU, Pittsburgh, 1984.

    Google Scholar 

  8. H. Barringer, R. Kuiper, and A. Pnueli. Now you can compose temporal logic specification. In Proceedings of 16th ACM STOC, Washington, May 1984.

    Google Scholar 

  9. J. Bruijning and C.A. Middelburg. Esprit project 1283: VIP VDM extensions: Final report. Technical Report 2.0, PTT Research, Neher Laboratories, The Netherlands, 1988.

    Google Scholar 

  10. Manfred Broy. On bounded buffers: Modularity, robustness, and reliability in reactive systems. Technical Report MIP-8920, Universitat Passau, Fakultat fur mathematik und Informatik, June 1989.

    Google Scholar 

  11. J. H. Cheng and C. B. Jones. On the usability of logics which handle partial functions. In C. Morgan and J. C. P. Woodcock, editors, 3rd Refinement Workshop, pages 51–69. Springer-Verlag, 1991.

    Google Scholar 

  12. K. M. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, 1988.

    Google Scholar 

  13. Pierre Collette. Semantic rules to compose rely-guarantee specifications. Technical Report RR 92–25, Universit'e de Louvain, 1992.

    Google Scholar 

  14. Pierre Collette. Application of the composition principle to unity-like specifications. In TAPSOFT'93, Lecture Notes in Computer Science. Springer-Verlag, 1993.

    Google Scholar 

  15. Frank Dederichs. Zur strukturierung von spezifikationen verteilter systeme, March 1989.

    Google Scholar 

  16. W. P. de Roever. The quest for compositionality: A survey of assertion-based proof systems for concurrent programs: Part I: Concurrency based on shared variables. In E. J. Neuhold and G. Chroust, editors, Formal Models in Programming. North-Holland, 1985.

    Google Scholar 

  17. N. Francez and A. Pnueli. A proof method for cyclic programs. Acta Informatica, 9:133–157, 1978.

    Article  Google Scholar 

  18. J. V. Guttag and J. J. Horning. Larch: Languages and Tools for Formal Specification. Springer-Verlag, 1993.

    Google Scholar 

  19. J. V. Guttag, J. J. Horning, and J. M. Wing. Larch in five easy pieces. Technical Report 5, DEC, SRC, July 1985.

    Google Scholar 

  20. David Grosvenor and Andy Robinson. An evaluation of rely-guarantee, March 1989. Submitted to Formal Aspects of Computer Science.

    Google Scholar 

  21. J. Hooman and W. P. de Roever. The quest goes on: a survey of proof systems for partial correctness of CSP. In J.W. de Bakker, W. P. de Roever, and G. Rozenberg, editors, Current Trends in Concurrency, pages 343–395. Springer-Verlag, 1986. LNCS 224.

    Google Scholar 

  22. C. A. R. Hoare. Monitors: An operating system structuring concept. Communications of the ACM, 17(10):549–557, October 1974.

    Article  Google Scholar 

  23. C. B. Jones. Development Methods for Computer Programs including a Notion of Interference. PhD thesis, Oxford University, June 1981. Printed as: Programming Research Group Technical Monograph 25.

    Google Scholar 

  24. C. B. Jones. Specification and design of (parallel) programs. In Proceedings of IFIP'83, pages 321–332. North-Holland, 1983.

    Google Scholar 

  25. C. B. Jones. Tentative steps toward a development method for interfering programs. ACM Transactions on Programming Languages and Systems, 5(4):596–619, 1983.

    Article  Google Scholar 

  26. C. B. Jones. Systematic Software Development using VDM. Prentice Hall International, second edition, 1990.

    Google Scholar 

  27. C. B. Jones. Interference resumed. In P. Bailes, editor, Engineering Safe Software, pages 31–56. Australian Computer Society, 1991.

    Google Scholar 

  28. C. B. Jones. Interference revisited. In J. E. Nicholls, editor, Z User Workshop, pages 58–73. Springer-Verlag, 1991.

    Google Scholar 

  29. C. B. Jones. An object-based design method for concurrent programs. Technical Report UMCS-92-12-1, Manchester University, 1992.

    Google Scholar 

  30. C. B. Jones. Constraining interference in an object-based design method. In TAPSOFT'93, Lecture Notes in Computer Science. Springer-Verlag, 1993.

    Google Scholar 

  31. C. B. Jones. Giving semantics to an object-based design notation. In CONCUR'93, Lecture Notes in Computer Science. Springer-Verlag, 1993.

    Google Scholar 

  32. L. Lamport. The temporal logic of actions. Technical Report 79, Digital, SRC, 1991.

    Google Scholar 

  33. C. A. Middelburg. Syntax and Semantics of VVSL A Language for Structured VDM Specifications. PhD thesis, PTT Research, Department of Applied Computer Science, September 1990.

    Google Scholar 

  34. R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100:1–77, 1992.

    Article  Google Scholar 

  35. S. S. Owicki and D. Gries. An axiomatic proof technique for parallel programs I. Acta Informatica, 6:319–340, 1976.

    Article  Google Scholar 

  36. S. Owicki. Axiomatic Proof Techniques for Parallel Programs. PhD thesis, Department of Computer Science, Cornell University, 1975. 75–251.

    Google Scholar 

  37. S. Prehn and W. J. Toetenel, editors. VDM'91 — Formal Software Development Methods. Proceedings of the 4th International Symposium of VDM Europe, Noordwijkerhout, The Netherlands, October 1991. Vol.1: Conference Contributions, volume 551 of Lecture Notes in Computer Science. Springer-Verlag, 1991.

    Google Scholar 

  38. Eugene W Stark. A proof technique for rely/guarantee properties, August 1985.

    Google Scholar 

  39. Eugene W. Stark. Proving entailment between conceptual state specifications. Theoretical Computer Science, 56:135–154, 1988.

    Article  Google Scholar 

  40. C. Stirling. A compositional reformulation of Owicki-Gries' partial correctness logic for a concurrent while language. In ICALP'86. Springer-Verlag, 1986. LNCS 226.

    Google Scholar 

  41. C. Stirling. A generalisation of Owicki-Gries's Hoare logic for a concurrent while language. TCS, 58:347–359, 1988.

    Article  Google Scholar 

  42. K. Stølen. Development of Parallel Programs on Shared Data-Structures. PhD thesis, Manchester University, 1990. available as UMCS-91-1-1.

    Google Scholar 

  43. K. Stølen. A Method for the Development of Totally Correct Shared-State Parallel Programs. In [BG91], pages 510–525, 1991.

    Google Scholar 

  44. K. Stølen. An Attempt to Reason About Shared-State Concurrency in the Style of VDM. In [PT91], pages 324–342, 1991.

    Google Scholar 

  45. J. Sa and B. C. Warboys. Specifying concurrent object-based systems using combined specification notations. Technical Report UMCS-91-7-2, Manchester University, 1991.

    Google Scholar 

  46. J. C. P. Woodcock and B. Dickinson. Using VDM with rely and guarantee-conditions: Experiences of a real project. In [BJM88], pages 434–458, 1988.

    Google Scholar 

  47. Qiwen Xu and Jifeng He. A theory of state-based parallel programming by refinement: Part I. In J. Morris, editor, Proceedings of The Fourth BCS-FACS Refinement Workshop. Springer-Verlag, 1991.

    Google Scholar 

  48. Qiwen Xu. A Theory of State-based Parallel Programming. PhD thesis, Oxford University, 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

James C. P. Woodcock Peter G. Larsen

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jones, C.B. (1993). Reasoning about interference in an object-based design method. In: Woodcock, J.C.P., Larsen, P.G. (eds) FME '93: Industrial-Strength Formal Methods. FME 1993. Lecture Notes in Computer Science, vol 670. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0024634

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56662-5

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics