Results 1  10
of
33
ContextSensitive Rewriting Strategies
, 1997
"... Contextsensitive 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 ..."
Abstract

Cited by 46 (32 self)
 Add to MetaCart
Contextsensitive 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 contextsensitive rewriting strategies, i.e., particular, fixed sequences of contextsensitive rewriting steps. We study how to define them in order to obtain efficient computations and to ensure that contextsensitive computations terminate whenever possible. We give conditions enabling the use of these strategies for rootnormalization, normalization, and infinitary normalization. We show that this theory is suitable for formalizing ...
Termination of Rewriting with Strategy Annotations
 Proc. of 8th International Conference on Logic for Programming, Artificial Intelligence and Reasoning, LPAR'01, LNAI 2250:669684
, 2001
"... We investigate termination of rewriting computations guided by strategy annotations. We show that proofs of termination can be obtained by proving (innermost) termination of contextsensitive rewriting (CSR). Hence, we investigate how to prove innermost termination of CSR using existing methods ..."
Abstract

Cited by 22 (17 self)
 Add to MetaCart
(Show Context)
We investigate termination of rewriting computations guided by strategy annotations. We show that proofs of termination can be obtained by proving (innermost) termination of contextsensitive rewriting (CSR). Hence, we investigate how to prove innermost termination of CSR using existing methods for proving termination of CSR.
Correct and complete (positive) strategy annotations for OBJ
 Electronic Notes in Theoretical Computer Science
, 2002
"... Strategy annotations are used in several programming languages as replacement restrictions aimed at improving efficiency and/or reducing the risk of nontermination. ..."
Abstract

Cited by 16 (10 self)
 Add to MetaCart
Strategy annotations are used in several programming languages as replacement restrictions aimed at improving efficiency and/or reducing the risk of nontermination.
Lazy Rewriting and ContextSensitive 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, contextsensitive rewriting (CSR) forbids any reduction on those arguments. We show that, under certain conditions, LR and CSR coin ..."
Abstract

Cited by 14 (10 self)
 Add to MetaCart
(Show Context)
Lazy rewriting (LR) is intended to improve the termination behavior of TRSs. This is attempted by restricting reductions for selected arguments of functions. Similarly, contextsensitive 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.
Demandness in Rewriting and Narrowing
 Proc. of the 11th Int’l Workshop on Functional and (Constraint) Logic Programming WFLP’02, volume 76 of Electronic Notes in Theoretical Computer Science. Elsevier Sciences Publisher
, 2002
"... The traditional investigation of rewriting and narrowing strategies aims at establishing fundamental properties, such as soundness, completeness and/or optimality, of a strategy. In this work, we analyze and compare rewriting and narrowing strategies from the point of view of the information tak ..."
Abstract

Cited by 11 (4 self)
 Add to MetaCart
The traditional investigation of rewriting and narrowing strategies aims at establishing fundamental properties, such as soundness, completeness and/or optimality, of a strategy. In this work, we analyze and compare rewriting and narrowing strategies from the point of view of the information taken into account by a strategy to compute a step. The notion of demandness provides a suitable framework for presenting and comparing wellknown strategies. We find the existence of an almost linear sequence of strategies that take into account more and more information. We show on examples that, as we progress on this sequence, a strategy becomes more focused and avoids some useless steps computed by strategies preceding it in this sequence. Our work, which is still in progress, clarifies the behavior of similar or related strategies and it promises to simplify the transfer of some results from one strategy to another. It also suggests that the notion of demandness is both atomic and fundamental to the study of strategies.
Modular termination of contextsensitive rewriting
 IN PROC. 4TH PPDP
, 2002
"... Contextsensitive rewriting (CSR) has recently emerged as an interesting and flexible paradigm that provides a bridge between the abstract world of general rewriting and the (more) applied setting of declarative specification and programming languages such as OBJ*, CafeOBJ, ELAN, and Maude. A natura ..."
Abstract

Cited by 9 (6 self)
 Add to MetaCart
Contextsensitive rewriting (CSR) has recently emerged as an interesting and flexible paradigm that provides a bridge between the abstract world of general rewriting and the (more) applied setting of declarative specification and programming languages such as OBJ*, CafeOBJ, ELAN, and Maude. A natural approach to study properties of programs written in these languages is to model them as contextsensitive rewriting systems. Here we are especially interested in proving termination of such systems, and thereby providing methods to establish termination of e.g. OBJ* programs. For proving termination of contextsensitive rewriting, there exist a few transformation methods, that reduce the problem to termination of a transformed ordinary term rewriting system (TRS). These transformations, however, have some serious drawbacks. In particular, most of them do not seem to support a modular analysis of the termination problem. In this paper we will show that a substantial part of the wellknown theory of modular term rewriting can be extended to CSR, via a thorough analysis of the additional complications arising from contextsensitivity. More precisely, we will mainly concentrate on termination (properties). The obtained modularity results correspond nicely to the fact that in the above languages the modular design of programs and specifications is explicitly promoted, since it can now also be complemented by modular analysis techniques.
New Evaluation Commands for Maude Within Full Maude
, 2005
"... Maude is able to deal with infinite data structures and avoid infinite computations by using strategy annotations. However, they can eventually make the computation of the normal form(s) of some input expressions impossible. We have used Full Maude to implement two new commands norm and eval which f ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
Maude is able to deal with infinite data structures and avoid infinite computations by using strategy annotations. However, they can eventually make the computation of the normal form(s) of some input expressions impossible. We have used Full Maude to implement two new commands norm and eval which furnish Maude with the ability to compute (constructor) normal forms of initial expressions even when the use of strategy annotations together with the builtin computation strategy of Maude is not able to obtain them. These commands have been integrated into Full Maude, making them available inside the programming environment like any other of its commands.
Termination of Programs with Strategy Annotations
, 2003
"... Strategy annotations have been used in a number of programming languages and rewritingbased systems (e.g., OBJ2, OBJ3, CafeOBJ, Maude, JITty, µCRL, . . . ) for improving the termination behavior and avoiding useless computations. Regarding the ability of these annotations to improve the termina ..."
Abstract

Cited by 6 (6 self)
 Add to MetaCart
Strategy annotations have been used in a number of programming languages and rewritingbased systems (e.g., OBJ2, OBJ3, CafeOBJ, Maude, JITty, µCRL, . . . ) for improving the termination behavior and avoiding useless computations. Regarding the ability of these annotations to improve the termination behavior of programs, the possibility of forbidding reductions on some arguments of function symbols play a crucial role. From an abstract
Termination of innermost contextsensitive rewriting using dependency pairs
 In Proceedings of the 6th International Symposium on Frontiers of Combining Systems. lnai
"... Abstract. Innermost contextsensitive rewriting has been proved useful for modeling computations of programs of algebraic languages like Maude, OBJ, etc. Furthermore, innermost termination of rewriting is often easier to prove than termination. Thus, under appropriate conditions, a useful strategy f ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Innermost contextsensitive rewriting has been proved useful for modeling computations of programs of algebraic languages like Maude, OBJ, etc. Furthermore, innermost termination of rewriting is often easier to prove than termination. Thus, under appropriate conditions, a useful strategy for proving termination of rewriting is trying to prove termination of innermost rewriting. This phenomenon has also been investigated for contextsensitive rewriting (CSR). Up to now, only few transformations have been proposed and used to prove termination of innermost CSR. In this paper, we investigate direct methods for proving termination of innermost CSR. We adapt the recently introduced contextsensitive dependency pairs approach to innermost CSR and show that they can be advantageously used for proving termination of innermost CSR. We have implemented them as part of the termination tool muterm. 1
OrderSorted Dependency Pairs
, 2008
"... Types (or sorts) are pervasive in computer science and in rewritingbased programming languages, which often support subtypes (subsorts) and subtype polymorphism. Programs in these languages can be modeled as ordersorted term rewriting systems (OSTRSs). Often, termination of such programs heavily d ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
Types (or sorts) are pervasive in computer science and in rewritingbased programming languages, which often support subtypes (subsorts) and subtype polymorphism. Programs in these languages can be modeled as ordersorted term rewriting systems (OSTRSs). Often, termination of such programs heavily depends on sort information. But few techniques are currently available for proving termination of OSTRSs; and they often fail for interesting OSTRSs. In this paper we generalize the dependency pairs approach to prove termination of OSTRSs. Preliminary experiments suggest that this technique can succeed where existing ones fail, yielding easier and simpler termination proofs.