Confluent and Coherent Equational Term Rewriting Systems: Application to Proofs in Abstract Data Types

The well known Knuth and Bendix completion procedure computes a convergent term rewriting system from a given set of equational axioms. We describe here an abstract model of computation to handle the case where some axioms cannot be treated as rewrite rules without loosing the required termination property. We call Equational Term Rewriting Systems such mixted sets of rules and equations. We show that two abstract properties, namely E-confluence and E-coherence are both necessary and sufficient ones to compute with these models. These abstract properties can be checked on critical pairs yielding Huet's classical results on “confluence modulo” as well as a more general version of Peterson and Stickel's without any linearity hypothesis on the equations. These results are finally used to check consitency of an algebraic specification of data type.

[1]  Peter Padawitz,et al.  Equational Data Type Specifications and Recursive Program Schemes , 1982, Formal Description of Programming Concepts.

[2]  Jean-Marie Hullot,et al.  Canonical Forms and Unification , 1980, CADE.

[3]  Gérard P. Huet,et al.  A Complete Proof of Correctness of the Knuth-Bendix Completion Algorithm , 1981, J. Comput. Syst. Sci..

[4]  Pierre Lescanne,et al.  Computer experiments with the REVE term rewriting system generator , 1983, POPL '83.

[5]  Nachum Dershowitz,et al.  Rewrite Methods for Clausal and Non-Clausal Theorem Proving , 1983, ICALP.

[6]  Hans-Josef Jeanrond,et al.  Deciding Unique Termination of Permutative Rewriting Systems: Choose Your Term Algebra Carefully , 1980, CADE.

[7]  Claude Kirchner,et al.  Incremental Construction of Unification Algorithms in Equational Theories , 1983, ICALP.

[8]  H. Brown,et al.  Computational Problems in Abstract Algebra , 1971 .

[9]  Mark E. Stickel,et al.  Complete Sets of Reductions for Some Equational Theories , 1981, JACM.

[10]  Gerard Huet,et al.  Conflunt reductions: Abstract properties and applications to term rewriting systems , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[11]  Mark E. Stickel,et al.  A Unification Algorithm for Associative-Commutative Functions , 1981, JACM.

[12]  David R. Musser,et al.  On proving inductive properties of abstract data types , 1980, POPL '80.

[13]  Gérard P. Huet,et al.  Proofs by induction in equational theories with constructors , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[14]  D. Knuth,et al.  Simple Word Problems in Universal Algebras , 1983 .

[15]  Gérard P. Huet,et al.  Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems , 1980, J. ACM.

[16]  Donald E. Knuth,et al.  Simple Word Problems in Universal Algebras††The work reported in this paper was supported in part by the U.S. Office of Naval Research. , 1970 .

[17]  Nachum Dershowitz,et al.  Orderings for term-rewriting systems , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[18]  Joseph A. Goguen,et al.  How to Prove Algebraic Inductive Hypotheses Without Induction , 1980, CADE.

[19]  Jean-Pierre Jouannaud,et al.  Recursive Decomposition Ordering , 1982, Formal Description of Programming Concepts.