## Context-Sensitive Rewriting Strategies (1997)

Citations: | 43 - 30 self |

### BibTeX

@MISC{Lucas97context-sensitiverewriting,

author = {Salvador Lucas},

title = {Context-Sensitive Rewriting Strategies},

year = {1997}

}

### Years of Citing Articles

### OpenURL

### Abstract

Context-sensitive rewriting is a simple restriction of rewriting which is formalized by imposing fixed restrictions on replacements. Such a restriction is given on a purely syntactic basis: it is (explicitly or automatically) specified on the arguments of symbols of the signature and inductively extended to arbitrary positions of terms built from those symbols. Termination is not only preserved but usually improved and several methods have been developed to formally prove it. In this paper, we investigate the definition, properties, and use of context-sensitive rewriting strategies, i.e., particular, fixed sequences of context-sensitive rewriting steps. We study how to define them in order to obtain efficient computations and to ensure that context-sensitive computations terminate whenever possible. We give conditions enabling the use of these strategies for root-normalization, normalization, and infinitary normalization. We show that this theory is suitable for formalizing ...

### Citations

940 |
Term Rewriting and All That
- Baader, Nipkow
- 1998
(Show Context)
Citation Context ...lacement map makes this TRS a kind of ` can R -left-normal' TRS (remember that with leftnormal TRSs, in all left-hand sides the function symbols occur to the left of all variables, in linear notation =-=[BN98]-=-, p. 272). It is well-known that the position of the leftmost outermost redex of a term is a strong index for left-normal orthogonal TRSs [O'Do85]. Similarly, the leftmost-outermostscan R -replacing r... |

751 | Rewrite systems - Dershowitz, Jouannaud - 1992 |

565 | Term Rewriting Systems - Klop - 1992 |

453 | Termination of rewriting - Dershowitz - 1985 |

364 | Confluent reductions: Abstract properties and applications to term rewriting systems: Abstract properties and applications to term rewriting systems - Huet - 1980 |

346 | Recursive functions of symbolic expressions and their computation by machine (Part I - McCarthy - 1960 |

333 | Functional Logic Programming: From Theory to Curry - Hanus |

290 | On completeness of narrowing strategies - Echahed - 1988 |

273 | An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types - Goguen, Thatcher, et al. - 1978 |

166 | Canonical forms and unification - Hullot - 1980 |

156 | Logic Programming with Functions and Predicates: The language Babel - Moreno-Navarro, Rodríguez-Artalejo - 1992 |

151 | Definitional trees
- Antoy
- 1992
(Show Context)
Citation Context ...weakly orthogonal TRSs are trivially root-balanced joinable. Unfortunately, the previous critical pairs for R are not root-balanced joinable, as 16 Indeed, R is inductively sequential in the sense of =-=[Ant92]-=-. These TRSs are strongly sequential, see [HLM98]. 53 components 0 or s(x) are normal forms which cannot be reduced. Moreover, root-reduction is not able to join the components of the second pair, see... |

137 | M.J.: Pattern matching in trees - Hoffmann, O’Donnell - 1982 |

129 | Eekelen. Functional Programming and Parallel Graph Rewriting - Plasmeijer, van - 1993 |

123 | Principles of Maude
- Clavel, Lincoln, et al.
- 1996
(Show Context)
Citation Context ... joinable TRSs is an open problem. 54 11.2 Context-sensitive rewriting and the evaluation strategy of OBJ Algebraic languages, such as OBJ2 [FGJM85], OBJ3 [GWMFJ93, GWMFJ00], CafeOBJ [FN97], or Maude =-=[CELM96]-=- admit the specification of local strategies which are associated to function symbols. Syntactically, they are sequences of integers 19 in parentheses, given as an operator attribute following the key... |

121 | Introducing OBJ
- Goguen, Winkler, et al.
- 2000
(Show Context)
Citation Context ...and successful matches is usually around 2=3, which is really impressive'. For instance, OBJ's built-in conditional operator has the following (implicit) strategy annotation 4 ([FGJM85], Section 4.4, =-=[GWMFJ00]-=-, Section 2.4.4) op ifthenelsefi : Bool Int Int -? Int [strat (1 0)] 3 As in [GWMFJ00], by OBJ we mean OBJ2, OBJ3, CafeOBJ, or Maude. 4 A more precise and general definition can be found in OBJ3's sta... |

119 | Functional Programming - Field, Harrison - 1988 |

118 |
Report on the functional programming language Haskell (v1.1
- Hudak, Wadler
- 1991
(Show Context)
Citation Context ...ould lead to an error or fail to terminate [HPF99]. Since there are a number of overheads in the implementation of this feature (see [Pey87]), lazy functional languages like Gofer [Jon92] and Haskell =-=[HPW92]-=- allow for syntactic annotations on the arguments of datatype constructors, thus allowing an immediate evaluation. Example 4 The following definition in Haskell: data List a = Nil --- Cons !a (List a)... |

110 | Elements of Functional Programming - READE - 1989 |

110 | Narrowing as the operational semantics of functional languages", Unpublished report - Reddy - 1985 |

105 | The implementation of functional programming languages - PEYTON-JONES - 1987 |

102 |
et a!. Principles of OBJ2
- Futatsugi
(Show Context)
Citation Context ...uages 3 to introduce replacement restrictions aimed at improving the efficiency of computations (by reducing the number of attempted matchings). Their usefulness has been demonstrated in practice: in =-=[FGJM85]-=- the authors remark that, due to their use in OBJ2 programs,s`the ratio between attempted matches and successful matches is usually around 2=3, which is really impressive'. For instance, OBJ's built-i... |

101 | An Overview of ELAN
- Borovansk´y, Kirchner, et al.
- 1998
(Show Context)
Citation Context ... reduced, and then apply rules at the top (indicated by `0'). Reductions on the second or third arguments of calls to ifthenelsefi are never attempted. Other eager programmming languages such as ELAN =-=[BKKMR98]-=- incorporate the specification of syntactic replacement restrictions as an ingredient of the definition of more complex rewriting strategies which can be used to guide the evaluation of expressions. I... |

92 | SLOG: A logic programming language interpreter based on clausal superposition and rewriting - Fribourg - 1985 |

89 |
Cons Should Not Evaluate its Arguments
- P, Wise
- 1976
(Show Context)
Citation Context ...se the following Lisp definition for computing (by evaluating (terms 1)) an infinite sequence of fractions 1 1 ; 1 4 ; 1 9 ; : : : ; 1 n 2 ; : : : whose partial sums converge tos2 =6 (see page 265 of =-=[FW76]-=-): (terms n) j (cons (reciprocal (square n)) (terms (add1 n))) Their idea is to `violate the data type of LISP 1.0' in such a way that `the evaluation (of, e.g., (terms 1)) does not immediately diverg... |

87 | A lazy evaluator - Henderson, Morris |

86 | Computing in Systems Described by Equations - O’DONNELL - 1977 |

80 | Equational Logic as a Programming Language - O’Donnell - 1985 |

75 | The theory and practice of transforming call-by-need into call-by-value - Mycroft - 1980 |

72 | Automated Theorem-Proving for Theories with Simpli ers - Slagle - 1974 |

69 | Context-sensitive computations in functional and functional logic programs
- Lucas
- 1998
(Show Context)
Citation Context ...J or ELAN. Keywords: infinitary normalization, normalization, replacement restrictions, root-normalization, sequentiality, strategies, term rewriting. 1 Introduction Context-sensitive rewriting (CSR) =-=[Luc98a]-=- is a rewriting restriction which can be associated to every Term Rewriting System (TRS). Given a signature F , a mappings: F ! P(N), called the replacement map, discriminates some argument positions ... |

64 |
Computations in orthogonal term rewriting systems
- Huet, Lévy
- 1991
(Show Context)
Citation Context ...ramework for defining normalizing strategies [HL79, HL91]. A needed redex in a term t is a redex which must be reduced (either itself or some descendant) in any normalizing derivation starting from t =-=[HL91]-=-. Reduction sequences which only contract needed redexes are called needed reductions. Neededness has two main theoretical aspects: 1. It formalizes a notion of efficiency for rewriting computations. ... |

60 | Designing Constraint Logic Programming Languages using Computational Systems - KIRCHNER, KIRCHNER, et al. - 1993 |

60 | Concurrent Clean - Nöcker, Smetsers, et al. - 1991 |

53 | Strictness analysis on non-flat domains (by abstract interpretation over finite domains - Wadler - 1987 |

52 | Decidable approximations of term rewriting systems - Jacquemard - 1996 |

48 | Equational reasoning and term rewriting systems - Plaisted - 1993 |

46 | Lazy Functional Languages: Abstract Interpretation and Compilation - Burn - 1991 |

44 | 2000, “Termination of term rewriting using dependency pairs”, Theoretical Computer Science 236(1–2):133 - Arts, Giesl, et al. |

42 | History of LISP - McCarthy - 1981 |

40 |
Sequentiality in orthogonal term rewriting systems
- Klop, Middeldorp
- 1991
(Show Context)
Citation Context ...or the only if part of this lemma. For instance, f(a,b)sf(\Omega ,\Omega ), but f(a,b) is not a redex of f(x,x). In the following, we will use the reduction relation !\Omega (called\Omega -reduction, =-=[KM91]) on\-=-Omega\Gamma/18408 t p !\Omega s (or just t !\Omega s) if p 2 Pos(t) \Gamma Pos\Omega (t), tj p " l\Omega for some l 2 L(R), and s = t[\Omega\Gamma p . Example 7 Consider the TRS R: f(a) ! a b ! c... |

40 | Call by Need Computations to Root-Stable Form - Middeldorp - 1997 |

37 |
The metric space of infinite trees. Algebraic and topological properties
- Arnold, Nivat
- 1980
(Show Context)
Citation Context ...introducing a distance on elements of A. A distance is a function d : A \Theta A ! R such that, for all x; y; z 2 A, d(x; y)s0, d(x; y) = 0 iff x = y, d(x; y) = d(y; x), and d(x; z)sd(x; y) + d(y; z) =-=[AN80]-=-. A set A together with a distance d is a metric space (A; d). Let (A; d) be a metric space. A sequence S of elements of A is said to be convergent if there exists a 2 A such that, for all ffl ? 0; 9n... |

36 | Transformation techniques for context-sensitive rewrite systems - Giesl, Middeldorp |

35 |
Call by need computations in non-ambiguous linear term rewriting systems
- Huet, Lévy
- 1979
(Show Context)
Citation Context ...e to combine the pattern matching operation with the search for a strong index, thus finding not only a redex within a term but more precisely a redex addressed by a strong index (e.g., matching dags =-=[HL79]-=-, index trees [Dur94, Str89], or even definitional trees [Ant92] for constructor systems [HLM98]). As for future work, we plan to systematically adapt these methods to ease the specification and imple... |

34 | Optimal Derivations in Weak Lambda-calculi and in Orthogonal Terms Rewriting Systems - Maranget - 1991 |

33 | Strictness analysis --- a practical approach - Clack, Jones - 1985 |

32 | Termination of context-sensitive rewriting - Zantema - 1997 |

31 | Complete monotonic semantic path orderings - Borralleras, Ferreira, et al. - 2000 |

31 | Sequential evaluation strategies for parallel-or and related reduction systems - Kennaway - 1989 |