Results 1 
5 of
5
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 bottomup 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 6 (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 bottomup 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 nonterminating 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.
Separability and Translatability of Sequential Term Rewrite Systems Into the Lambda Calculus
, 2001
"... Orthogonal term rewrite systems do not currently have any semantics other than syntacticallybased ones such as term models and event structures. For a functional language which combines lambda calculus with term rewriting, a semantics is most easily given by translating the rewrite rules into lambd ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Orthogonal term rewrite systems do not currently have any semantics other than syntacticallybased ones such as term models and event structures. For a functional language which combines lambda calculus with term rewriting, a semantics is most easily given by translating the rewrite rules into lambda calculus and then using wellunderstood semantics for the lambda calculus. We therefore study in this paper the question of which classes of TRS do or do not have such translations. We demonstrate by construction that forward branching orthogonal term rewrite systems are translatable into the lambda calculus. The translation satis es some strong properties concerning preservation of equality and of some inequalities. We prove that the forward branching systems are exactly the systems permitting such a translation which is, in a precise sense, uniform in the righthand sides. Connections are drawn between translatability, sequentiality and separability properties. Simple syntactic proofs are given of the nontranslatability of a class of TRSs, including Berry's F and several variants of it.
Incremental Needed Narrowing
 In Proc. of the Int’l Workshop on Implementation of Declarative Languages (IDL’99
, 1999
"... Needed narrowing is currently the best complete strategy for executing inductively sequential functional logic programs. Its optimality properties and the fact that inductively sequential programs are a subclass of strongly sequential programs support the claim that needed narrowing must be consider ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Needed narrowing is currently the best complete strategy for executing inductively sequential functional logic programs. Its optimality properties and the fact that inductively sequential programs are a subclass of strongly sequential programs support the claim that needed narrowing must be considered the functional logic couterpart of Huet and Lévy's strongly needed reduction. In this paper, we show how a preeminent property of reduction in (a distinguished subclass of) strongly sequential programs, namely the incrementality of the evaluation, can be inherited by needed narrowing. We give an incremental definition of needed narrowing and show that the original optimality properties are kept. Moreover, we experimentally demonstrate that the incremental refinement can lead to substantial improvements in the overall evaluation process.
Separability and Translatability of Sequential Term Rewrite Systems Into the Lambda Calculus
"... this paper the question of which ..."
Strategies and Analysis Techniques for Functional Program Optimization
, 2003
"... Computer systems play an important role in the modern information society. However, the low quality of software and its low level of abstraction, inhibit the necessary confidence of final users and system developers in software engineering. Correctness of computer programs by a mathematical theory o ..."
Abstract
 Add to MetaCart
Computer systems play an important role in the modern information society. However, the low quality of software and its low level of abstraction, inhibit the necessary confidence of final users and system developers in software engineering. Correctness of computer programs by a mathematical theory of computation is the fundamental concern of the theory of programming and of its application in largescale software engineering. Formal methods provide software engineering with the suitable scientific and technological framework to become a real engineering, as predictable as civil or electrical engineering are. Indeed, the use of declarative rulebased programming languages during all program development stages ensures that correct and certified formal methodologies are followed during the whole software production process.