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.
Preview
Unable to display preview. Download preview PDF.
References
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)
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
R.M. Burstall, J. Darlington: A transformation system for developing recursive programs. J. ACM 24, 44–67 (1977)
J. Cai, R. Paige: Program derivation by fixed point computation. Science of Computer Programming 11, 197–261 (1989)
J.H. Conway: Regular algebra and finite machines. London: Chapman and Hall 1971
W. Dosch, B. Möller: Calculating a module for binary search trees. GI-Jahrestagung 1993 (to appear)
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
P. Lescanne: Modèles non déterministes de types abstraits. R.A.I.R.O. Informatique théorique 16, 225–244 (1982)
Z. Manna: Mathematical theory of computation. New York: McGraw-Hill 1974
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
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
B. Möller: Relations as a program development language. In [13], 373–397
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
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
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)
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
H.A. Partsch: Specification and transformation of programs — A formal approach to software development. Berlin: Springer 1990
M. Russling: Hamiltonian sorting. Institut für Mathematik der Universität Augsburg, Report Nr. 270, 1992
G. Schmidt, T. Ströhlein: Relations and graphs. Discrete Mathematics for Computer Scientists. EATCS Monographs on Theoretical Computer Science. Berlin: Springer 1993
Author information
Authors and Affiliations
Editor information
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