Abstract
Bounded fairness is a stronger notion than ordinary eventuality-based fairness, one that guarantees occurrence of an event within a fixed number of occurrences of another event. We formalize bounded fairness by introducing a new family of temporal modal operators. The resultant logic is equivalent to temporal logic with the until modality, but more succinct.
This logic can be used to specify bounded fairness requirements in a more natural manner than possible with until. It can, for example, relate the frequency of shared resource access of a particular process to other processes that access the resource with mutual exclusion. As applications of bounded fairness, we verify requirements for some standard concurrent programming problems and for a new cache protocol. We also show that Dekker’s mutual exclusion algorithm is fair in the conventional sense, but not bounded fair.
Was euer booke containing such vile matter
So fairely bound?
The most excellent and lamentable tragedie, of Romeo and Iuliet
—William Shakespeare (1599)
Research supported in part by the Israel Science Foundation (grant no. 254/01).
Most of this author’s work was performed while at the University of Illinois and at The Ohio State University.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
R. Alur and T. Henzinger. Finitary fairness. ACM Transactions on Programming Languages and Systems, 20:1171–1194, 1998.
M. Azimi, F. Briggs, M. Cekleov, M. Khare, A. Kumar, and L. P. Looi. Scalability port: A coherent interface for shared memory multiprocessors. In Hot Interconnects 10 — A Symposium on High Performance Interconnects, pages 65-70, August 2002.
M. Ben-Ari. Principles of Concurrent Programming. Prentice-Hall International, 1982.
J. E. Burns, M. J. Fischer, P. Jackson, N. A. Lynch, and G. L. Peterson. Shared data requirements for implementation of mutual exclusion using a test-and-set primitive. In Proc. of the International Conference on Parallel Processing, pages 79-87, 1977.
E. W. Dijkstra. Cooperating sequential processes. In F. Genuys, editor, Programming Languages, pages 43-112. Academic Press, 1968.
E. A. Emerson. Temporal and modal logic. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, pages 996-1072. Elsevier Science, 1990.
K. Etessami and Th. Wilke. An until hierarchy and other applications of an Ehrenfeucht-Fräïssé game for temporal logic. Information and Computation, 160(1/2):88–108, July 2000.
R. Fagin and J. H. Williams. A fair carpool scheduling algorithm. IBM J. of Research & Development, 27(2):133–139, 1983.
N. Francez. Fairness. Texts and Monographs in Computer Science. Springer-Verlag, 1986.
D. Gabbay, A. Pnueli, S. Shelah, and J. Stavi. On the temporal analysis of fairness. In Proc. Seventh Annual ACM Symp. on Prin. of Prog. Languages, pages 163-173, 1980.
H. Hansson and B. Jonsson. A framework for reasoning about time and reliability. In Proc. IEEE Real-Time Systems Symp., pages 102-111, 1989.
C. A. R. Hoare. Monitors: An operating system structuring concept. Communications of the ACM, 17(10):549–557, 1974.
D. N. Jayasimha. Communication and Synchronization in Parallel Computation. PhD thesis, Department of Computer Science, University of Illinois, Urbana, IL, June 1988.
D. N. Jayasimha. Distributed synchronizers. In Proc. 17th Intl. Conf. on Parallel Processing, pages 23-27., 1988.
D. N. Jayasimha and N. Dershowitz. Bounded fairness. CSRD Report 615, Center for Supercomputing Research and Development, Univ. of Illinois, Urbana, IL, 1986.
J. A. W. Kamp. Tense Logic and the Theory of Linear Order. PhD thesis, University of California, Los Angeles, CA, 1968.
R. Koymans. Specifying real-time properties with metric temporal logic. Journal of Real-Time Systems, 2:255–299, 1990.
F. Krüger. Temporal Logic of Programs, volume 8 of EATCS Monographs on Theoretical Computer Science. Springer-Verlag, Berlin, October 1987.
Z. Manna and A. Pnueli. Verification of concurrent programs: The temporal framework. In R. S. Boyer and J. S. Moore, editors, The Correctness Problem in Computer Science. Academic Press, New York, NY, 1981.
Z. Manna and A. Pnueli. Proving temporal properties: The temporal way. In Proc. 10th Colloq. on Automata, Languages, and Programming, pages 491-512, 1983.
Z. Manna and A. Pnueli. The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer-Verlag, New York, 1991.
J. S. Ostroff. Temporal Logic for Real Time Systems. Research Studies Press, 1989.
G. L. Peterson. Myths about the mutual exclusion problem. Information Processing Letters, 12(3):115–116, 1981.
A. Pnueli. The temporal logic of programs. In Proc. 19th Annual IEEE Symp. on Foundations of Computer Science, pages 46-57, 1977.
A. Pnueli. The temporal semantics of concurrent programs. In Symp. on the Semantics of Concurrent Computations, volume 70 of Lecture Notes in Computer Science, pages 1-20, Berlin, 1979. Springer-Verlag.
A. Pnueli and E. Harel. Applications of temporal logic to the specification of real time systems. In Symp. on Formal Techniques in Real-Time and Fault-Tolerant Systems, volume 331 of Lecture Notes in Computer Science, pages 84-98, Berlin, 1988. Springer-Verlag.
P. Wolper. The tableau method for temporal logic: An overview. Logique et Analyse, 28:119–152, 1985.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Dershowitz, N., Jayasimha, D.N., Park, S. (2003). Bounded Fairness. In: Dershowitz, N. (eds) Verification: Theory and Practice. Lecture Notes in Computer Science, vol 2772. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39910-0_14
Download citation
DOI: https://doi.org/10.1007/978-3-540-39910-0_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21002-3
Online ISBN: 978-3-540-39910-0
eBook Packages: Springer Book Archive