ACM Home Page
Please provide us with feedback. Feedback
A needed narrowing strategy
Full text PdfPdf (1.26 MB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Portland, Oregon, United States
Pages: 268 - 279  
Year of Publication: 1994
ISBN:0-89791-636-0
Authors
Sergio Antoy  Dept. of Computer Science, Portland State University, Portland, OR
Rachid Echahed  IMAG-LGI, CNRS, F-38041 Grenoble, France
Michael Hanus  MPI Informatik, Im Stadtwald, D-66123 Saarbrücken, Germany
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 13,   Citation Count: 17
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/174675.177899
What is a DOI?

ABSTRACT

Narrowing is the operational principle of languages that integrate functional and logic programming. We propose a notion of a needed narrowing step that, for inductively sequential rewrite systems, extends the Huet and Le´vy notion of a needed reduction step. We define a strategy, based on this notion, that computes only needed narrowing steps. Our strategy is sound and complete for a large class of rewrite systems, is optimal w.r.t. the cost measure that counts the number of distinct steps of a derivation, computes only independent unifiers, and is efficiently implemented by pattern matching.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
S. Antoy. Lazy rewriting in logic programming. Technical Report 90-17, Rev~ 2, Portland State University, Portland, OR, 1992. (Submitted for publication).
 
3
S. Antoy, R. Echahed, and M. tIanus. A needed narrowing strategy. Technical report, MPI-I-93- 243, Max-Planck-Institut f/Jr Informatik, Saarbriicken, 1993.
 
4
 
5
 
6
 
7
 
8
P. H. Cheong. Compiling lazy narrowing into Prolog. New Generation Computing, 1992. (to appear).
 
9
 
10
 
11
 
12
 
13
 
14
M. J. Fay. First-order unification in an equational theory, in Proc. 4th Workshop on Automated Deduction, pages 161-167, Austin (Texas), 1979. Academic Press.
 
15
L. Fribourg. SLOG: A logic programming language interpreter based on clausal superposition and rewriting. In Proc. IEEE Internal. Symposium on Logzc Programming, pages 172-184, Boston, 1985.
 
16
 
17
J. A. Goguen and J. Meseguer. Eqlog: Equality, types, and generic modules for logic programming. In D. DeGroot and G. Lindstrom, editors, Logzc Programming, Functzons, Relations, and Equations, pages 295-363. Prentice Hall, 1986.
 
18
 
19
 
20
A. tterold. Narrowing techniques applied to idempotent unification. Technical Report SR-86-16, SEKI, 1986.
21
 
22
 
23
G. Huet and J.-M. Hullot. Proofs by induction in equational theories with constructors. JCSS, 25:239-266, 1982.
 
24
G. Huet and J.-J. L~vy. Computations in orthogonal term rewrltln8 systems, in J.-L. Lassez and G. Plotkin, editors, Computatzonal log,c: essays ,n honour of Alan Rob,nson. MIT Press, Cambridge, MA, 1991. Previous version: Call by need computations in non-ambiguous linear term rewriting systems, Technical Report 359, INRIA, Le Chesnay, France, 1979.
 
25
 
26
J. A. Jim~nez-Martln, J. Marifio-Carballo, and J. J. Moreno-Navarro. Efficient implementation of lazy narrowing into PROLOG. In LOPSTR'92, 1993. Previous version: Some Techniques for the Efficient Implementation of Lazy Narrowing, Technical Report-FIM.75/LyS/92, Facultad de Informatica, Universidad Politecnica de Madrid, 1992.
 
27
J. R. Kennaway. Sequential evaluation strategies for parallel-or and related reduction systems. Annals of Pure and Applzed Logic, 43:31-56, 1989.
 
28
 
29
J. W. Klop. Term Rewriting Systems. in S. Abramsky, D. Gabbay, and T. Maibaum, editors, Handbook of Logic in Computer Science, Vol. H, pages 1-112. Oxford University Press, 1992. Previous version: Term rewriting systems, Technical Report CS-R9073, Stichting Mathematisch Centrum, Amsterdam, 1990.
 
30
 
31
 
32
33
 
34
A. Middeldorp, August 1993. Personal Communication.
 
35
 
36
 
37
 
38
 
39
 
40
 
41
 
42
 
43
G.D. Plotkin. Building-in equational theories. Machine Intelligence, 7:73-90, 1972.
 
44
U. S. Reddy. Narrowing as the operational semantics of functional languages. In Proc. IEEE Internal. Symposium on Logzc Programming, pages 138-151, Boston, 1985.
 
45
R. C. Sekar and I. V. Ramakrishnan. Programming in equational logic: Beyond strong sequentiality. In Proceedings of the Fzflh Annual IEEE Symposium on Logic in Computer Science, pages 230-241, Philadelphia, PA, June 1990.
46
 
47
 
48
 
49

CITED BY  17

Collaborative Colleagues:
Sergio Antoy: colleagues
Rachid Echahed: colleagues
Michael Hanus: colleagues