Semantics of Order-Sorted Specifications

Abstract Order-sorted specifications (i.e. many-sorted specifications with subsort relations) have been proved to be a useful tool for the description of partially defined functions and error handling in abstract data types. Several definitions for order-sorted algebras have been proposed. In some papers an operator symbol, which may be multiply declared, is interpreted by a family of functions (“overloaded” algebras). In other papers it is always interpreted by a single function (“nonoverloaded” algebras). On the one hand, we try to demonstrate the differences between these two approaches with respect to equality, rewriting and completion; on the other hand, we prove that in fact both theories can be studied in parallel provided that certain notions are suitably defined. The overloaded approach differs from the many-sorted and the nonoverloaded one in that the overloaded term algebra is not necessarily initial. We give a decidable sufficient criterion for the initiality of the term algebra, which is less restrictive than GJM-regularity as proposed by Goguen, Jouannaud and Meseguer. Sort-decreasingness is an important property of rewrite systems since it ensures that confluence and Church-Rosser property are equivalent, that the overloaded and nonoverloaded rewrite relations agree, and that variable overlaps do not yield critical pairs. We prove that it is decidable whether or not a rewrite rule is sort-decreasing, even if the signature is not regular. Finally, we demonstrate that every overloaded completion procedure may also be used in the nonoverloaded world, but not conversely, and that specifications exist that can only be completed using the nonoverloaded semantics.

[1]  Tobias Nipkow,et al.  Type Classes and Overloading Resolution via Order-Sorted Unification , 1991, FPCA.

[2]  Claude Kirchner,et al.  Order-sorted equational unification , 1988 .

[3]  J. A. Goguen,et al.  Completeness of many-sorted equational logic , 1981, SIGP.

[4]  Arnold Oberschelp Untersuchungen zur mehrsortigen Quantorenlogik , 1962 .

[5]  Joseph A. Goguen,et al.  Order-Sorted Unification , 1989, J. Symb. Comput..

[6]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[7]  José Meseguer,et al.  Operational Semantics of OBJ-3 (Extended Abstract) , 1988, ICALP.

[8]  Jean H. Gallier,et al.  Rewriting in Order-sorted Equational Logic , 1988, ICLP/SLP.

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

[10]  Manfred Schmidt-Schauß A Many-Sorted Calculus with Polymorphic Functions Based on Resolution and Paramodulation , 1985, IJCAI.

[11]  Axel Poigné,et al.  Parametrization for Order-Sorted Algebraic Specification , 1990, J. Comput. Syst. Sci..

[12]  Joseph A. Goguen,et al.  Initial Algebra Semantics and Continuous Algebras , 1977, J. ACM.

[13]  Leo Bachmair Proof methods for equational theories , 1987 .

[14]  Claude Kirchner,et al.  Equational Completion in Order-Sorted Algebras (Extended Abstract) , 1988, CAAP.

[15]  Jean-Pierre Jouannaud,et al.  Operational Semantics for Order-Sorted Algebra , 1985, ICALP.

[16]  José Meseguer,et al.  Order-Sorted Algebra I: Equational Deduction for Multiple Inheritance, Overloading, Exceptions and Partial Operations , 1992, Theor. Comput. Sci..

[17]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[18]  Uwe Waldmann,et al.  Compatibility of Order-Sorted Rewrite Rules , 1990, CTRS.

[19]  Harald Ganzinger,et al.  Order-Sorted Completion: The Many-Sorted Way (Extended Abstract) , 1989, TAPSOFT, Vol.1.

[20]  J. Goguen,et al.  Order-Sorted Equational Computation , 1989 .

[21]  Christoph Walther,et al.  A Many-Sorted Calculus Based on Resolution and Paramodulation , 1982, IJCAI.

[22]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[23]  J. Meseguer,et al.  Order-Sorted Algebra Solves the Constructor-Selector, Multiple Representation, and Coercion Problems , 1993, Inf. Comput..

[24]  Hélène Kirchner,et al.  Completion of a Set of Rules Modulo a Set of Equations , 1986, SIAM J. Comput..

[25]  Hubert Comon Unification et disunification : théorie et applications , 1988 .

[26]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1: Equations and Initial Semantics , 1985 .

[27]  Hubert Comon Equational Formulas in Order-Sorted Algebras , 1990 .

[28]  Hans-Jörg Kreowski,et al.  Relation-Sorted Algebraic Specifications with Built-in Coercers: Basic Notions and Results , 1990, STACS.

[29]  M. Schmidt-Schauβ Computational Aspects of an Order-Sorted Logic with Term Declarations , 1989 .

[30]  Jean-Pierre Jouannaud,et al.  Confluent and Coherent Equational Term Rewriting Systems: Application to Proofs in Abstract Data Types , 1983, CAAP.

[31]  E. Mark Gold,et al.  Complexity of Automaton Identification from Given Data , 1978, Inf. Control..