A Proof System for Communicating Sequential Processes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communicating sequential processes
Communications of the ACM
A Discipline of Programming
Impartiality, Justice and Fairness: The Ethics of Concurrent Termination
Proceedings of the 8th Colloquium on Automata, Languages and Programming
Proceedings of the 11th Colloquium on Automata, Languages and Programming
A Compete Proof Rule for Strong Equifair Termination
Proceedings of the Carnegie Mellon Workshop on Logic of Programs
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Decentralization of process nets with centralized control
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
A general result on infinite trees and its applications
STOC '84 Proceedings of the sixteenth annual ACM symposium on Theory of computing
On the extremely fair treatment of probabilistic algorithms
STOC '83 Proceedings of the fifteenth annual ACM symposium on Theory of computing
Theoretical issues in the design and verification of distributed systems
Theoretical issues in the design and verification of distributed systems
Appraising fairness in distributed languages
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Distributed cooperation with action systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Fairness and hyperfairness in multi-party interactions
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Fairness and hyperfairness in multi-party interactions
Distributed Computing
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Hi-index | 0.00 |
Fairness has become one of the main issues in the theory of non-determinism and concurrency. Recently, the problem of proof rules for fair termination of programs (and some of its variants) has attracted considerable attention ([AO83], [APS82], [GFK83], [GFMR81], [LPS81], [P83]). However, though the main interest and motivation for the consideration of fair termination stems from concurrency, almost all of the recent results are formulated in terms of nondeterministic programs. The main reason for this is the elegance of formalisms for structured nondeterminism, such as Guarded Commands [DIJ76], and their convenience for syntax directed proofs. Other attempts use transition-systems as the program model, and temporal logic as the underlying reasoning formalism ([QS82], [P83]), thereby giving up the structured, syntax-directed, approach. A phenomenon inherently related to fairness is that of “unbounded nondeterminism”, whereby a program can produce an infinite set of final outcomes and yet always terminate. Such a behaviour is attributed to random assignments [AP83]. Thus, a classical example of a fairly terminating nondeterministic program is a “random (natural) number' generator”. The presence of unbounded nondeterminism forces the use of countable ordinals (higher than &ohgr;) in proofs of fair termination appealing directly to well-foundedness arguments.