Summary
Equivalence is a fundamental notion for the semantic analysis of algebraic specifications. In this paper the notion of “crypt-equivalence” is introduced and studied w.r.t. two “loose” approaches to the semantics of an algebraic specification T: the class of all first-order models of T and the class of all term-generated models of T. Two specifications are called crypt-equivalent if for one specification there exists a predicate logic formula which implicitly defines an expansion (by new functions) of every model of that specification in such a way that the expansion (after forgetting unnecessary functions) is homologous to a model of the other specification, and if vice versa there exists another predicate logic formula with the same properties for the other specification. We speak of “first-order crypt-equivalence” if this holds for all first-order models, and of “inductive crypt-equivalence” if this holds for all term-generated models. Characterizations and structural properties of these notions are studied. In particular, it is shown that first order crypt-equivalence is equivalent to the existence of explicit definitions and that in case of “positive definability” two first-order crypt-equivalent specifications admit the same categories of models and homomorphisms. Similarly, two specifications which are inductively crypt-equivalent via sufficiently complete implicit definitions determine the same associated categories. Moreover, crypt-equivalence is compared with other notions of equivalence for algebraic specifications: in particular, it is shown that first-order cryptequivalence is strictly coarser than “abstract semantic equivalence” and that inductive crypt-equivalence is strictly finer than “inductive simulation equivalence” and “implementation equivalence”.
Similar content being viewed by others
References
Barwise, J., (ed.): Handbook of Mathematical Logic Amsterdam: North-Holland 1977
Bauer, F.L.: Lecture Notes on Algorithmic Languages, Technical University Munich, July 1977
Bauer, F.L., Wössner, H.: Algorithmic Language and Program Development. Berlin, Heidelberg, New York: Springer 1982
Bergstra, J.A., Broy, M., Tucker, J.V., Wirsing, M.: On the power of algebraic specifications. Proc. 10th Int. Symp. on Mathematical Foundations of Computer Science, Strbske Pleso, Czechoslovakia. Lect. Notes Comput. Sci. Vol. 118, pp. 193–204 Berlin, Heidelberg, New York: Springer 1981
Bergstra, J.A., Meyer, J.-J.C.: A simple transfer lemma for algebraic specification. Inf. Proc. Letters 14, 80–85 (1982)
Bergstra, J.A., Tucker, J.V.: Algebraic specification of computable and semicomputable data structures. Afdeling Informaticae Amsterdam, IW 115/79
Bertoni, A., Mauri, G., Miglioli, P.A., Wirsing, M.: On different approaches to abstract data types and the existence of recursive models. Bulletin EATCS 9, 47–57 (1979)
Birkhoff, G.: Lattice Theory. New York: Amer. Math. Soc. 1940; third edition, 1967
Broy, M., Möller, B., Pepper, P., Wirsing, M.: Algebraic implementations preserve program correctness. Sci. Comput. Programming 7, 35–53 (1986)
Burstall, R.M., Goguen, J.A.: The semantics of Clear, a specification language. Proc. of Advanced Course on Abstract Software specifications, Copenhagen. Lect. Notes Comput. Sci. Vol. 86, pp. 292–332 Berlin, Heidelberg, New York Springer 1980
Chang, C.C., Keisler, H.J. Model Theory. Studies in Logic and Foundations of Mathematics, Vol. 73, Amsterdam: North-Holland 1974
Bauer, F.L., Berghammer, R., Broy, M., Dosch, W., Geiselbrechtinger, F., Guatz, R., Hangel, E., Hesse, W., Krieg-Brückner, B., Laut, A., Matzner, T., Möller, B., Nickl, F., Partsch, H., Pepper, P., Samelson, K., Wirsing, M., Wössner, H. (the CIP-Language Group): The Munich project CIP, Vol. 1: The wide spectrum of CIP-L. Lect. Notes Comput. Sci. Vol. 183. Berlin, Heidelberg, New York: Springer 1985
Ehrich, H.-D.: On the theory of specification, implementation and parameterization of abstract data types. JACM 29, 206–227 (1982)
Ehrig, H., Kreowski, H.-J., Mahr, B., Padawitz, P.: Algebraic implementation of abstract data types. Theoret. Comput. Sci. 20, 209–263 (1982)
Goguen, J.A.: Abstract errors for abstract data types. Proc. IFIP Working Conf. on Formal Description of Programming Concepts, St. Andrews, 1977
Goguen, J.A., Meseguer, J.: Completeness of many-sorted equational logic. SIGPLAN Notices 16, 24–32 (1981)
Goguen, J.A. Thatcher,J.W., Wagner, E.G., Wright, J.B.: Initial algebra semantics and continuous algebras. IBM Research Report RC-5701, 1975; (also) JACM 24, 68–75 1975
Goguen, J.A., Thatcher, J.W., Wagner, E.G.: An initial algebra approach to the specification, correctness, and implementation of abstract data types. IBM research report RC 6487. Also In: R.T. Yeh (ed.) Current Trends in Programming Methodology, Vol. 4: Data Structuring, pp. 80–149 Englewoods Cliffs., NY: Prentice Hall 1978
Guttag, J.V., Horowitz, E., Musser, D.R.: Abstract data types and software validation. USC Res. Rep. ISI/RR-76-48, 1976
Higman, G., Neumann, B.H.: Groups as groupoids with one law. Publicationes Mathematicae 2, 215–221 (1951/52)
Hoare, C.A.R.: Proof of correctness of data representations. Acta Inf. 1, 271–281 (1972)
Lorenzen, P.: Ein vereinfachtes Axiomensystem für Gruppen. J. Reine Angew. Math. 182, 50 (1940)
Manes, E.G.: Algebraic Theories. Graduate Texts in Mathematics 26. Berlin, Heidelberg, New York: Springer 1976
Orejas, F.: On the representation of data types. Proc. ICFPC, Peniscola, Spain. Lect. Notes Comput. Sci. Vol. 107. pp. 419–431. Berlin, Heidelberg, New York: Springer 1981
Orejas, F.: Characterizing composibility of abstract implementations. Colloquium on Foundations of Computation Theory, Borgholm (Sweden) 1983. Lect. Notes Comput. Sci., Vol. 158. pp. 335–346 Berlin, Heidelberg, New York: Springer 1983
Orejas, F.: On implementability and computability of abstract data types. In: J. Demetrovics et al. (eds.) Algebra, Combinatorics and Logic in Computer Science, Colloquia Mathematica, Soc. Bolyai, Vol. 42. Amsterdam: North-Holland (in press)
Padawitz, P., Wirsing, M.: Completeness of many-sorted logic revisited. EATCS Bulletin 24, 51–64 (1984)
Remy, J.-L., Veloso, P.A.S.: An economical method for comparing data type specifications. SIGPLAN Notices 16, 39–42 (1981)
Sannella, D.T., Wirsing, M.: Implementation of parameterised specifications. Report CSR-103-82, Dept, of Computer Science, Univ. of Edinburgh; extended abstract in: Proc. 9th Intl. Colloq. on Automata, Languages and Programming, Aarhus, Denmark. Lect. Notes Comput. Sci., Vol. 140 pp. 473–488. Berlin, Heidelberg, New York: Springer 1982
Schütte, K.: Beweistheorie. Die Grundlagen der mathematischen Wissenschaften in Einzeldarstellungen, Bd. 103. Berlin, Heidelberg, New York: Springer 1960
Shoenfield, R.: Mathematical Logic. Reading MA: Addison-Wesley 1967
Stone, M.H.: The representation theorem for Boolean algebra. Trans. Am. Math. Soc. 40, 37–111 (1936)
Wand, M.: Final algebra semantics and data type extensions. J. Comput. Syst. Sci. 19, 27–44 (1981)
Ward, M.: Postulates for the inverse operation in a group. Trans. Amer. Soc. 32, 520–526 (1930)
Wirsing, M., Broy, M.: Abstract data types as lattices of finitely generated models. In: P. Dembinski (ed.): 9th MFCS, Rydzyna, Poland. Lect. Notes Comput. Sci. Vol. 88. pp. 673–685. Berlin, Heidelberg, New York: Springer 1980
Wirsing, M., Pepper, P., Partsch, H., Dosch, W., Broy, M.: On hierarchies of abstract data types. Acta Inf. 20, 1–33 (1983)
Bernstein, B.A.: Bull. Am. Math. Soc. 39, 783–787 (1933)
Manna, Z.: Mathematical Theory of Computation. New York: McGraw-Hill 1974
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Bauer, F.L., Wirsing, M. Crypt-equivalent algebraic specifications. Acta Informatica 25, 111–153 (1988). https://doi.org/10.1007/BF00263582
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF00263582