Skip to main content

Algebraic calculation of graph and sorting algorithms

  • Conference paper
  • First Online:

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

Abstract

We introduce operators and laws of an algebra of formal languages, a subalgebra of which corresponds to the algebra of (multiary) relations. This algebra is then used in the formal specification and derivation of some graph and sorting algorithms. This study is part of an attempt to single out a framework for program development at a very high level of discourse, close to informal reasoning but still with full formal precision.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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 

  2. R. Bird: Lectures on constructive functional programming. In: M. Broy (ed.): Constructive methods in computing science. NATO ASI Series. Series F: Computer and systems sciences 55. Berlin: Springer 1989, 151–216

    Google Scholar 

  3. R.M. Burstall, J. Darlington: A transformation system for developing recursive programs. J. ACM 24, 44–67 (1977)

    Google Scholar 

  4. J. Cai, R. Paige: Program derivation by fixed point computation. Science of Computer Programming 11, 197–261 (1989)

    Google Scholar 

  5. J.H. Conway: Regular algebra and finite machines. London: Chapman and Hall 1971

    Google Scholar 

  6. W. Dosch, B. Möller: Calculating a module for binary search trees. GI-Jahrestagung 1993 (to appear)

    Google Scholar 

  7. M.S. Feather: A survey and classification of some program transformation approaches and techniques. In L.G.L.T. Meertens (ed.): Proc. IFIP TC2 Working Conference on Program Specification and Transformation, Bad Tölz, April 14–17, 1986. Amsterdam: North-Holland1987, 165–195

    Google Scholar 

  8. P. Lescanne: Modèles non déterministes de types abstraits. R.A.I.R.O. Informatique théorique 16, 225–244 (1982)

    Google Scholar 

  9. Z. Manna: Mathematical theory of computation. New York: McGraw-Hill 1974

    Google Scholar 

  10. L.G.L.T. Meertens: Algorithmcs — Towards programming as a mathematical activity. In: J. W. de Bakker et al. (eds.): Proc. CWI Symposium on Mathematics and Computer Science. CWI Monographs Vol 1. Amsterdam: North-Holland 1986, 289–334

    Google Scholar 

  11. 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–362

    Google Scholar 

  12. B. Möller: Relations as a program development language. In [13], 373–397

    Google Scholar 

  13. 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–397

    Google Scholar 

  14. B. Möller: Towards pointer algebra. Institut für Mathematik der Universität Augsburg, Report No. 279, 1993. Also to appear in Science of Computer Programming

    Google Scholar 

  15. B. Möller: Derivation of graph and pointer algorithms. Institut für Mathematik der Universität Augsburg, Report No. 280, 1993. Also to appear in B. Möller, H.A. Partsch, S.A. Schuman (eds.): Formal program development. Proc. of an IFIP TC2/WG 2.1 State of the Art Seminar. Lecture Notes in Computer Science. Berlin: Springer (to appear)

    Google Scholar 

  16. B. Möller, M. Russling: Shorter paths to graph algorithms. Proc. 1992 International Conference on Mathematics of Program Construction (to appear). Extended version: Institut für Mathematik der Universität Augsburg, Report Nr. 272, 1992. Also to appear in Science of Computer Programming

    Google Scholar 

  17. H.A. Partsch: Specification and transformation of programs — A formal approach to software development. Berlin: Springer 1990

    Google Scholar 

  18. M. Russling: Hamiltonian sorting. Institut für Mathematik der Universität Augsburg, Report Nr. 270, 1992

    Google Scholar 

  19. G. Schmidt, T. Ströhlein: Relations and graphs. Discrete Mathematics for Computer Scientists. EATCS Monographs on Theoretical Computer Science. Berlin: Springer 1993

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dines Bjørner Manfred Broy Igor V. Pottosin

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Möller, B. (1993). Algebraic calculation of graph and sorting algorithms. In: Bjørner, D., Broy, M., Pottosin, I.V. (eds) Formal Methods in Programming and Their Applications. Lecture Notes in Computer Science, vol 735. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0039722

Download citation

  • DOI: https://doi.org/10.1007/BFb0039722

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57316-6

  • Online ISBN: 978-3-540-48056-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics