# Characterizing correctness properties of parallel programs using fixpoints

## Abstract

We have shown that correctness properties of parallel programs can be described using computation trees and that from these descriptions fixpoint characterizations can be generated. We have also given conditions on the form of computation tree descriptions to ensure that a correctness property can be characterized using continuous fixpoints. A consequence is that a correctness property such as inevitability under fair scheduling can be characterized as the least fixpoint of a monotonic, noncontinuous transformer, but cannot be characterized using fixpoints of continuous transformers (nor as the greatest fixpoint of a monotonic transformer of any degree of complexity lower than fair inevitability itself). Hence, currently known proof rules are not applicable (see however [FS80]). We are now investigating whether useful proof rules can exist for correctness properties having only a monotonic, noncontinuous least fixpoint characterization. In addition, we are examining alternate notions of fairness which do have continuous fixpoint characterizations.

## Preview

Unable to display preview. Download preview PDF.

## 8. References

- [BY75]Basu, S.K. and Yeh, R.T., Strong Verification of Programs. IEEE Trans. on Software Engineering, v. SE-1. no. 1, pp.339–354, September 1975.Google Scholar
- [CH78]Chandra, A. K., Computable Nondeterministic Functions. 19th Annual Symp. on Foundations of Computer Science, 1978.Google Scholar
- [CL77]Clarke, E. M., Program Invariants as Fixpoints. 18th Annual Symp. on Foundations of Computer Science, 1977.Google Scholar
- [CL79]Clarke, E. M., Synthesis of Resource Invariants for Concurrent Programs, 6th POPL Conference, January, 1979.Google Scholar
- [CO76]Cousot, P. and Cousot R., Static Determination of Dynamic Properties of Programs. Proc. 2nd Int. Symp. on Programming, (B. Robinet, ed.), Dunod, Paris, April 1976.Google Scholar
- [DE77a]de Bakker, J. W., Recursive Programs as Predicate Transformers. Mathematical Centre, Amsterdam, 1977.Google Scholar
- [DE77b]de Bakker. J. W., Semantics of Infinite Processes Using Generalized Trees. Mathematical Centre, Amsterdam, 1977.Google Scholar
- [DI76]Dijkstra, E. W., A Discipline of Programming, Prentice-Hall, 1976.Google Scholar
- [FS78]Flon, L. and Suzuki, N., Consistent and Complete Proof Rules for the Total Correctness of Parallel Programs. 19th Annual Symp. on Foundations of Computer Science, 1978.Google Scholar
- [FS80]Flon, L. and Suzuki, N., The Total Correctness of Parallel Programs. SIAM J. Comp., to appearGoogle Scholar
- [HI78]Hinman, P. G., Recursion-Theoretic Hierarchies, Springer-Verlag, Berlin, 1978.Google Scholar
- [HO69]Hoare, C. A. R., An Axiomatic Approach to Computer Programming CACM, v.10. no 12., pp.322–329, October 1969.Google Scholar
- [MW79]Meyer, A. R. and Winklmann, K., On the Expressive Power of Dynamic Logic. Proceedings of the 11th Annual ACM Symp. on Theory of Computing, 1979.Google Scholar
- [PA69]Park, D., Fixpoint Induction and Proofs of Program Properties, in Machine Intelligence 5, (D. Mitchie, ed.) Edinburgh University Press, 1970.Google Scholar
- [RE79]Reif, J. H., Data Flow Analysis of Communicating Processes. 6th POPL Conference, January 1979.Google Scholar
- [RO67]Rogers, H. R., Theory of Recursive Functions and Effective Computability, McGraw-Hill, New York, 1967.Google Scholar
- [SV76]Sintzoff, M. and Van Lamsweerde, A., Formal Derivation of Strongly Correct Parallel Programs, M. B. L. E. Research Lab., Brussels, Report R338, October 1976.Google Scholar
- [TA55]Tarski, A., A Lattice-Theoretical Fixpoint Theorem and Its Applications. Pacific J. Math., 5, pp.285–309 (1955).Google Scholar