Abstract
In predicate transformer semantics, a program is represented as a mapping from predicates to predicates. In relational semantics, a program is represented as an (input-output) binary relation over some state space. We show how each of these approaches can be obtained from the other by using thepower construction.
Similar content being viewed by others
References
Back, R. J. R.: On correct refinement of programs,Journal of Computer and Sciences, 23, 49–68 (1981).
Back, R. J. R.: A calculus of refinements for program derivation.Acta Informatica, 25, 593–624 (1988).
Back, R. J. R. and J. von Wright: Refinement calculus, Part I: Sequential programs, In:Proceedings of the 1989 REX Workshop for Refinement of Distributed Systems, Lecture Notes in Computer Science, 430, Springer-Verlag: Berlin-Heidelberg-New York (1989).
Back, R. J. R. and J. von Wright: Combining angels, demons and miracles in program specifications,Theoretical Computer Science, 100, 365–383 (1992).
Back, R. J. R. and J. von Wright: Statement inversion and strongest postcondition,Science of Computer Programming, 20 (3), 223–251 (1993).
de Bakker, J. W.: Recursive programs as predicate transformers, In:Formal Descriptions of Programming Concepts (E. J. Neuhold (ed)), North-Holland: Amsterdam, pp. 165–181, 1978.
Bell, J. L. and Slomson, A. R.:Models and Ultraproducts, 2nd Edition, North-Holland: Amsterdam, 1971.
Blikle, A.: A comparative review of some program verification methods,Mathematical Foundations of Computer Science, J. Gruska (ed.), Lecture Notes in Computer Science 53, Springer-Verlag: Berlin-Heidelberg-New York, pp. 17–33, 1977.
Blikle, A.: The clean termination of iterative programs,Acta Informatica, 16, 199–217 (1981).
Brink, C.: Power structures,Algebra Universalis, 30, 177–216 (1993).
Burris, S. and Sankappanavar, H. P.:A course in Universal Algebra, Springer-Verlag: Berlin, 1981.
Dijkstra, E. W.: Guarded commands, nondeterminacy and formal derivation of programs,Communications of the ACM, 18 (8), 453–458 (1975).
Dijkstra, E. W.:A Discipline of Programming, Prentice-Hall: Englewood Cliffs, New Jersey, 1976.
Dijkstra, E. W. and Scholten, C. S.:Predicate Calculus and Program Semantics, Springer-Verlag: New York, 1990.
Goldblatt, R.: Varieties of complex algebras,Annals of Pure and Applied Logic, 44, 173–242 (1989).
Gries, D.:The Science of Programming, Springer-Verlag: New York, 1981.
Gries, D. and Schneider, F.:A Logical Approach to Discrete Mathematics, Springer-Verlag; New York, 1993.
Guerreiro, P.: A relational model for nondeterministic programs and predicate transformers, In:Proceedings of the 4th International Colloquium on Automata, Languages and Programming, Paris, Lecture Notes in Computer Science, 83, Springer-Verlag: Berlin-Heidelberg-New York, pp. 136–146, 1980.
Guerreiro, P.: Another characterization of weakest preconditions,Lecture Notes in Computer Science, 137, Springer-Verlag: Berlin-Heidelberg-New York, pp. 164–177, 1982.
Harel, D.: First order dynamic logic,Lecture Notes in Computer Science, 68, Springer-Verlag: Berlin-Heidelberg-New York, 1979.
Hoare, C. A. R.: An axiomatic basis for computing programming,Communications of the ACM, 12 (10), 576–583 (1969).
Hoare, C. A. R.: Some properties of predicate transformers,Journal of the ACM, 25 (3), 461–480 (1978).
Hoare, C. A. R., I. J. Hayes, He Jifeng, C. C. Morgan, A. W. Roscoe, J. W. Sanders, I. H. Sorensen, J. M. Spivey, B. A. Sufrin: Laws of programming,Communications of the ACM, 30 (8), 672–686 (1987). Corrigenda,Communications of the ACM, 20 (9), 770 (1987).
Hoare, C. A. R. and Lauer, P. E.: Consistent and complementary formal theories of the semantics of programming languages,Acta Informatica, 3, 135–153 (1974).
Jacobs, D. and Gries, D.: General correctness: A unification of partial and total correctness,Acta Informatica, 22, 67–83 (1985).
Jónsson, B. and Tarski, A.: Boolean algebras with operators I,American Journal of Mathematics, 73, 891–939 (1951).
Majster-Cederbaum, M. E.: A simple relation between relational and predicate transformer semantics for nondeterministic programs,Information Processing Letters, 4, 190–192 (1980).
Nelson, G.: A generalization of Dijkstra's calculus,ACM Transactions of Programming Languages and Systems, 11 (4), 517–561 (1989).
Nguyen, T. T.: A relational model of demonic nondeterministic programs,International Journal of Foundations of Computer Science, 2 (2), 101–131 (1991).
Plotkin, G. D.: A powerdomain construction,SIAM Journal of Computing, 5, 452–487 (1976).
Plotkin, G. D.: Dijkstra's predicate transformers and Smyth's powerdomain, In:Proceedings of Abstract Software Specifications, Copenhagen Winter School, G. Goos and J. Hartmanis (eds), Lecture Notes in Computer Science, 86, Springer-Verlag: Berlin-Heidelberg-New York, pp. 527–553.
de Roever, W. P.: Dijkstra's predicate transformer, non-determinism, recursion and termination,Mathematical Foundations of Computer Science Lecture Notes in Computer Science, 45, Springer-Verlag: Berlin-Heidelberg-New York, pp. 472–481, 1976.
Smyth, M. B.: Power Domains,Journal of Computer and System Sciences, 16, 23–36 (1978).
Smyth, M. B.: Powerdomains and predicate transformers: a topological view, In:Proceedings of IC ALP 10, J. Diaz (ed), Lecture notes in Computer Science, 154, Springer-Verlag: Berlin-Heidelberg-New York, pp. 662–675, 1983.
Stone, M. H.: The theory of representations for Boolean Algebras,Transactions of the American Mathematical Society, 40, 37–111 (1936).
Van Benthem, J.: Correspondence theory, In:Handbook of Philosophical Logic, D. Gabbay and F. Guenthner (eds), Dordrecht: Reidel, pp. 167–247, 1984.
Wand, M.: A characterization of weakest preconditions,Journal of Computer and System Sciences, 15, 209–212 (1977).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Rewitzky, I., Brink, C. Predicate transformers as power operations. Formal Aspects of Computing 7, 169–182 (1995). https://doi.org/10.1007/BF01211604
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF01211604