## Natural narrowing for general term rewriting systems (2005)

### Cached

### Download Links

- [yangtze.cs.uiuc.edu]
- [www.dsic.upv.es]
- [users.dsic.upv.es]
- [users.dsic.upv.es]
- DBLP

### Other Repositories/Bibliography

Venue: | Proc. of 16th International Conference on Rewriting Techniques and Applications, RTA’05, Lecture Notes in Computer Science |

Citations: | 10 - 7 self |

### BibTeX

@INPROCEEDINGS{Escobar05naturalnarrowing,

author = {Santiago Escobar and José Meseguer and Prasanna Thati},

title = {Natural narrowing for general term rewriting systems},

booktitle = {Proc. of 16th International Conference on Rewriting Techniques and Applications, RTA’05, Lecture Notes in Computer Science},

year = {2005},

pages = {279--293},

publisher = {Springer-Verlag}

}

### OpenURL

### Abstract

Abstract. For narrowing to be an efficient evaluation mechanism, several lazy narrowing strategies have been proposed, although typically for the restricted case of left-linear constructor systems. These assumptions, while reasonable for functional programming applications, are too restrictive for a much broader range of applications to which narrowing can be fruitfully applied, including applications where rules have a non-equational meaning either as transitions in a concurrent system or as inferences in a logical system. In this paper, we propose an efficient lazy narrowing strategy called natural narrowing which can be applied to general term rewriting systems with no restrictions whatsoever. An important consequence of this generalization is the wide range of applications that can now be efficiently supported by narrowing. We highlight a few such applications including symbolic model checking, theorem proving, programming languages, and partial evaluation. What thus emerges is a general and efficient unified mechanism based on narrowing, that seamlessly integrates a very wide range of applications in programming and proving. 1

### Citations

667 |
Partial Evaluation and Automatic Program Generation
- Jones, Gomard, et al.
- 1993
(Show Context)
Citation Context ...g, but not with unrestricted narrowing. 4.3 Partial Evaluation Partial evaluation (PE) is a semantics-based program transformation which specializes a program with respect to known parts of its input =-=[27,1,2,12]-=-. PE has been widely applied in the fields of term rewriting systems [29], functional programming [27,39], logic programming [12], and functional logic programming [1,2]. The different techniques for ... |

510 |
Conditional Rewriting Logic as a Unified Model of Concurrency
- Meseguer
- 1992
(Show Context)
Citation Context ...ood as a transition or an inference: for example to specify and program concurrent systems or logical inference systems. This has led, for example, to theoretical developments such as rewriting logic =-=[28]-=-, and to the development of language implementations supporting non-equational rewriting such as ELAN [6] and Maude [7]. A similar widening of the scope is needed for narrowing, which generalizes rewr... |

346 | The integration of functions into logic programming: From theory to practice
- Hanus
- 1994
(Show Context)
Citation Context ...ct and complete for CB-WO’s. Thus, both are not applicable to Example 1. The continuous interest in the unification of functional and logic programming in a seamless way attracted much attention (see =-=[20]-=- for a survey) and Antoy, Echahed and Hanus extended Antoy’s outermost-needed rewriting strategy to the needed narrowing strategy [4], becoming the best narrowing strategy for functional logic program... |

296 | Uniform narrowing strategies
- Echahed
- 1992
(Show Context)
Citation Context ...te those positions that are really needed. This was first achieved by Antoy, Echahed and Hanus, who extended their (weakly) outermost-needed rewriting strategy to a (weakly) needed narrowing strategy =-=[4,3]-=-. Recently, both (weakly) outermost-needed rewriting and (weakly) outermost-needed narrowing have been further improved by Escobar by means of the natural rewriting and natural narrowing strategies [1... |

194 | Maude: specification and programming in rewriting logic
- Clavel, Durán, et al.
(Show Context)
Citation Context ... This has led, for example, to theoretical developments such as rewriting logic [28], and to the development of language implementations supporting non-equational rewriting such as ELAN [6] and Maude =-=[7]-=-. A similar widening of the scope is needed for narrowing, which generalizes rewriting by performing unification in nonvariable positions instead of the usual matching. Narrowing can in this way endow... |

169 |
Canonical forms and unification
- Hullot
- 1980
(Show Context)
Citation Context ...ges with new programming and reasoning capabilities in a much wider setting and for a much wider range of applications than those based on equational logic. The traditional understanding of narrowing =-=[15,23]-=- has been as a mechanism for equational unification, that is, for solving equational goals E ⊢ (∃ −→ x ) t = t ′ ; as a consequence, properties such as confluence and termination have often been assum... |

158 | Definitional trees
- Antoy
- 1992
(Show Context)
Citation Context ... direction was the realization that one could extend the work on optimal lazy reduction strategies originating with Huet and Levy [22], and extended in different ways by other researchers (see, e.g., =-=[32,1,3,11]-=-) to obtain efficient lazy narrowing strategies that only instantiate those positions that are really needed. This was first achieved by Antoy, Echahed and Hanus, who extended their (weakly) outermost... |

157 | Rewriting logic as a logical and semantic framework
- Mart́ı-Oliet, Meseguer
- 2000
(Show Context)
Citation Context ...ecifically, a concurrent system can naturally be expressed as a rewrite system R = (Σ, φ, R), where terms represent states, and a rewrite rule t → t ′ is understood as a (parametric) local transition =-=[27,28]-=-. We can then formalize a reachability problem for a concurrent system thus specified as solving an existential formula (∃ −→ x ) t( −→ x ) → ∗ t ′ ( −→ x ) where the source t( −→ x ) is a term with v... |

131 | Introducing OBJ
- Goguen, Winkler, et al.
- 2000
(Show Context)
Citation Context ...linear and constructor rules. These assumptions are reasonable for some functional (logic) programming languages, but they substantially limit the expressive power of equational languages such as OBJ =-=[18]-=-, CafeOBJ [16], ASF+SDF [10], and the equational subset of Maude [7], where non-linear left-hand sides which need not be constructor-based are perfectly acceptable. Such assumptions become even more r... |

105 |
An approach to declarative programming based on a rewriting logic
- González-Moreno, Hortalá-González, et al.
- 1999
(Show Context)
Citation Context ...stpone a more detailed discussion of related work in this area until Section 5. For the moment, the main point to bear in mind is that most of the work on lazy rewriting and lazy narrowing strategies =-=[17,25,19,32,1,3,4,2,11,12]-=- has taken place within the context of functional (logic) programming languages, and depends on assumptions such as having left-linear and constructor rules. These assumptions are reasonable for some ... |

102 |
Kernel LEAF: a logic plus functional language
- Giovannetti, Levi, et al.
- 1991
(Show Context)
Citation Context ...stpone a more detailed discussion of related work in this area until Section 5. For the moment, the main point to bear in mind is that most of the work on lazy rewriting and lazy narrowing strategies =-=[17,25,19,32,1,3,4,2,11,12]-=- has taken place within the context of functional (logic) programming languages, and depends on assumptions such as having left-linear and constructor rules. These assumptions are reasonable for some ... |

97 | A demand driven computation strategy for lazy narrowing
- Loogen, Fraguas, et al.
- 1993
(Show Context)
Citation Context ...stpone a more detailed discussion of related work in this area until Section 5. For the moment, the main point to bear in mind is that most of the work on lazy rewriting and lazy narrowing strategies =-=[17,25,19,32,1,3,4,2,11,12]-=- has taken place within the context of functional (logic) programming languages, and depends on assumptions such as having left-linear and constructor rules. These assumptions are reasonable for some ... |

86 |
Term Rewriting Systems
- TeReSe
- 2003
(Show Context)
Citation Context ...e compare our work with related approaches, and we conclude in Section 6. Proofs of all results can be found in [13].s2 Preliminaries We assume some familiarity with term rewriting and narrowing (see =-=[33]-=- for missing definitions). We assume a finite alphabet (function symbols) Σ and a countable set of variables X. We denote the set of terms built from Σ and X by TΣ(X) and write TΣ for ground terms. A ... |

83 | Partial evaluation of functional logic programs
- Alpuente, Falaschi, et al.
- 1998
(Show Context)
Citation Context ...g, but not with unrestricted narrowing. 4.3 Partial Evaluation Partial evaluation (PE) is a semantics-based program transformation which specializes a program with respect to known parts of its input =-=[27,1,2,12]-=-. PE has been widely applied in the fields of term rewriting systems [29], functional programming [27,39], logic programming [12], and functional logic programming [1,2]. The different techniques for ... |

80 |
Language Prototyping: An Algebraic Specification Approach,” World Scientific
- Deursen, Heering, et al.
- 1996
(Show Context)
Citation Context .... These assumptions are reasonable for some functional (logic) programming languages, but they substantially limit the expressive power of equational languages such as OBJ [18], CafeOBJ [16], ASF+SDF =-=[10]-=-, and the equational subset of Maude [7], where non-linear left-hand sides which need not be constructor-based are perfectly acceptable. Such assumptions become even more restrictive and unreasonable ... |

65 |
Computations in orthogonal term rewriting systems
- Huet, L'evy
- 1991
(Show Context)
Citation Context ...y as possible, yet remain complete. One important breakthrough in this direction was the realization that one could extend the work on optimal lazy reduction strategies originating with Huet and Levy =-=[22]-=-, and extended in different ways by other researchers (see, e.g., [32,1,3,11]) to obtain efficient lazy narrowing strategies that only instantiate those positions that are really needed. This was firs... |

57 | Elan from a rewriting logic point of view
- Borovansky, Kirchner, et al.
(Show Context)
Citation Context ...rence systems. This has led, for example, to theoretical developments such as rewriting logic [28], and to the development of language implementations supporting non-equational rewriting such as ELAN =-=[6]-=- and Maude [7]. A similar widening of the scope is needed for narrowing, which generalizes rewriting by performing unification in nonvariable positions instead of the usual matching. Narrowing can in ... |

55 | Constructor-based conditional narrowing
- Antoy
- 2001
(Show Context)
Citation Context |

45 | Parallel evaluation strategies for functional logic languages
- Antoy, Echahed, et al.
- 1997
(Show Context)
Citation Context ... direction was the realization that one could extend the work on optimal lazy reduction strategies originating with Huet and Levy [22], and extended in different ways by other researchers (see, e.g., =-=[32,1,3,11]-=-) to obtain efficient lazy narrowing strategies that only instantiate those positions that are really needed. This was first achieved by Antoy, Echahed and Hanus, who extended their (weakly) outermost... |

44 | Context-sensitive rewriting strategies
- Lucas
- 2002
(Show Context)
Citation Context ...mpletely general rewrite systems with no restrictions whatsoever: even rewrite rules with extra variables in their righthand sides are allowed; furthermore, we allow rewritings to be contextsensitive =-=[26]-=- according to a function φ specifying which argument positions in each function symbol are frozen, so that rewriting in the subterms at those positions is forbidden. In this way, we obtain a general l... |

44 |
José Meseguer, Kokichi Futatsugi, and Jean-Pierre Jouannaud. Applications of Algebraic Specifications Using OBJ, chapter Introducing OBJ
- Goguen, Winkler
- 1993
(Show Context)
Citation Context ... and constructor-based rules. These assumptions are reasonable for some functional (logic) programming languages, but they substantially limit the expressive power of equational languages such as OBJ =-=[21]-=-, CafeOBJ [19], ASF+SDF [13], and the equational subset of Maude [9], where non-linear left-hand sides which need not be constructor based are perfectly acceptable. Such assumptions become even more r... |

42 | Call by need computations to root-stable form - Middeldorp - 1997 |

40 | Programming in equational logic: Beyond strong sequentiality
- Sekar, Ramakrishnan
- 1990
(Show Context)
Citation Context ... direction was the realization that one could extend the work on optimal lazy reduction strategies originating with Huet and Levy [22], and extended in different ways by other researchers (see, e.g., =-=[32,1,3,11]-=-) to obtain efficient lazy narrowing strategies that only instantiate those positions that are really needed. This was first achieved by Antoy, Echahed and Hanus, who extended their (weakly) outermost... |

33 | Symbolic reachability analysis using narrowing and its application to verification of cryptographic protocols
- Meseguer, Thati
(Show Context)
Citation Context ...ave often been assumed, and many equational reasoning applications, as well as a number ofsfunctional/logic programming languages supporting narrowing, have been developed. As proposed for example in =-=[29]-=-, in a non-equational setting narrowing can instead be understood as a powerful mechanism for solving reachability goals R ⊢ (∃ −→ x ) t → ∗ t ′ in a rewrite theory R. The traditional equational inter... |

28 | Strongly sequential and inductively sequential term rewriting systems
- Hanus, Lucas, et al.
- 1998
(Show Context)
Citation Context ...ting [1] as an efficient implementation of strongly needed reduction for inductively sequential rewrite systems (IS), which are equivalent to SS’s when instantiated to left-linear constructor systems =-=[21]-=-. In [1], Antoy also provides the weakly outermost-needed rewriting to make outermost-needed rewriting correct and complete for CB-WO’s. Thus, both are not applicable to Example 1. The continuous inte... |

24 |
First Order Unification in an Equational Theory, in
- Fay
- 1979
(Show Context)
Citation Context ...the form (∃ −→ x ) t1( −→ x ) = t ′ 1( −→ x ) ∧ . . . ∧ tn( −→ x ) = t ′ n( −→ x ) in free algebras modulosa set of equations that can be described by a set of confluent and terminating rewrite rules =-=[15,23,24]-=-. We note that the problem of solving reachability goals in rewrite systems generalizes the problem of equational unification. Specifically, suppose we are to solve the equational goal F above in the ... |

21 | Inductionless induction
- Comon
- 2001
(Show Context)
Citation Context ...topping with a counterexample instead of blindly expanding the narrowing tree. Furthermore, natural narrowing can make inductionless induction provers, particularly in the most recent formulations in =-=[8,9]-=-, more effective and efficient, and can be used in such provers to prove also universal inductive theorems like E ⊢ind (∀ −→ x ) t = t ′ (or, more generally, clauses). The point is that natural narrow... |

21 |
Basic Paramodulation and Decidable Theories
- Nieuwenhuis
- 1996
(Show Context)
Citation Context ...efined by the equations E. Natural narrowing can, using the two reductions just mentioned, provide a very efficient semi-decision procedure (and even a decision procedure for some restricted theories =-=[31]-=-) for proving such inductive goals because it will detect failures to unify, stopping with a counterexample instead of blindly expanding the narrowing tree. Furthermore, natural narrowing can make ind... |

19 |
Incremental construction of unification algorithms in equational theories
- Jouannaud, Kirchner, et al.
- 1983
(Show Context)
Citation Context ...the form (∃ −→ x ) t1( −→ x ) = t ′ 1( −→ x ) ∧ . . . ∧ tn( −→ x ) = t ′ n( −→ x ) in free algebras modulosa set of equations that can be described by a set of confluent and terminating rewrite rules =-=[15,23,24]-=-. We note that the problem of solving reachability goals in rewrite systems generalizes the problem of equational unification. Specifically, suppose we are to solve the equational goal F above in the ... |

14 | Refining weakly outermost-needed rewriting and narrowing
- Escobar
- 2003
(Show Context)
Citation Context |

14 | A Unifying View of Functional and Logic Program Specialization
- Alpuente, Falaschi, et al.
- 1998
(Show Context)
Citation Context ...g, but not with unrestricted narrowing. 4.3 Partial Evaluation Partial evaluation (PE) is a semantics-based program transformation which specializes a program with respect to known parts of its input =-=[27,1,2,12]-=-. PE has been widely applied in the fields of term rewriting systems [29], functional programming [27,39], logic programming [12], and functional logic programming [1,2]. The different techniques for ... |

12 | Induction = I-axiomatization + first-order consistency
- Comon, Nieuwenhuis
- 2000
(Show Context)
Citation Context ...topping with a counterexample instead of blindly expanding the narrowing tree. Furthermore, natural narrowing can make inductionless induction provers, particularly in the most recent formulations in =-=[8,9]-=-, more effective and efficient, and can be used in such provers to prove also universal inductive theorems like E ⊢ind (∀ −→ x ) t = t ′ (or, more generally, clauses). The point is that natural narrow... |

11 | Demandness in rewriting and narrowing
- Antoy, Lucas
- 2002
(Show Context)
Citation Context ...ewrite system for proving equality (≈) of arithmetic expressions built using modulus or remainder (%), subtraction (−), and minimum (min) operations on natural numbers. (1) M % s(N) → (M−s(N)) % s(N) =-=(5)-=- min(0, N) → 0 (2) (0 − s(M)) % s(N) → N − M (6) min(s(N),0) → 0 (3) M − 0 → M (7) min(s(N),s(M)) → s(min(M,N)) (4) s(M) − s(N) → M−N (8) X ≈ X → True Note that this rewrite system is not left-linear ... |

9 | Implementing natural rewriting and narrowing efficiently
- Escobar
- 2004
(Show Context)
Citation Context ...n be optimally evaluated. We observe that our generalized strategies are easily implementable, since the demanded set of redexes and narroxes are computed using simple recursive procedures. Indeed in =-=[15]-=-, we have proposed a technique for the efficient implementation of the natural rewriting and narrowing strategies of [14] for the special class of left-linear constructor-based systems. Extending this... |

4 | Complete symbolic reachability analysis using back-and-forth narrowing
- Thati, Meseguer
- 2005
(Show Context)
Citation Context ...ecial case of solving more general reachability goals. However, in this wider setting traditional assumptions such as confluence and termination are in general no longer reasonable (see Section 5 and =-=[29,34]-=- for a discussion of completeness issues for narrowing in this setting). A key challenge for narrowing is the danger of combinatorial explosion in exploring the narrowing tree. It becomes in fact esse... |

2 | Natural narrowing as a general unified mechanism for programming and proving
- Escobar, Meseguer, et al.
- 2004
(Show Context)
Citation Context ...illustrating various applications of the generalized narrowing strategy. In Section 5, we compare our work with related approaches, and we conclude in Section 6. Proofs of all results can be found in =-=[13]-=-.s2 Preliminaries We assume some familiarity with term rewriting and narrowing (see [33] for missing definitions). We assume a finite alphabet (function symbols) Σ and a countable set of variables X. ... |

2 | Natural rewriting for general term rewriting systems
- Escobar, Meseguer, et al.
- 2004
(Show Context)
Citation Context ...natural narrowing (see [11]) and that can also handle non-left-linear and nonconstructor rules such as (2) and (8). This is accomplished for rewriting in the generalized natural rewriting strategy of =-=[14]-=-. For example, consider the term 4 t1 = 10! % min(X,X−0) ≈ 10! % 0 and the following two narrowing sequences we are interested in amongst all possible. First, the following sequence leading to True, t... |

2 |
José Meseguer, and Prasanna Thati. Natural rewriting for general term rewriting systems
- Escobar
- 2004
(Show Context)
Citation Context ... narrowing (see [14]) and that can also handle non-left-linear and non-constructor-based rules such as (2) and (8). This is accomplished for rewriting in the generalized natural rewriting strategy of =-=[17]-=-. In this paper, we are interested in a narrowing strategy which, besides performing the minimal number of evaluations, instantiates variables only as much as necessary. For example, consider the term... |

1 |
Prasanna Thati. Natural narrowing as a general unified mechanism for programming and proving
- Escobar, Meseguer
- 2004
(Show Context)
Citation Context ...d explain informally how the generalized natural narrowing strategy makes the specific applications more efficient. Our purpose in this section is motivational. More details and examples are given in =-=[16]-=-. 4.1 Symbolic Model Checking Narrowing can be used as a technique for symbolic reachability analysis of concurrent systems with infinite state space. Specifically, a concurrent system can naturally b... |