Advertisement

Assertions and recursions

  • Bernhard Möller
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1074)

Abstract

We provide an algebraic description of subtypes and the way they propagate through recursive functions. By abstracting from the concrete domain of functions or relations we obtain a framework which is independent of strict or non-strict, deterministic or non-deterministic semantics. Applications include efficiency increasing simplification of recursions as well as proofs about recursions by noetherian induction, such as termination proofs.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    R.C. Backhouse, P. de Bruin, G. Malcolm, T.S. Voermans, J. van der Woude: Relational catamorphisms. In: B. Möller (ed.): Constructing programs from specifications. Proc. IFIP TC2/WG 2.1 Working Conference on Constructing Programs from Specifications, Pacific Grove, CA, USA, 13–16 May 1991. Amsterdam: North-Holland 1991, 287–318Google Scholar
  2. 2.
    F.L. Bauer, B. Möller, H. Partsch, P. Pepper: Formal program construction by-transformations — Computer-aided, Intuition-guided Programming. IEEE Transactions on Software Engineering 15, 165–180 (1989)Google Scholar
  3. 3.
    F.L. Bauer, R. Berghammer, M. Broy, W. Dosch, F. Geiselbrechtinger, R. Gnatz, E. Hangel, W. Hesse, B. Krieg-Brückner, A. Laut, T. Matzner, B. Möller, F. Nicki, H. Partsch, P. Pepper, K. Samelson, M. Wirsing, H. Wössner: The Munich project CIP. Volume I: The wide spectrum language CIP-L. Lecture Notes in Computer Science 183. Berlin: Springer 1985Google Scholar
  4. 4.
    R. Berghammer, H. Ehler, B. Möller: On the refinement of nondeterministic recursive routines by transformation. In: M. Broy, C.B. Jones (eds.): Programming concepts and methods. Amsterdam: North-Holland 1990, 53–71Google Scholar
  5. 5.
    R.S. Bird, O. de Moor: The algebra of programming. Prentice-Hall (to appear)Google Scholar
  6. 6.
    J.H. Conway: Regular algebra and finite machines. London: Chapman and Hall 1971Google Scholar
  7. 7.
    H. Doornbos, R. Backhouse: Induction and recursion on datatypes. In: B. Möller (ed.): Mathematics of Program Construction. Lecture Notes in Computer Science 947. Berlin: Springer 1995, 242–281Google Scholar
  8. 8.
    H. Doornbos, R. Backhouse: Reductivity. Science of Computer Programming (to appear)Google Scholar
  9. 9.
    B. von Karger, C.A.R. Hoare: Sequential calculus. Information Processing Letters 53, 123–130 (1995)Google Scholar
  10. 10.
    S.C. Kleene: Introduction to metamathematics. New York: van Nostrand 1952Google Scholar
  11. 11.
    Mathematics of Program Construction Group: Fixed-point calculus. Information Processing Letters 53, 131–136 (1995)Google Scholar
  12. 12.
    B. Möller: Applicative assertions. In: J.L.A. van de Snepscheut (ed.): Mathematics of Program Construction. Lecture Notes in Computer Science 375. Berlin: Springer 1989, 348–362Google Scholar
  13. 13.
    B. Möller, M. Russling: Shorter paths to graph algorithms. Science of Computer Programming 22, 157–180 (1994)Google Scholar
  14. 14.
    B. Möller: Relations as a program development language. In: B. Möller (ed.): Constructing programs from specifications. Proc. IFIP TC2/WG 2.1 Working Conference on Constructing Programs from Specifications, Pacific Grove, CA, USA, 13–16 May 1991. Amsterdam: North-Holland 1991, 373–397Google Scholar
  15. 15.
    C.C. Morgan: Programming from Specifications. Prentice-Hall, 1990Google Scholar
  16. 16.
    H.A. Partsch: Specification and transformation of programs — A formal approach to software development. Berlin: Springer 1990Google Scholar
  17. 17.
    C. Runciman: Subtype constraints as first-class values. Talk given at 48th meeting of IFIP WG 2.1, Günzburg, Germany, October 1995. Paper in preparationGoogle Scholar
  18. 18.
    M. Russling: A general scheme for breadth-first graph traversal. In: B. Möller (ed.): Mathematics of Program Construction. Lecture Notes in Computer Science 947. Berlin: Springer 1995, 380–398Google Scholar
  19. 19.
    D. Scott: Data types as lattices. SIAM J. Comp. 5, 522–587 (1976)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Bernhard Möller
    • 1
  1. 1.Institut für MathematikUniversität AugsburgAugsburgGermany

Personalised recommendations