Abstract
Huet and Levy pioneered lazy sequential evaluation of equational programs based on the concepts of strong-sequentiality and needed redexes. Natural extensions of their strategy are not well-suited for parallel evaluation since they do not support independent searches for needed redexes along different paths in the input term. Furthermore, the size of compiled code can be exponential in program size. We therefore propose a different notion of sequentiality called path-sequentiality that overcomes these drawbacks and thus provides a natural framework for lazy parallel evaluation. We present a sound and complete algorithm for lazy parallel normalization of path-sequential systems. We show that our algorithm is optimal in the sense that its time complexity is bounded only by the time required to perform the needed reductions. The results presented in this paper are applicable to functional languages as well through the transformation of Laville.
Partially supported by NSF grants CCR-8805734, 9102159 and NYS S&T grant RDG 90173.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
R. Burstall, D. MacQueen and D. Sanella, Hope: An Experimental Applicative Language, Proc. of 1st Int. LISP Conf., 1980.
N. Dershowitz and J.P. Jouannaud, Rewrite Systems, Handbook of Theoretical Computer Science, Ch. 6, Vol II, North-Holland, 1990.
K. Futatsugi, J. Goguen, J.P. Jouannaud and J. Meseguer, Principles of OBJ2, POPL 1985, pp. 52–66.
R. Harper, R. Milner and M. Tofte, The Definition of Standard ML, Report ECS-LFCS-88-62, LFCS, U. of Edinburgh, 1988.
C. Hoffmann, and M.J. O'Donnell, Implementation of an Interpreter for Abstract Equations, POPL 1984, pp. 111–120.
G. Huet and J.J. Levy, Computations in Nonambiguous Linear Term Rewriting Systems, TR No. 359 (1979), INRIA, France.
J.R. Kennaway, Sequential Evaluation Strategies for Parallel-Or and Related Reduction Systems, Annals of Pure and Applied Logic 43, pp. 31–56, 1989.
A. Laville, Lazy Pattern Matching in the ML Language, Proc. of FST&TCS, Springer-Verlag LNCS, 1987.
M.J. O'Donnell, Equational Logic as a Programming Language, MIT Press (1985).
K. Owen, S. Pawagi, C.R. Ramakrishnan, I.V. Ramakrishnan and R.C. Sekar, Fast Parallel Implementation of Lazy Languages — The EQUALS Experience, Lisp and Functional Programming, 1992.
R.C. Sekar, S. Pawagi and I.V. Ramakrishnan, Transforming Strongly Sequential Rewrite Systems with Constructors for Efficient Parallel Execution, RTA 1989.
Sekar, R.C, Shaunak Pawagi and Ramakrishnan, I.V., Small Domains Spell Fast Strictness Analysis, POPL 1990.
Robert I. Strandh, Compiling Equational Programs into Efficient Machine Code, PhD Thesis, Johns Hopkins University, 1988.
Satish Thatte, On the correspondence between two classes of Reduction systems, Information Processing Letters 20 (2), pp. 83–85.
Author information
Authors and Affiliations
Corresponding author
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sekar, R.C., Ramakrishnan, I.V. (1992). Programming with equations: A framework for lazy parallel evaluation. In: Kapur, D. (eds) Automated Deduction—CADE-11. CADE 1992. Lecture Notes in Computer Science, vol 607. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55602-8_196
Download citation
DOI: https://doi.org/10.1007/3-540-55602-8_196
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55602-2
Online ISBN: 978-3-540-47252-0
eBook Packages: Springer Book Archive