Skip to main content

Towards a calculus of predicate transformers

  • Contributed Papers
  • Conference paper
  • First Online:
Mathematical Foundations of Computer Science 1995 (MFCS 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 969))

Abstract

The main purpose of this paper is to investigate whether the relationship between the categories of total functions, relations and predicate transformers described in [7] can be used to develop a calculus of predicate transformers for program derivation in the style of [13] directly from the well established calculus of functions [2]. The results are mixed in the sense that although many laws of the functional calculus can be generalised to predicate transformers, they must be weakened in order to do so.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Backhouse, P.J. de Bruin, G. Malcolm, E. Voermans, J. avn der Woude A Relational Theory of Datatypes, in Proceedings of Workshop on Constructive Algorithmics: The Role of Relations in Program Development (1990)

    Google Scholar 

  2. R.S. Bird Lectures on Constructive Functional Programming. Technical Monograph PRG-69.

    Google Scholar 

  3. R.S. Bird and O. de Moor Solving Optimisation Problems with Catamorphisms. Springer-Verlag Lecture Notes in Computer Science 669 (1992) 45–66.

    Google Scholar 

  4. R.S. Bird and O. de Moor Relational Program Derivation and Context-free Language Recognition In: A Classical Mind. Essays in Honour of C.A.R. Hoare. Prentice-Hall (1994) 17–36.

    Google Scholar 

  5. A. Carboni, M. Kelly and R. Wood A 2-Categorical Approach to Geometric Morphisms I. Sydney Pure Mathematics Research Reports 89-19 (1989), Department of Pure Mathematics, University of Sydney, NSW 2006, Australia.

    Google Scholar 

  6. P.J. Freyd and A. Scedrov Categories, Allegories. North Holland Mathematical Library (1989).

    Google Scholar 

  7. P. Gardiner, C.E. Martin and O. de Moor An Algebraic Construction of Predicate Transformers. Science of Computer Programming 22: 21–44 (1994)

    Google Scholar 

  8. S. Eilenberg and J.B. Wright Automata in General Algebras. Information and Control, 11(4):452–470, 1967.

    Article  Google Scholar 

  9. G. Malcolm Data Structures and Program Tansformation. Science of Computer Programming, 14 (1990) 255–279

    Article  Google Scholar 

  10. C. E. Martin Preordered Categories and Predicate Transformers D.Phil thesis, Computing Laboratory, Oxford (1991).

    Google Scholar 

  11. O. de Moor Categories, Relations and Dynamic Programming D.Phil thesis. Technical Monograph PRG-98, Computing Laboratory, Oxford (1992).

    Google Scholar 

  12. O. de Moor Inductive Data Types IPL? (to be added) (1994)

    Google Scholar 

  13. C.C. Morgan Programming From Specifications (Second Edition) Prentice-Hall, Englewood Cliffs, NJ. (1994)

    Google Scholar 

  14. C.C. Morgan, K. Robinson and P.H.B. Gardiner On the Refinement Calculus PRG Technical Monograph PRG-70, Programming Research Group, Oxford (1988)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jiří Wiedermann Petr Hájek

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Martin, C. (1995). Towards a calculus of predicate transformers. In: Wiedermann, J., Hájek, P. (eds) Mathematical Foundations of Computer Science 1995. MFCS 1995. Lecture Notes in Computer Science, vol 969. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60246-1_154

Download citation

  • DOI: https://doi.org/10.1007/3-540-60246-1_154

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60246-0

  • Online ISBN: 978-3-540-44768-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics