Logic programming with functions and predicates: the language Babel
Journal of Logic Programming
Programming in equational logic: beyond strong sequentiality
Information and Computation - Special issue: selections from 1990 IEEE symposium on logic in computer science
A sequential reduction strategy
ALP Proceedings of the fourth international conference on Algebraic and logic programming
Specialization of lazy functional logic programs
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Call by need computations to root-stable form
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Strongly sequential and inductively sequential term rewriting systems
Information Processing Letters
Automated Theorem-Proving for Theories with Simplifiers Commutativity, and Associativity
Journal of the ACM (JACM)
Lazy rewriting on eager machinery
ACM Transactions on Programming Languages and Systems (TOPLAS)
Journal of the ACM (JACM)
Context-sensitive rewriting strategies
Information and Computation
UPV-CURRY: An Incremental CURRY Interpreter
SOFSEM '99 Proceedings of the 26th Conference on Current Trends in Theory and Practice of Informatics on Theory and Practice of Informatics
Proceedings of the Third International Conference on Algebraic and Logic Programming
Canonical Forms and Unification
Proceedings of the 5th Conference on Automated Deduction
Decidable Call by Need Computations in term Rewriting (Extended Abstract)
CADE-14 Proceedings of the 14th International Conference on Automated Deduction
Strategies and analysis techniques in functional program optimization
AI Communications - STAIRS 2002
Complete symbolic reachability analysis using back-and-forth narrowing
Theoretical Computer Science - Algebra and coalgebra in computer science
Higher-Order and Symbolic Computation
Narrowing and Rewriting Logic: from Foundations to Applications
Electronic Notes in Theoretical Computer Science (ENTCS)
On-demand strategy annotations revisited: An improved on-demand evaluation strategy
Theoretical Computer Science
Natural rewriting for general term rewriting systems
LOPSTR'04 Proceedings of the 14th international conference on Logic Based Program Synthesis and Transformation
Natural narrowing for general term rewriting systems
RTA'05 Proceedings of the 16th international conference on Term Rewriting and Applications
Hi-index | 0.00 |
Outermost-needed rewriting/narrowing is a sound and complete optimal demand-driven strategy for the class of inductively sequential constructor systems. Its parallel extension (known as weakly) deals with non-inductively sequential constructor systems. In this paper, we present natural rewriting, a suitable extension of (weakly) outermost-needed rewriting which is based on a refinement of the demandness notion associated to the latter, and we extend it to narrowing. Intuitively, natural rewriting (narrowing) always reduces (narrows) the most often demanded position in a term. We formalize the strategy for left-linear constructor systems though, for the class of inductively sequential constructor systems, natural rewriting (narrowing) behaves even better than outermost-needed rewriting (narrowing) in the avoidance of failing computations. With regard to inductively sequential constructor systems, we introduce a larger class of systems called inductively sequential preserving where natural rewriting and narrowing preserve optimality for sequential parts of the program. We also provide a prototype interpreter of natural rewriting and narrowing.