Abstract
The algebraic definition of an algorithm given above is wider than the classical one. It is an abstract definition based on a signature only, and allows interpretation by any computational structure of this signature. Even introducing a set of properties does not necessarily determine the interpretation completely. This freedom is an advantage, it allows to treat a number of related algorithms under one single roof. Moreover, even for a given monomorphic type algorithms can be non-deterministic. This freedom allows to go to special descendants which show increased efficiency, including deterministic ones.
Both degrees of freedom can be used in a program development process in order to delay design decisions.
In particular, such an abstract algebraic definition of algorithms (in conjunction with the abstract definition of types and of congruence relations in the term algebra giving representants of the computational structures of such a type) is a step to become liberated from the notational pressure that has darkened so much the genuine issues of programming.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
Bauer, F. L., Detailization and Lazy Evaluation, Infinite Objects and Pointer Representation. In: Program Construction, Lecture Notes in Computer Science 69, Springer, Berlin 1979.
Broy, M., Transformation parallel ablaufender Programme. Dissertation, Technische Universität München 1980.
Dijkstra, E.W., Guarded Commands, Nondeterminacy and Formal Derivation of Programs. Comm. ACM 18, p. 453–457 (1975).
Ershov, A. P., On the Essence of Compilation, Proc. IFIP Working Conf. on the Formal Description of Programming Concepts, North-Holland, Amsterdam 1978.
Friedman, D. P., Wise, D. S., CONS Should not Evaluate its Arguments. In: Automata, Languages and Programming, Proceedings 1976. Edinburgh University Press 1976, p. 257–284.
Guttag, J. V., The Specification and Application to Programming of Abstract Data Types, TR CSRG-59, September 1975, University of Toronto.
Henderson, P., and Morris, J. H., A Lazy Evaluator. Proc. 3rd ACM Symp. on Principles of Programming Languages (January 1976), Atlanta, p. 95–103.
Mac Lane, S., Categories for the Working Mathematician, Springer, New York 1971.
Manna, Z., Mathematical Theory of Computation. McGraw-Hill, New York 1974.
McCarthy, J., Towards a Mathematical Science of Computation. In: Information Processing 1962, North-Holland, Amsterdam 1963, p. 21–28.
Nivat, M., On the Interpretation of Recursive Program Schemes, Symposia Mathematica, Vol. XV, Istituto Nationale di Alta Matematica, 1975.
Scott, D., Outline of a Mathematical Theory of Computation. Proc. 4th Princeton Conference on Information Sciences and Systems, 1970.
Editor information
Additional information
Dedicated to the memory of Al-Khowarizmi
Rights and permissions
Copyright information
© 1981 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bauer, F.L. (1981). Algorithms and algebra. In: Ershov, A.P., Knuth, D.E. (eds) Algorithms in Modern Mathematics and Computer Science. Lecture Notes in Computer Science, vol 122. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-11157-3_39
Download citation
DOI: https://doi.org/10.1007/3-540-11157-3_39
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-11157-3
Online ISBN: 978-3-540-38621-6
eBook Packages: Springer Book Archive