Results 1  10
of
58
InductiveDataType Systems
, 2002
"... In a previous work ("Abstract Data Type Systems", TCS 173(2), 1997), the leI two authors presented a combined lmbined made of a (strongl normal3zG9 alrmal rewrite system and a typed #calA#Ik enriched by patternmatching definitions folnitio a certain format,calat the "General Schema", whichgenera ..."
Abstract

Cited by 752 (22 self)
 Add to MetaCart
In a previous work ("Abstract Data Type Systems", TCS 173(2), 1997), the leI two authors presented a combined lmbined made of a (strongl normal3zG9 alrmal rewrite system and a typed #calA#Ik enriched by patternmatching definitions folnitio a certain format,calat the "General Schema", whichgeneral39I theusual recursor definitions fornatural numbers and simil9 "basic inductive types". This combined lmbined was shown to bestrongl normalIk39f The purpose of this paper is toreformul33 and extend theGeneral Schema in order to make it easil extensibl3 to capture a more general cler of inductive types, cals, "strictly positive", and to ease the strong normalgAg9Ik proof of theresulGGg system. Thisresul provides a computation model for the combination of anal"DAfGI specification language based on abstract data types and of astrongl typed functional language with strictly positive inductive types.
An Implementation of Narrowing Strategies
 Journal of the ACM
, 2001
"... This paper describes an implementation of narrowing, an essential component of implementations of modern functional logic languages. These implementations rely on narrowing, in particular on some optimal narrowing strategies, to execute functional logic programs. We translate functional logic progra ..."
Abstract

Cited by 291 (121 self)
 Add to MetaCart
This paper describes an implementation of narrowing, an essential component of implementations of modern functional logic languages. These implementations rely on narrowing, in particular on some optimal narrowing strategies, to execute functional logic programs. We translate functional logic programs into imperative (Java) programs without an intermediate abstract machine. A central idea of our approach is the explicit representation and processing of narrowing computations as data objects. This enables the implementation of operationally complete strategies (i.e., without backtracking) or techniques for search control (e.g., encapsulated search). Thanks to the use of an intermediate and portable representation of programs, our implementation is general enough to be used as a common back end for a wide variety of functional logic languages.
Termination of Term Rewriting Using Dependency Pairs
 Comput. Sci
, 2000
"... We present techniques to prove termination and innermost termination of term rewriting systems automatically. In contrast to previous approaches, we do not compare left and righthand sides of rewrite rules, but introduce the notion of dependency pairs to compare lefthand sides with special subter ..."
Abstract

Cited by 214 (46 self)
 Add to MetaCart
We present techniques to prove termination and innermost termination of term rewriting systems automatically. In contrast to previous approaches, we do not compare left and righthand sides of rewrite rules, but introduce the notion of dependency pairs to compare lefthand sides with special subterms of the righthand sides. This results in a technique which allows to apply existing methods for automated termination proofs to term rewriting systems where they failed up to now. In particular, there are numerous term rewriting systems where a direct termination proof with simplification orderings is not possible, but in combination with our technique, wellknown simplification orderings (such as the recursive path ordering, polynomial orderings, or the KnuthBendix ordering) can now be used to prove termination automatically. Unlike previous methods, our technique for proving innermost termination automatically can also be applied to prove innermost termination of term rewriting systems that are not terminating. Moreover, as innermost termination implies termination for certain classes of term rewriting systems, this technique can also be used for termination proofs of such systems.
Mechanizing and Improving Dependency Pairs
 Journal of Automated Reasoning
, 2006
"... Abstract. The dependency pair technique [1, 11, 12] is a powerful method for automated termination and innermost termination proofs of term rewrite systems (TRSs). For any TRS, it generates inequality constraints that have to be satisfied by wellfounded orders. We improve the dependency pair techni ..."
Abstract

Cited by 69 (32 self)
 Add to MetaCart
Abstract. The dependency pair technique [1, 11, 12] is a powerful method for automated termination and innermost termination proofs of term rewrite systems (TRSs). For any TRS, it generates inequality constraints that have to be satisfied by wellfounded orders. We improve the dependency pair technique by considerably reducing the number of constraints produced for (innermost) termination proofs. Moreover, we extend transformation techniques to manipulate dependency pairs which simplify (innermost) termination proofs significantly. In order to fully mechanize the approach, we show how transformations and the search for suitable orders can be mechanized efficiently. We implemented our results in the automated termination prover AProVE and evaluated them on large collections of examples.
Termination of Nested and Mutually Recursive Algorithms
, 1996
"... This paper deals with automated termination analysis for functional programs. Previously developed methods for automated termination proofs of functional programs often fail for algorithms with nested recursion and they cannot handle algorithms with mutual recursion. We show that termination proofs ..."
Abstract

Cited by 39 (9 self)
 Add to MetaCart
This paper deals with automated termination analysis for functional programs. Previously developed methods for automated termination proofs of functional programs often fail for algorithms with nested recursion and they cannot handle algorithms with mutual recursion. We show that termination proofs for nested and mutually recursive algorithms can be performed without having to prove the correctness of the algorithms simultaneously. Using this result, nested and mutually recursive algorithms do no longer constitute a special problem and the existing methods for automated termination analysis can be extended to nested and mutual recursion in a straightforward way. We give some examples of algorithms whose termination can now be proved automatically (including wellknown challenge problems such as McCarthy's f_91 function).
Observer Complete Definitions are Behaviourally Coherent
 OBJ/CAFEOBJ/MAUDE AT FORMAL METHODS '99
, 1999
"... We consider observational specifications of statebased systems which incorporate the declaration of a distinguished set of observer operations. These observers determine an indistinguishability relation for states which is called "observational equality". An important requirement for the nono ..."
Abstract

Cited by 34 (6 self)
 Add to MetaCart
We consider observational specifications of statebased systems which incorporate the declaration of a distinguished set of observer operations. These observers determine an indistinguishability relation for states which is called "observational equality". An important requirement for the nonobserver operations is the compatibility with the observational equality. In the CafeOBJ language (and in extended hidden algebra) this property is called "behavioural coherence". In this presentation we introduce the notion of an "observer complete definition" and we show that any (nonobserver) operation which is defined using this pattern is behaviourally coherent. We also discuss some consequences of this result for relating observational logic and extended hidden algebra semantics and for proving the correctness of observational implementations.
Nondeterministic algebraic specifications and nonconfluent term rewriting
 Journal of Logic Programming
, 1992
"... Algebraic specifications are generalized to the case of nondeterministic operations by admitting models with setvalued functions (multialgebras). General (in particular, nonconfluent) term rewriting systems are studied as a specification language for this semantic framework. A calculus for nondet ..."
Abstract

Cited by 34 (0 self)
 Add to MetaCart
Algebraic specifications are generalized to the case of nondeterministic operations by admitting models with setvalued functions (multialgebras). General (in particular, nonconfluent) term rewriting systems are studied as a specification language for this semantic framework. A calculus for nondeterministic specifications is given which is similar to term rewriting but which employs an additional determinacy predicate. Correctness, ground completeness and initiality results are given. Small examples illustrate the range of possible applications. 1
Equational Inference, Canonical Proofs, And Proof Orderings
 Journal of the ACM
, 1992
"... We describe the application of proof orderingsa technique for reasoning about inference systemsto various rewritebased theoremproving methods, including re#nements of the standard KnuthBendix completion procedure based on critical pair criteria; Huet's procedure for rewriting modulo a congr ..."
Abstract

Cited by 30 (11 self)
 Add to MetaCart
We describe the application of proof orderingsa technique for reasoning about inference systemsto various rewritebased theoremproving methods, including re#nements of the standard KnuthBendix completion procedure based on critical pair criteria; Huet's procedure for rewriting modulo a congruence; ordered completion #a refutationally complete extension of standard completion#; and a proof by consistency procedure for proving inductive theorems. # This is a substantially revised version of the paper, #Orderings for equational proofs," coauthored with J. Hsiang and presented at the Symp. on Logic in Computer Science #Boston, Massachusetts, June 1986#. It includes material from the paper #Proof by consistency in equational theories," by the #rst author, presented at the ThirdAnnual Symp. on Logic in Computer Science #Edinburgh, Scotland, July 1988#. This researchwas supported in part by the National Science Foundation under grants CCR8901322, CCR9007195, and CCR9024271. 1 ...
A Collection of Examples for Termination of Term Rewriting Using Dependency Pairs
, 2001
"... This report contains a collection of examples to demonstrate the use and the power of the dependency pair technique developed by Arts and Giesl. This technique allows automated termination and innermost termination proofs for many term rewrite systems for which such proofs were not possible before. ..."
Abstract

Cited by 26 (11 self)
 Add to MetaCart
This report contains a collection of examples to demonstrate the use and the power of the dependency pair technique developed by Arts and Giesl. This technique allows automated termination and innermost termination proofs for many term rewrite systems for which such proofs were not possible before.
Colouring Terms to Control Equational Reasoning
 Journal of Automated Reasoning
, 1997
"... . In this paper we present an approach to prove the equality between terms in a goaldirected way developed in the field of inductive theorem proving. The two terms to be equated are syntactically split into expressions which are common to both and those which occur only in one term. According to the ..."
Abstract

Cited by 25 (13 self)
 Add to MetaCart
. In this paper we present an approach to prove the equality between terms in a goaldirected way developed in the field of inductive theorem proving. The two terms to be equated are syntactically split into expressions which are common to both and those which occur only in one term. According to the computed differences we apply appropriate equations to the terms in order to reduce the differences in a goaldirected way. Although this approach was developed for purposes of inductive theorem proving  we use this technique to manipulate the conclusion of an induction step to enable the use of the hypothesis  it is a powerful method for the control of equational reasoning in general. 1. Introduction The automation of equational reasoning is one of the most important obstacles in the field of automating deductions. Even small equational problems result in a huge search space, and finding a proof often fails due to the combinatorial explosion. Proving (conditional) equations by inductio...