Skip to main content

Programming with equations: A framework for lazy parallel evaluation

  • Conference paper
  • First Online:
  • 1284 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 607))

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.

Unable to display preview. Download preview PDF.

References

  1. R. Burstall, D. MacQueen and D. Sanella, Hope: An Experimental Applicative Language, Proc. of 1st Int. LISP Conf., 1980.

    Google Scholar 

  2. N. Dershowitz and J.P. Jouannaud, Rewrite Systems, Handbook of Theoretical Computer Science, Ch. 6, Vol II, North-Holland, 1990.

    Google Scholar 

  3. K. Futatsugi, J. Goguen, J.P. Jouannaud and J. Meseguer, Principles of OBJ2, POPL 1985, pp. 52–66.

    Google Scholar 

  4. R. Harper, R. Milner and M. Tofte, The Definition of Standard ML, Report ECS-LFCS-88-62, LFCS, U. of Edinburgh, 1988.

    Google Scholar 

  5. C. Hoffmann, and M.J. O'Donnell, Implementation of an Interpreter for Abstract Equations, POPL 1984, pp. 111–120.

    Google Scholar 

  6. G. Huet and J.J. Levy, Computations in Nonambiguous Linear Term Rewriting Systems, TR No. 359 (1979), INRIA, France.

    Google Scholar 

  7. J.R. Kennaway, Sequential Evaluation Strategies for Parallel-Or and Related Reduction Systems, Annals of Pure and Applied Logic 43, pp. 31–56, 1989.

    Google Scholar 

  8. A. Laville, Lazy Pattern Matching in the ML Language, Proc. of FST&TCS, Springer-Verlag LNCS, 1987.

    Google Scholar 

  9. M.J. O'Donnell, Equational Logic as a Programming Language, MIT Press (1985).

    Google Scholar 

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

    Google Scholar 

  11. R.C. Sekar, S. Pawagi and I.V. Ramakrishnan, Transforming Strongly Sequential Rewrite Systems with Constructors for Efficient Parallel Execution, RTA 1989.

    Google Scholar 

  12. Sekar, R.C, Shaunak Pawagi and Ramakrishnan, I.V., Small Domains Spell Fast Strictness Analysis, POPL 1990.

    Google Scholar 

  13. Robert I. Strandh, Compiling Equational Programs into Efficient Machine Code, PhD Thesis, Johns Hopkins University, 1988.

    Google Scholar 

  14. Satish Thatte, On the correspondence between two classes of Reduction systems, Information Processing Letters 20 (2), pp. 83–85.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to R. C. Sekar .

Editor information

Deepak Kapur

Rights and permissions

Reprints 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

Publish with us

Policies and ethics