Abstract
A key property for a development method is compositionality, because it ensures that a method can scale up to cope with large applications. Unfortunately, the inherent interference makes it difficult to devise development methods for concurrent programs (or systems). There are a number of proposals such as rely/guarantee conditions but the overall search for a satisfactory compositional approach to concurrency is an open problem. This paper identifies some issues including granularity and the problems associated with ghost variables; it also discusses using atomicity as a design abstraction.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Martin Buechi and Ralph Back. Compositional symmetric sharing in B. In FM’99 — Formal Methods, volume 1708 of Lecture Notes in Computer Science, pages 431–451. Springer-Verlag, 1999.
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.
Pierre Collette and Cliff B. Jones. Enhancing the tractability of rely/guarantee specifications in the development of interfering operations. In Gordon Plotkin, Colin Stirling, and Mads Tofte, editors, Proof Language and Interaction, chapter 10, pages 275–305. MIT Press, 2000.
K. M. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, 1988.
Ernie Cohen. Separation and reduction. In Mathematics of Program Construction, 5th International Conference, Portugal, July 2000. Science of Computer Programming, pages 45–59. Springer-Verlag, 2000.
Piene Collette. Design of Compositional Proof Systems Based on Assumption-Commitment Specifications–Application to UNITY. PhD Thesis, Louvain-laNeuve, June 1994.
Jürgen Dingel. Systematic Parallel Programming PhD Thesis, Carnegie Mellon University, 2000. CMU-CS-99–172.
W. P. de Roever and K. Engelhardt. Data Refinement: Model-Oriented Proof Methods and Their Comparison. Cambridge University Press, 1999.
John Fitzgerald and Cliff Jones. A tracking system. In J. C. Bicarregui, editor, Proof in VDM: Case Studies, FACIT, pages 1–30. Springer-Verlag, 1998.
N. Francez and A. Pnueli. A proof method for cyclic programs. Acta Informatica, 9: 133–157, 1978.
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.
C. B. Jones. Specification and design of (parallel) programs. In Proceedings of IFIP ‘83, pages 321–332. North-Holland, 1983.
C. B. Jones. Accommodating interference in the formal design of concurrent object-based programs. Formal Methods in System Design, 8 (2): 105–122, March 1996.
C. B. Jones. Scientific decisions which characterize VDM. In FM’99 — Formal Methods, volume 1708 of Lecture Notes in Computer Science, pages 28–47. Springer-Verlag, 1999.
C. B. Jones. Thinking tools for the future of computing science. In Informatics — 10 Years Back, 10 Years Forward, volume 2000 of Lecture Notes in Computer Science, pages 112–130. Springer-Verlag, 2000.
W. Janssen, M. Poel, and J. Zwiers. Action systems and action refinement in the development of parallel systems. In [BG91], pages 298–316, 1991.
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100: 1–77, 1992.
S. S. Owicki and D. Gries. An axiomatic proof technique for parallel programs I. Acta Informatica, 6: 319–340, 1976.
S. Owicki. Axiomatic Proof Techniques for Parallel Programs. PhD Thesis, Department of Computer Science, Cornell University, 1975. 75–251.
Anna Philippou and David Walker. On transformations of concurrent-object programs. Theoretical Computer Science, 195: 259–289, 1998.
San99] Davide Sangiorgi. Typed x-calculus at work: a correctness proof of Jones’s parallelisation transformation on concurrent objects. Theory and Practice of Object Systems, 5(1):25–34,1999
Sti86] C. Stirling. A compositional reformulation of Owicki-Gries’ partial correctness logic for a concurrent while language. In ICALP 86 Springer-Verlag, 1986. LNCS 226.
C. Stirling. A generalisation of Owicki-Gries’s Hoare logic for a concurrent while language. TCS, 58: 347–359, 1988.
K. Stolen. Development of Parallel Programs on Shared Data–Structures PhD Thesis, Manchester University, 1990. available as UMCS–91–1–1.
Qiwen Xu. A Theory of State-based Parallel Programming. PhD Thesis, Oxford University, 1992.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer Science+Business Media New York
About this chapter
Cite this chapter
Jones, C.B. (2003). Wanted: a compositional approach to concurrency. In: McIver, A., Morgan, C. (eds) Programming Methodology. Monographs in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-0-387-21798-7_1
Download citation
DOI: https://doi.org/10.1007/978-0-387-21798-7_1
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4419-2964-8
Online ISBN: 978-0-387-21798-7
eBook Packages: Springer Book Archive