Encoding fairness in a synchronous concurrent program algebra: extended version with proofs

05/04/2018
by   Ian J. Hayes, et al.
0

Concurrent program refinement algebra provides a suitable basis for supporting mechanised reasoning about shared-memory concurrent programs in a compositional manner, for example, it supports the rely/guarantee approach of Jones. The algebra makes use of a synchronous parallel operator motivated by Aczel's trace model of concurrency and with similarities to Milner's SCCS. This paper looks at defining a form of fairness within the program algebra. The encoding allows one to reason about the fair execution of a single process in isolation as well as define fair-parallel in terms of a base parallel operator, of which no fairness properties are assumed. An algebraic theory to support fairness and fair-parallel is developed.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/09/2019

Handling localisation in rely/guarantee concurrency: An algebraic approach

The rely/guarantee approach of Jones extends Hoare logic with rely and g...
research
10/09/2017

A synchronous program algebra: a basis for reasoning about shared-memory and event-based concurrency

This research started with an algebra for reasoning about rely/guarantee...
research
11/16/2018

Kleene Algebra with Observations

Kleene algebra with tests (KAT) is an algebraic framework for reasoning ...
research
02/22/2020

Concurrent Kleene Algebra with Observations: from Hypotheses to Completeness

Concurrent Kleene Algebra (CKA) extends basic Kleene algebra with a para...
research
03/29/2021

Deriving Laws for Developing Concurrent Programs in a Rely-Guarantee Style

In this paper we present a theory for the refinement of shared-memory co...
research
11/30/2017

Keep it Fair: Equivalences

For models of concurrent and distributed systems, it is important and al...
research
06/24/2021

Modelling Mutual Exclusion in a Process Algebra with Time-outs

I show that in a standard process algebra extended with time-outs one ca...

Please sign up or login with your details

Forgot password? Click here to reset