Möller, B., Hoare, T., Müller, M.E. et al. (1 more author) (2017) A discrete geometric model of concurrent program execution. In: Bowen, J.P. and Zhu, H., (eds.) International Symposium on Unifying Theories of Programming. 6th International Symposium, UTP 2016, June 4-5, 2016, Reykjavik, Iceland. Lecture Notes in Computer Science, 10134 . Springer, Cham , pp. 1-25. ISBN 9783319522272
Abstract
A trace of the execution of a concurrent object-oriented program can be displayed in two-dimensions as a diagram of a non-metric finite geometry. The actions of a programs are represented by points, its objects and threads by vertical lines, its transactions by horizontal lines, its communications and resource sharing by sloping arrows, and its partial traces by rectangular figures. We prove informally that the geometry satisfies the laws of Concurrent Kleene Algebra (CKA); these describe and justify the interleaved implementation of multithreaded programs on computer systems with a lesser number of concurrent processors. More familiar forms of semantics (e.g., verification-oriented and operational) can be derived from CKA. Programs are represented as sets of all their possible traces of execution, and non-determinism is introduced as union of these sets. The geometry is extended to multiple levels of abstraction and granularity; a method call at a higher level can be modelled by a specification of the method body, which is implemented at a lower level. The final section describes how the axioms and definitions of the geometry have been encoded in the interactive proof tool Isabelle, and reports on progress towards automatic checking of the proofs in the paper.
Metadata
Item Type: | Proceedings Paper |
---|---|
Authors/Creators: |
|
Editors: |
|
Copyright, Publisher and Additional Information: | © Springer International Publishing AG 2017. This is an author produced version of a paper subsequently published in Lecture Notes in Computer Science. Uploaded in accordance with the publisher's self-archiving policy. |
Dates: |
|
Institution: | The University of Sheffield |
Academic Units: | The University of Sheffield > Faculty of Engineering (Sheffield) > Department of Computer Science (Sheffield) |
Funding Information: | Funder Grant number ENGINEERING AND PHYSICAL SCIENCE RESEARCH COUNCIL (EPSRC) EP/M017044/1 |
Depositing User: | Symplectic Sheffield |
Date Deposited: | 19 May 2017 08:20 |
Last Modified: | 25 Mar 2018 02:47 |
Published Version: | https://doi.org/10.1007/978-3-319-52228-9_1 |
Status: | Published |
Publisher: | Springer, Cham |
Series Name: | Lecture Notes in Computer Science |
Refereed: | Yes |
Identification Number: | 10.1007/978-3-319-52228-9_1 |
Open Archives Initiative ID (OAI ID): | oai:eprints.whiterose.ac.uk:116278 |