# Appraising fairness in languages for distributed programming

@article{Apt2005AppraisingFI, title={Appraising fairness in languages for distributed programming}, author={K. Apt and N. Francez and Shmuel Katz}, journal={Distributed Computing}, year={2005}, volume={2}, pages={226-241} }

The relations among various languages and models for distributed computation and various possible definitions of fairness are considered. Natural semantic criteria are presented which an acceptable notion of fairness should satisfy. These are then used to demonstrate differences among the basic models, the added power of the fairness notion, and the sensitivity of the fairness notion to irrelevant semantic interleavings of independent operations. These results are used to show that from the… Expand

#### 83 Citations

Fairness and conspiracy concepts in concurrent systems

- Computer Science
- SOEN
- 2009

This paper considers two known fairness definitions, viz., weak fairness and strong fairness, and argues that these concepts are suitable for determining the degree of fairness of a given system. Expand

Defining Fairness in Reactive and Concurrent Systems

- Mathematics, Computer Science
- JACM
- 2012

It turns out that the fairness properties are the sets that are “large” from a topological point of view, that is, they are the co-meager sets in the natural topology of runs of a given system. Expand

Model checking with fairness assumptions using PAT

- Computer Science
- Frontiers of Computer Science
- 2013

This work supports model checking of distributed systems in the toolkit PAT (process analysis toolkit), with a variety of fairness constraints, and shows through empirical evaluation that PAT has advantage in model checking with fairness. Expand

2 Examples of Fairness

We define when a linear-time temporal property is a fairness property with respect to a given system. This captures the essence that is shared by most fairness assumptions that are used in the… Expand

Localizability of Semantic Constraints and Their Distributed Implementations

The concept of interactions has been widely used in distributed programming languages and algebraic models of concurrency to model synchronization and nondeterminism among processes. The combined… Expand

Modeling fairness and starvation in concurrent systems

- Computer Science
- SOEN
- 2007

Standard temporal logic is augmented and a new temporal quantifier viz., never is defined in Dijkstra's weakest precondition calculus, showing that fairness is not the only prerequisite for starvation freedom. Expand

Fairness in systems based on multiparty interactions

- Computer Science
- Concurr. Comput. Pract. Exp.
- 2003

A new fairness notion, k‐conspiracy‐free fairness, is presented that improves on others because it takes finite executions into account, alleviates conspiracies that are not inherent to a program, and k may be set a priori to control its goodness to address the above‐mentioned problems. Expand

CCS: It’s not fair!

- Computer Science, Mathematics
- Acta Informatica
- 2015

This paper presents a simple fair scheduler—one that in suitable variations occurs in many distributed systems—of which no implementation can be expressed in CCS, unless CCS is enriched with a fairness assumption. Expand

Event fairness and non-interleaving concurrency

- Mathematics, Computer Science
- Formal Aspects of Computing
- 2005

A class of generalised notions of (weak, strong and unconditional) event fairness relative to progress requirements is derived and the weakest fairness notion in this class is shown to coincide with maximality with respect to the partial order over traces. Expand

Using Fairness Constraints in Process-Algebraic Verification

- Computer Science
- ICTAC
- 2005

This work presents an algorithm that checks whether a finite representation exists and, if it does, constructs a finite LTS that is equivalent to the infinite system, and shows how this finiteness can be recovered. Expand

#### References

SHOWING 1-10 OF 32 REFERENCES

Appraising Fairness in Languages for Distributed Programming

- Computer Science
- POPL
- 1987

The notion of fairness most often mentioned for Ada is shown to be fully acceptable and none of the commonly used notions of fairness are fully acceptable for a model with an n-way synchronization mechanism. Expand

Fairness in parallel programs: the transformational approach

- Computer Science
- TOPL
- 1988

Since the parallel structure of the original program is preserved, the transformations provide a basis for syntax-directed proofs of total correctness under the fairness assumption and make use of infinite ordinals. Expand

Fair termination of communicating processes

- Computer Science
- PODC '84
- 1984

Almost all of the recent results for fair termination of programs are formulated in terms of nondeterministic programs, due to the elegance of formalisms for structured nondeterminism, and their convenience for syntax directed proofs. Expand

Fairness and hyperfairness in multi-party interactions

- Computer Science
- Distributed Computing
- 2005

A new fairness notion is proposed for languages with multi-party interactions as the sole interprocess synchronization and communication primitive, which is fully adequate with respect to the criteria presented in [2]. Expand

Serializability in Distributed Systems with Handshaking

- Computer Science
- ICALP
- 1988

The equivalence of the two models is shown, up to fairness properties, and sufficient conditions under which reasoning in terms of the serial model is valid even when the execution environment guarantees the weaker properties of the concurrent model only are found. Expand

Rendezvous with ADA: a proof theoretical view

- Computer Science
- AdaTEC '82
- 1982

A fragment of ADA abstracting the communication and synchronization part is studied, emphasizing the justice and fairness aspects of the selection mechanisms. Expand

Fairness and the axioms of control predicates

- Computer Science
- International Journal of Parallel Programming
- 2005

Here, an axiomatic framework for control predicates is examined and it is shown that if all the axioms are to be maintained with common representation mappings, there are difficult new requirements which need to be satisfied by an implementation for fair concurrent models of computation. Expand

Proof Rules and Transformations Dealing with Fairness

- Computer Science
- Sci. Comput. Program.
- 1983

Proof rules enabling the treatment of two fairness assumptions in the context of Dijkstra's do-od-programs are provided, derived by considering a transformed version of the original program which uses random assignments z and admits only fair computations. Expand

A Complete Rule for Equifair Termination

- Computer Science, Mathematics
- J. Comput. Syst. Sci.
- 1986

The notion of equifairness, strengthening the familiar notion of fairness, is introduced as a scheduling policy of nondeterminism and concurrency and a proof rule for proving equif air termination is introduced and proved to be semantically complete. Expand

Impartiality, Justice and Fairness: The Ethics of Concurrent Termination

- Computer Science, Political Science
- ICALP
- 1981

The method of well founded structures for proving termination of programs is extended to concurrent programs and different versions of fairness are introduced: Impartiality, Fairness and Justice. Expand