Fairness
Information Processing Letters
Consensus in the presence of partial synchrony
Journal of the ACM (JACM)
A hierarchy of temporal properties (invited paper, 1989)
PODC '90 Proceedings of the ninth annual ACM symposium on Principles of distributed computing
Handbook of theoretical computer science (vol. B)
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
The impact of time on the session problem
PODC '92 Proceedings of the eleventh annual ACM symposium on Principles of distributed computing
Parametric real-time reasoning
STOC '93 Proceedings of the twenty-fifth annual ACM symposium on Theory of computing
Theoretical Computer Science
Temporal proof methodologies for timed transition systems
Information and Computation
Impossibility of distributed consensus with one faulty process
Journal of the ACM (JACM)
IEEE Spectrum
Formal methods: state of the art and future directions
ACM Computing Surveys (CSUR) - Special ACM 50th-anniversary issue: strategic directions in computing research
Time-Adaptive Algorithms for Synchronization
SIAM Journal on Computing
Reaching Agreement in the Presence of Faults
Journal of the ACM (JACM)
On the temporal analysis of fairness
POPL '80 Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Impartiality, Justice and Fairness: The Ethics of Concurrent Termination
Proceedings of the 8th Colloquium on Automata, Languages and Programming
Time-Constrained Automata (Extended Abstract)
CONCUR '91 Proceedings of the 2nd International Conference on Concurrency Theory
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
Communication and synchronization in parallel computation
Communication and synchronization in parallel computation
Euro-Par '02 Proceedings of the 8th International Euro-Par Conference on Parallel Processing
A Theory of Bounded Fair Scheduling
Proceedings of the 5th international colloquium on Theoretical Aspects of Computing
Discounting the future in systems theory
ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
LATA'11 Proceedings of the 5th international conference on Language and automata theory and applications
Quantitatively fair scheduling
Theoretical Computer Science
Hi-index | 0.00 |
Fairness is a mathematical abstraction: in a multiprogramming environment, fairness abstracts the details of admissible (“fair”) schedulers; in a distributed environment, fairness abstracts the relative speeds of processors. We argue that the standard definition of fairness often is unnecessarily weak and can be replaced by the stronger, yet still abstract, notion of finitary fairness. While standard weak fairness requires that no enabled transition is postponed forever, finitary weak fairness requires that for every computation of a system there is an unknown bound k such that no enabled transition is postponed more than k consecutive times. In general, the finitary restriction fin(F) of any given fairness requirement Fis the union of all &ohgr;-regular safety properties contained in F. The adequacy of the proposed abstraction is shown in two ways. Suppose we prove a program property under the assumption of finitary fairness. In a multiprogramming environment, the program then satisfies the property for all fair finite-state schedulers. In a distributed environment, the program then satisfies the property for all choices of lower and upper bounds on the speeds (or timings) of processors. The benefits of finitary fairness are twofold. First, the proof rules for verifying liveness properties of concurrent programs are simplified: well-founded induction over the natural numbers is adequate to prove termination under finitary fairness. Second, the fundamental problem of consensus in a faulty asynchronous distributed environment can be solved assuming finitary fairness.