Abstraction as a unifying link for formal approaches to concurrency

  1. Lookup NU author(s)
  2. Professor Cliff Jones
Author(s)Jones CB
Publication type Report
Series TitleSchool of Computing Science Technical Report Series
Source Publication DateJune 2012
Report Number1339
Full text is available for this publication:
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.
InstitutionSchool of Computing Science, University of Newcastle upon Tyne
Place PublishedNewcastle upon Tyne
ActionsLink to this publication