Results 1 -
9 of
9
Termination of on-demand rewriting and termination of OBJ programs
- In Proc. of 3rd International Conference on Principles and Practice of Declarative Programming, PPDP'01
, 2001
"... Declarative languages such as OBJ*, CafeOBJ, and Maude use syntactic annotations to introduce replacement restrictions aimed at improving termination or efficiency of computations. Unfortunately, there is a lack of formal techniques for proving such benefits. We show that context-sensitive rewriting ..."
Abstract
-
Cited by 30 (20 self)
- Add to MetaCart
Declarative languages such as OBJ*, CafeOBJ, and Maude use syntactic annotations to introduce replacement restrictions aimed at improving termination or efficiency of computations. Unfortunately, there is a lack of formal techniques for proving such benefits. We show that context-sensitive rewriting and on-demand rewriting provide a suitable framework to address this problem. We provide methods to analyze termination of on-demand rewriting and apply them to analyze termination of OBJ*, CafeOBJ, and Maude programs. Keywords Program analysis, replacement restrictions, term rewriting, termination 1.
The Evaluation Strategy for Head Normal Form With and Without on-Demand Flags
, 2001
"... We propose two conditions of the E-strategy with and without on-demand flags on which an evaluated term is always in head normal form. In rewriting with the E-strategy without (or with) on-demand flags, terms are evaluated according to a list of natural numbers (or integers) given to each function s ..."
Abstract
-
Cited by 17 (2 self)
- Add to MetaCart
We propose two conditions of the E-strategy with and without on-demand flags on which an evaluated term is always in head normal form. In rewriting with the E-strategy without (or with) on-demand flags, terms are evaluated according to a list of natural numbers (or integers) given to each function symbol. The first (or second) condition is that if there exists a rule such that a function symbol f occurs in its left-hand side and its i-th argument is not a variable, a list of f must contain i (or i), and if f is also a defined one, a list of f must contain 0 at the end. While there is no restriction w.r.t. the first condition, the second one can only be applied to left-linear constructor TRSs. But, There are cases in which rewriting with the E-strategy with on-demand flags terminates properly while that with the E-strategy without on-demand flags does not. We also propose a method of obtaining normal forms if a way to get head normal forms is given.
Lazy Rewriting and Context-Sensitive Rewriting
- Electronic Notes in Theoretical Computer Science, volume 64. Elsevier Sciences
, 2002
"... Lazy rewriting (LR) is intended to improve the termination behavior of TRSs. This is attempted by restricting reductions for selected arguments of functions. Similarly, context-sensitive rewriting (CSR) forbids any reduction on those arguments. We show that, under certain conditions, LR and CSR coin ..."
Abstract
-
Cited by 12 (9 self)
- Add to MetaCart
Lazy rewriting (LR) is intended to improve the termination behavior of TRSs. This is attempted by restricting reductions for selected arguments of functions. Similarly, context-sensitive rewriting (CSR) forbids any reduction on those arguments. We show that, under certain conditions, LR and CSR coincide. On the basis of this result, we also describe a transformation which permits proving termination of LR as termination of CSR for the transformed system. Since there is a number of different techniques for proving termination of CSR, this provides a (first) formal framework for proving termination of lazy rewriting.
Compact Normalisation Trace via Lazy Rewriting
, 2001
"... Innermost strategies are usually used in compiling term rewriting systems (TRSs) since they allow to eciently build result terms in a bottom-up fashion. However, innermost strategies do not always give the shortest normalising derivation. In many cases, using an appropriate laziness annotation on th ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
Innermost strategies are usually used in compiling term rewriting systems (TRSs) since they allow to eciently build result terms in a bottom-up fashion. However, innermost strategies do not always give the shortest normalising derivation. In many cases, using an appropriate laziness annotation on the arguments of function symbols, we evaluate lazy arguments only if it is necessary and hence, get a shorter derivation to normal forms while avoiding non-terminating reductions. We provide in this work a transformation of annotated TRSs, that allows to compute normal forms using an innermost strategy and to extract lazy derivations in the original TRS from normalising derivations in the transformed TRS. We apply our result to improve the eciency of equational reasoning in the Coq proof assistant using ELAN as an external rewriting engine.
Completeness and Strictness Analysis for the Evaluation Strategy
- RIEC, Tohoku University
, 2001
"... We propose two analyses of the evaluation strategy (the E-strategy). Firstly, we analyze a completeness of the E-strategy. For a complete E-strategy each evaluated term is guaranteed to be a normal form. In this paper we define the notion of the completeness for the context-sensitive rewriting, c ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
We propose two analyses of the evaluation strategy (the E-strategy). Firstly, we analyze a completeness of the E-strategy. For a complete E-strategy each evaluated term is guaranteed to be a normal form. In this paper we define the notion of the completeness for the context-sensitive rewriting, called -completeness, and show a condition of the E-strategy to satisfy the -completeness. Secondarily, we give a strictness analysis for the E-strategy. A function is called strict in a certain argument if the evaluation of that argument does not change the termination behaviour. From the analyses, we can define a method to get a more effective default strategy for the E-strategy.
Context-Sensitive Rewriting, Lazy Rewriting, and On-demand Rewriting
- Christian-Albrechts-Universitat zu Kiel
, 2001
"... On-demand rewriting provides an operational model for term rewriting controlled by annotations consisting of (sets of) positive and negative integers referring the arguments of function symbols. Contextsensitive rewriting and lazy rewriting provide (different) operational models for positive ann ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
On-demand rewriting provides an operational model for term rewriting controlled by annotations consisting of (sets of) positive and negative integers referring the arguments of function symbols. Contextsensitive rewriting and lazy rewriting provide (different) operational models for positive annotations. In this paper we prove that, under certain conditions, the three operational models coincide. In this case, it makes sense using context-sensitive rewriting as it is the simplest one. This fact also permits proving termination of lazy rewriting by proving termination of context-sensitive rewriting for a transformed rewrite system.
Evaluation Strategies for Term Rewriting Systems
, 2002
"... Term rewriting systems are widely used in computer science as a model of computation to relate syntax and semantics. In order to implement term rewriting system we need to use a strategy since there are many reduction sequences from a term in general. A strategy chooses one from such sequences. It i ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Term rewriting systems are widely used in computer science as a model of computation to relate syntax and semantics. In order to implement term rewriting system we need to use a strategy since there are many reduction sequences from a term in general. A strategy chooses one from such sequences. It is a function that takes a term to be rewritten and returns a term obtained by rewriting from the input term. There are two wellknown strategies: innermost strategies (or eager evaluation) and outermost strategies (or lazy evaluation). Innermost strategies can be implemented much more efficiently than outermost ones, while outermost strategies often have a better termination behavior than innermost ones. The evaluation strategy (the E-strategy), which is adopted by the family of OBJ algebraic specification languages, is one of the compromises between them. The E-strategy is more flexible than other fixed order of evaluation because each function symbol can have its own local strategy...
On Proving Termination of OBJ Programs with Positive Local Strategies
"... We investigate the problem of proving termination of OBJ programs with positive local strategies, i.e., lists of positive (or null) integers that are associated to the symbols of the signature. We establish conditions that fully characterize this problem as the problem of proving innermost termi ..."
Abstract
- Add to MetaCart
We investigate the problem of proving termination of OBJ programs with positive local strategies, i.e., lists of positive (or null) integers that are associated to the symbols of the signature. We establish conditions that fully characterize this problem as the problem of proving innermost termination of context-sensitive rewriting. Finally, we investigate how to prove innermost termination of context-sensitive rewriting using existing methods for proving termination of context-sensitive rewriting. Keywords: Declarative programming, replacement restrictions, term rewriting, termination. 1
Contents lists available at ScienceDirect Theoretical Computer Science
"... journal homepage: www.elsevier.com/locate/tcs On-demand strategy annotations revisited: An improved on-demand evaluation strategy ✩ ..."
Abstract
- Add to MetaCart
journal homepage: www.elsevier.com/locate/tcs On-demand strategy annotations revisited: An improved on-demand evaluation strategy ✩

