Results 1 - 10
of
12
Evaluation Strategies for Functional Logic Programming
- Journal of Symbolic Computation
, 2001
"... . Recent advances in the foundations and the development of functional logic programming languages originate from far-reaching results on narrowing evaluation strategies. Narrowing is a computation similar to rewriting which yields substitutions in addition to normal forms. In functional logic pr ..."
Abstract
-
Cited by 19 (12 self)
- Add to MetaCart
. Recent advances in the foundations and the development of functional logic programming languages originate from far-reaching results on narrowing evaluation strategies. Narrowing is a computation similar to rewriting which yields substitutions in addition to normal forms. In functional logic programming, the classes of rewrite systems to which narrowing is applied are, for the most part, subclasses of the constructor-based, possibly conditional, rewrite systems. Many interesting narrowing strategies, particularly for the smallest subclasses of the constructor-based rewrite systems, are generalizations of wellknown rewrite strategies. However, some strategies for larger non-confluents subclasses have been developed just for functional logic computations. In this paper, I will discuss the elements that play a relevant role in evaluation strategies for functional logic programming, describe some important classes of rewrite systems that model functional logic programs, show examples of the differences in expressiveness provided by these classes, and review the characteristics of narrowing strategies proposed for each class of rewrite systems. 1
Termination and Reduction Checking for Higher-Order Logic Programs
- In First International Joint Conference on Automated Reasoning (IJCAR
"... . In this paper, we present a syntax-directed termination and reduction checker for higher-order logic programs. The reduction checker verifies parametric higher-order subterm orderings describing input and output relations. These reduction orderings are exploited during termination checking to ..."
Abstract
-
Cited by 11 (1 self)
- Add to MetaCart
. In this paper, we present a syntax-directed termination and reduction checker for higher-order logic programs. The reduction checker verifies parametric higher-order subterm orderings describing input and output relations. These reduction orderings are exploited during termination checking to infer that a specified termination order holds. To reason about parametric higher-order subterm orderings, we introduce a deductive system as a logical foundation for proving termination. This allows the study of proof-theoretical properties, such as consistency, local soundness and completeness and decidability. We concentrate here on proving consistency of the presented inference system. The termination and reduction checker are implemented as part of the Twelf system and enables us to verify proofs by complete induction. 1 Introduction One of the central problems in verifying specifications and checking proofs about them is the need to prove termination. Several automated methods...
A Monotonic Higher-Order Semantic Path Ordering
- Proc. of 8th Int. Conf. on Logic for Programming, Artificial Intelligence and Reasoning (LPAR'01) LNAI 2250:531--547
, 2000
"... . There is an increasing use of (first- and higher-order) rewrite rules in many programming languages and logical systems. The recursive path ordering (RPO) is a well-known tool for proving termination of such rewrite rules in the first-order case [Der82]. However, RPO has some weaknesses. For i ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
. There is an increasing use of (first- and higher-order) rewrite rules in many programming languages and logical systems. The recursive path ordering (RPO) is a well-known tool for proving termination of such rewrite rules in the first-order case [Der82]. However, RPO has some weaknesses. For instance, since it is a simplification ordering, it can only handle simply terminating systems. Several techniques have been developed for overcoming these weaknesses of RPO. A very recent such technique is the monotonic semantic path ordering (MSPO) [BFR00], a simple and easily automatizable ordering which generalizes other more ad-hoc methods. Another recent extension of RPO is its higher-order version HORPO [JR99]. HORPO is an ordering on terms of a typed lambda-calculus generated by a signature of higher-order function symbols. Althgough many interesting examples can be proved terminating using HORPO, it inherits the weaknesses of the first-order RPO. Therefore, there is an obvious need for higher-order termination orderings without these weaknesses. Here we define the first such ordering, the monotonic higher-order semantic path ordering (MHOSPO), which is still automatizable like MSPO. We give evidence of its power by means of several natural and non-trivial examples which cannot be handled by HORPO. 1
Higher-Order rewriting: Framework, Confluence and termination
- Processes, Terms and Cycles: Steps on the road to infinity. Essays Dedicated to Jan Willem Klop on the occasion of his 60th Birthday. LNCS 3838
, 2005
"... Equations are ubiquitous in mathematics and in computer science as well. This first sentence of a survey on first-order rewriting borrowed again and again characterizes best the fundamental reason why rewriting, as a technology for processing equations, is so important in our discipline [10]. ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Equations are ubiquitous in mathematics and in computer science as well. This first sentence of a survey on first-order rewriting borrowed again and again characterizes best the fundamental reason why rewriting, as a technology for processing equations, is so important in our discipline [10].
Residuals in higher-order rewriting
- Proceedings of Rewriting Techniques and Applications (RTA’03
, 2003
"... Abstract. Residuals have been studied for various forms of rewriting setting. In this article we study residuals in orthogonal Pattern Rewriting Systems (PRSs). First, the rewrite relation is defined by means of a higher-order rewriting logic, and proof terms are defined that witness reductions. The ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Abstract. Residuals have been studied for various forms of rewriting setting. In this article we study residuals in orthogonal Pattern Rewriting Systems (PRSs). First, the rewrite relation is defined by means of a higher-order rewriting logic, and proof terms are defined that witness reductions. Then, we have the formal machinery to define a residual operator for PRSs, and we will prove that an orthogonal PRS together with the residual operator mentioned above, is a residual system. As a side-effect, all results of (abstract) residual theory are inherited by orthogonal PRSs, such as confluence, and the notion of permutation equivalence of reductions. 1
A monotonic Higher-Order Semantic Path Ordering
- Proc. of 8th Int. Conf. on Logic for Programming, Artificial Intelligence and Reasoning (LPAR'01) LNAI 2250:531--547
, 2000
"... There is an increasing use of (first- and higher-order) rewrite rules in many programming languages and logical systems. The recursive path ordering (RPO) is a well-known tool for proving termination of such rewrite rules in the first-order case. However, RPO has some weaknesses. ..."
Abstract
- Add to MetaCart
There is an increasing use of (first- and higher-order) rewrite rules in many programming languages and logical systems. The recursive path ordering (RPO) is a well-known tool for proving termination of such rewrite rules in the first-order case. However, RPO has some weaknesses.
2.2 Residual Theory......................... 4
, 2003
"... Abstract. Residuals have been studied for various forms of rewriting and residual systems have been defined to capture residuals in an abstract setting. In this article we study residuals in orthogonal Pattern Rewriting Systems (PRSs). First, the rewrite relation is defined by means of a higher-orde ..."
Abstract
- Add to MetaCart
Abstract. Residuals have been studied for various forms of rewriting and residual systems have been defined to capture residuals in an abstract setting. In this article we study residuals in orthogonal Pattern Rewriting Systems (PRSs). First, the rewrite relation is defined by means of a higher-order rewriting logic, and proof terms are defined that witness reductions. Then, we have the formal machinery to define a residual operator for PRSs, and we will prove that an orthogonal PRS together with the residual operator mentioned above, is a residual system. As a side-effect, all results of (abstract) residual theory are inherited by orthogonal PRSs, such as confluence, and the notion of

