Skip to main content
Log in

Fairness and the axioms of control predicates

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

The North has receded, but the South has not yet arrived.-Reuven Miran, “42 Degrees in the Shade” Every three lines intersect at a point, if the point is thick enough.-Folk theorem

Abstract

Many recent axiomatic definitions for structured programming languages include control predicates,at(S), in(S), andafter(S), which are an abstraction of location counters. The usual axioms identify control locations so as to imply that “no time” (i.e., no state transition) is needed to pass from the end of one statement to the next, and in particular from the end of a loop body back to the test at the head of the loop. Here, an axiomatic framework for control predicates is examined. 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. Several approaches to resolving the difficulty are considered, and in particular it is suggested to replace some axioms of the formP⇒Q byP⇒eventually(Q), whereP andQ are control predicates, thereby separating control states previously identified.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. S. S. Owicki and L. Lamport, Proving Liveness of Concurrent Programs,ACM-TOPLAS Vol. 4, No. 3 (July 1982).

  2. L. Lamport, An Axiomatic Semantics of Concurrent Programming Languages, in:Logics and Models of Concurrent Systems (K. R. Apt-ed), Springer Verlag (1985).

  3. L. Lamport, Control Predicates are Better than Dummy Variables for Reasoning about Program Control,ACM-TOPLAS, Vol. 10, No. 2, (April 1988).

  4. L. Lamport, What It Means for a Concurrent Program to Satisfy a Specification: Why No One has Specified Priority,Proceedings of the 12th ACM-POPL, New Orleans (January 1985).

  5. E. W. Dijkstra,A Discipline of Programming, Prentice Hall (1976).

  6. N. Francez,Fairness, Springer Verlag (1986).

  7. K. A. Apt and C. Delporte-Gallet, Syntax Directed Analysis of Liveness Properties of While Programs,Information and Control 68:223–253 (1986).

    Google Scholar 

  8. C. A. R. Hoare, Communicating Sequential Processes,CACM Vol. 21, No. 8 (August 1978).

  9. K. R. Apt, L. Bouge, and Ph. Clermont, Two Normal Form Theorems for CSP Programs,Information Processing Letters,26:165–171 (December 1987).

    Google Scholar 

  10. R. Kuiper and W. P. deRoever, Fairness Assumptions for CSP in a Temporal Logic Framework, TC2 Working Conference, Garmisch, W. Germany (June 1982).

  11. O. Grumberg, N. Francez, and S. Katz, Fair Termination of Communicating Processes,Proceedings 3rd ACM-PODC, Vancouver, BC (August 1984).

  12. S. Katz and D. Peled, Interleaving Set Temporal Logic,Proceedings of the 6th ACM-PODC, Vancouver, B.C. (August 1987).

  13. E.-R. Olderog and K. R. Apt, Fairness in Parallel Programs: The Transformational Approach, TR8402, Inst. of Inf., Kiel U. (1984), in ACM-TOPLAS (to appear).

  14. S. S. Owicki and D. Gries, An Axiomatic Proof Technique for Parallel Programs,Acta Informatica Vol. 6 (1976).

  15. A. Pnueli, Application of Temporal Logic to the Specification and Verification of Reactive Systems, in:Current Trends in Concurrency (eds.) J. W. deBakker, W. P. deRoever, and G. Rozenberg, LNCS 244, Springer Verlag (1986).

  16. R. J. J. Back and K. Kurki-Suonio, Serializability in Distributed Systems with Handshaking, TR CMU-CS-85-109, Carnegie-Mellon University, Pittsburgh (1985).

    Google Scholar 

  17. K. R. Apt, N. Francez, and S. Katz, Appraising Fairness in Languages for Distributed Programming,Proceedings of the 14th ACM Symposium on Principles of Programming Languages, Munich, West Germany (April 1987), also inDistributed Computing (to appear).

Download references

Author information

Authors and Affiliations

Authors

Additional information

C.R. Categories: D.3.1 [Programming languages] Formal definitions and theory: semantics; D..3.3 [Programming languages] Language constructs: control structures; F.3.1. [Logics and meanings of programs] Specifying and verifying and reasoning about programs.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Francez, N., Katz, S. Fairness and the axioms of control predicates. Int J Parallel Prog 16, 263–278 (1987). https://doi.org/10.1007/BF01407937

Download citation

  • Received:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01407937

Key Words

Navigation