Tools for Proving Inductive Equalities, Relative Completeness, and omega-Completeness

Abstract Inductive theorems are properties valid in the initial algebra. A now popular tool for proving them in equational theories or abstract data types is based on proof by consistency. This method uses a completion procedure and requires two essential properties of the specification, namely relative completeness and ω-completeness. This paper investigates ways of proving them. For the first one, the complement algorithm is presented. It is based on unification and computation of coverings and complements. For the second one, a technique based on discrimination of pairs of normal forms is explained and illustrated through examples.

[1]  H. Comon Sufficient Completness, Term Rewriting Systems and Anti-Unification , 1986 .

[2]  Alain Laville Lazy pattern matching in the ML language , 1987, FSTTCS.

[3]  Gordon D. Plotkin The lambda-Calculus is omega-Incomplete , 1974, J. Symb. Log..

[4]  José Meseguer,et al.  Initiality, induction, and computability , 1986 .

[5]  Emmanuel Kounalis,et al.  Completeness in Data Type Specifications , 1985, European Conference on Computer Algebra.

[6]  Hélène Kirchner A General Inductive Completion Algorithm and Application to Abstract Data Types , 1984, CADE.

[7]  Tobias Nipkow,et al.  A decidability result about sufficient-completeness of axiomatically specified abstract data types , 1983, Theoretical Computer Science.

[8]  Leon Henkin,et al.  The Logic of Equality , 1977 .

[9]  Jean H. Gallier,et al.  Logic for Computer Science: Foundations of Automatic Theorem Proving , 1985 .

[10]  Jean-Jacques Thiel Stop losing sleep over incomplete data type specifications , 1984, POPL '84.

[11]  Jean-Pierre Jouannaud,et al.  Proofs by induction in equational theories without constructors , 1985, Bull. EATCS.

[12]  J Heering,et al.  Partial Evaluation and omega-Completeness of Algebraic Specifications , 1986, Theor. Comput. Sci..

[13]  Gérard P. Huet,et al.  Proofs by Induction in Equational Theories with Constructors , 1980, FOCS.

[14]  Jan Heering,et al.  Partial evaluation and w-completeness of algebraic specifications , 1985 .

[15]  E. Paul,et al.  Proofs by Inducting in Equational Theories with Relations Between Constructors , 1984, Colloquium on Trees in Algebra and Programming.

[16]  Gregory Kucherov,et al.  A New Quasi-Reducibility Testing Algorithm and its Application to Proofs by Induction , 1988, ALP.

[17]  José Meseguer,et al.  An Introduction to OBJ 3 , 1988, CTRS.

[18]  W. Taylor Equational logic , 1979 .

[19]  Laurence Puel Proofs in the Final Algebra , 1984, CAAP.

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

[21]  Rod M. Burstall,et al.  HOPE: An experimental applicative language , 1980, LISP Conference.

[22]  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).

[23]  Tobias Nipkow,et al.  A decidability result about sufficient-completeness of axiomatically specified abstract data types , 1983 .

[24]  Robin Milner,et al.  A proposal for standard ML , 1984, LFP '84.

[25]  Yoshihito Toyama,et al.  Counterexamples to Termination for the Direct Sum of Term Rewriting Systems , 1987, Inf. Process. Lett..

[26]  Deepak Kapur,et al.  Proof by Consistency , 1987, Artif. Intell..

[27]  H. Ehrig,et al.  Equational Specifications and Algebras , 1985 .

[28]  Ellis Horowitz,et al.  Abstract data types and software validation , 1978, CACM.

[29]  David A. Plaisted,et al.  Semantic Confluence Tests and Completion Methods , 1985, Inf. Control..

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

[31]  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).

[32]  D. A. Turner,et al.  Miranda: A Non-Strict Functional language with Polymorphic Types , 1985, FPCA.