Summary
It is usually assumed that implementations of nondeterministic programs may resolve the nondeterminacy arbitrarily. In some circumstances, however, we may wish to assume that the implementation is in some sense fair, by which we mean that in its long-term behaviour it does not show undue bias in forever favouring some nondeterministic choices over others. Under the assumption of fairness many otherwise failing programs become terminating. We construct various predicate transformer semantics of such fairly-terminating programs. The approach is based on formulating the familiar temporal operators always, eventually, and infinitely often as predicate transformers. We use these operators to construct a framework that accommodates many kinds of fairness, including varieties of socalled weak and strong fairness in both their all-levels and top-level forms. Our formalization of the notion of fairness does not exploit the syntactic shape of programs, and allows the familiar nondeterminacy and fair nondeterminacy to be arbitrarily combined in the one program. Invariance theorems for reasoning about fairly terminating programs are proved. The semantics admits probabilistic implementations provided that unbounded fairness is excluded.
Similar content being viewed by others
References
Cousot, P., Cousot, R.: Constructive versions of Tarski's fixed point theorems. Pac. J. Math. 82, 43–57 (1979)
Dijkstra, E.W.: A discipline of programming. Englewood Cliffs, N.J.: Prentice-Hall 1976
Dijkstra, E.W.: Extreme solutions of equations. Univ. of Texas at Austin, EWD969, Sept. 1986
Francez, N.: Fairness. Berlin Heidelberg New York: Springer 1986
Morris, J.M.: A theoretical basis for stepwise refinement and the programming calculus. Sci. Comput. Program. 9, 287–306 (1987)
Morris, J.M.: Well-founded induction and the invariance theorem for loops. Inf. Process. Lett. 32, 155–158 (1989)
Park, D.: On the semantics of fair parallelism. In: Bjørner, D. (ed) Abstract Software Specifications. Proceedings, Copenhagen 1979. (Lect. Notes Comput. Sci, vol. 86, pp. 504–526) Berlin Heidelberg New York: Springer 1980
Tarski, A.: A lattice theoretical fixpoint theorem and its applications. Pac. J. Math. 5, 285–309 (1955)
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Morris, J.M. Temporal predicate transformers and fair termination. Acta Informatica 27, 287–313 (1990). https://doi.org/10.1007/BF00264610
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00264610