Browse by author
Lookup NU author(s): Emeritus Professor Cliff JonesORCiD
Abstraction is a crucial tool in specifying and justifying developments of systems. This observation is recognised in many different methods for developing sequential software; it also applies to some approaches to the formal development of concurrent systems although there its use is perhaps less uniform.The rely/guarantee approach to formal design has, for example, been shown to be capable of recording the design of complex concurrent software in a "top down" stepwise process that proceeds from abstract specification to code.In contrast,separation logics were -at least initially- motivated by reasoning about details of extant code.Such approaches can be thought of as "bottom up".The same "top down/bottom up" distinction can be applied to "atomicity refinement" and "linearisability".Some useful mixes of these approaches already exist and they are neither to be viewed as competitive approaches nor are they irrevocably confined by the broad categorisation.This paper reports on recent developments and presents the case for how careful use of abstractions can make it easier to marry the respective advantages of different approaches to reasoning about concurrency.
Author(s): Jones CB
Publication type: Report
Publication status: Published
Series Title: School of Computing Science Technical Report Series
Year: 2012
Pages: 18
Print publication date: 01/06/2012
Source Publication Date: June 2012
Report Number: 1339
Institution: School of Computing Science, University of Newcastle upon Tyne
Place Published: Newcastle upon Tyne
URL: http://www.cs.ncl.ac.uk/publications/trs/papers/1339.pdf