Calculating With Pointer Structures

  • Bernhard Möller
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)


Based on the algebra of relations and maps we present some techniques for safe manipulation of pointer structures, with a special emphasis on tree-like structures. We investigate sufficient criteria for preservation of substructures under selective updating. The approach is illustrated with some simple examples.


Pointer structures sharing destructive updating program transformation relational calculus 


  1. U. Berger, W. Meixner, B. Möller: Calculating a garbage collector. In: M. Broy, M. Wirsing (eds.): Methods of programming. Lecture Notes in Computer Science 544. Berlin: Springer 1991, 137–192Google Scholar
  2. R. Bird: Functional algorithm design. Science of Computer Programming 26, 15–31 (1996)zbMATHMathSciNetCrossRefGoogle Scholar
  3. R.S. Bird, O. de Moor: Algebra of programming. Prentice-Hall 1996CrossRefGoogle Scholar
  4. W. Dosch, B. Möller: Calculating a functional module for binary search trees. In: W. Kluge (ed.): Proceedings of the 8th International Workshop on Implementation of Functional Languages, Bonn, Sept. 16–18, 1996. Lecture Notes in Computer Science. Berlin: Springer (to appear). Preliminary version accessible through Scholar
  5. E.C.R. Hehner: A practical theory of programming. Berlin: Springer 1993zbMATHCrossRefGoogle Scholar
  6. C.A.R. Hoare: Proofs of correctness of data representations. Acta Informatics 1, 271–281 (1972)zbMATHCrossRefGoogle Scholar
  7. E.Meijer, M.Fokkinga, R. Paterson: Functional programming with bananas, lenses, envelopes and barbed wire. In: J. Hughes (ed.): Functional programming and computer architecture. Lecture Notes in Computer Science 523. Berlin: Springer 1991, 124–144Google Scholar
  8. B. Möller: Formal derivation of pointer algorithms. In: M. Broy (Hrsg.): Informatik and Mathematik. Berlin: Springer 1991, 419–440CrossRefGoogle Scholar
  9. B. Möller: Development of graph and pointer algorithms. In: B. Möller, H.A. Partsch, S.A. Schuman (eds.): Formal program development. Lecture Notes in Computer Science 755. Berlin: Springer 1993, 123–160Google Scholar
  10. B. Möller: Towards pointer algebra. Science of Computer Programming 21, 57–90 (1993) B. Möller: Linked lists calculated. Submitted for publication (1997)Google Scholar
  11. P. Pepper, B. Möller: Programming with (finite) mappings. In: M. Broy (ed.): Informatik and Mathematik. Berlin: Springer 1991, 381–405CrossRefGoogle Scholar
  12. G. Schmidt, T. Ströhlein: Relations and graphs. Discrete Mathematics for Computer Scientists. EATCS Monographs on Theoretical Computer Science. Berlin: Springer 1993Google Scholar
  13. J.M. Spivey: The Z notation, 2nd edition. New York: Prentice-Hall 1994Google Scholar

Copyright information

© IFIP 1997

Authors and Affiliations

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

Personalised recommendations