Skip to main content
Log in

Crypt-equivalent algebraic specifications

  • Published:
Acta Informatica Aims and scope Submit manuscript

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”.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Barwise, J., (ed.): Handbook of Mathematical Logic Amsterdam: North-Holland 1977

    Google Scholar 

  2. Bauer, F.L.: Lecture Notes on Algorithmic Languages, Technical University Munich, July 1977

  3. Bauer, F.L., Wössner, H.: Algorithmic Language and Program Development. Berlin, Heidelberg, New York: Springer 1982

    Book  Google Scholar 

  4. 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

    Google Scholar 

  5. Bergstra, J.A., Meyer, J.-J.C.: A simple transfer lemma for algebraic specification. Inf. Proc. Letters 14, 80–85 (1982)

    Article  Google Scholar 

  6. Bergstra, J.A., Tucker, J.V.: Algebraic specification of computable and semicomputable data structures. Afdeling Informaticae Amsterdam, IW 115/79

  7. 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)

    Google Scholar 

  8. Birkhoff, G.: Lattice Theory. New York: Amer. Math. Soc. 1940; third edition, 1967

    MATH  Google Scholar 

  9. Broy, M., Möller, B., Pepper, P., Wirsing, M.: Algebraic implementations preserve program correctness. Sci. Comput. Programming 7, 35–53 (1986)

    Article  MathSciNet  Google Scholar 

  10. 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

    Chapter  Google Scholar 

  11. Chang, C.C., Keisler, H.J. Model Theory. Studies in Logic and Foundations of Mathematics, Vol. 73, Amsterdam: North-Holland 1974

    Google Scholar 

  12. 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

    Google Scholar 

  13. Ehrich, H.-D.: On the theory of specification, implementation and parameterization of abstract data types. JACM 29, 206–227 (1982)

    Article  Google Scholar 

  14. Ehrig, H., Kreowski, H.-J., Mahr, B., Padawitz, P.: Algebraic implementation of abstract data types. Theoret. Comput. Sci. 20, 209–263 (1982)

    Article  Google Scholar 

  15. Goguen, J.A.: Abstract errors for abstract data types. Proc. IFIP Working Conf. on Formal Description of Programming Concepts, St. Andrews, 1977

  16. Goguen, J.A., Meseguer, J.: Completeness of many-sorted equational logic. SIGPLAN Notices 16, 24–32 (1981)

    Article  Google Scholar 

  17. 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

    Article  MathSciNet  Google Scholar 

  18. 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

    Google Scholar 

  19. Guttag, J.V., Horowitz, E., Musser, D.R.: Abstract data types and software validation. USC Res. Rep. ISI/RR-76-48, 1976

  20. Higman, G., Neumann, B.H.: Groups as groupoids with one law. Publicationes Mathematicae 2, 215–221 (1951/52)

    MathSciNet  MATH  Google Scholar 

  21. Hoare, C.A.R.: Proof of correctness of data representations. Acta Inf. 1, 271–281 (1972)

    Article  Google Scholar 

  22. Lorenzen, P.: Ein vereinfachtes Axiomensystem für Gruppen. J. Reine Angew. Math. 182, 50 (1940)

    MathSciNet  MATH  Google Scholar 

  23. Manes, E.G.: Algebraic Theories. Graduate Texts in Mathematics 26. Berlin, Heidelberg, New York: Springer 1976

    Google Scholar 

  24. 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

    Google Scholar 

  25. 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

    Google Scholar 

  26. 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)

  27. Padawitz, P., Wirsing, M.: Completeness of many-sorted logic revisited. EATCS Bulletin 24, 51–64 (1984)

    Google Scholar 

  28. Remy, J.-L., Veloso, P.A.S.: An economical method for comparing data type specifications. SIGPLAN Notices 16, 39–42 (1981)

    Article  Google Scholar 

  29. 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

  30. Schütte, K.: Beweistheorie. Die Grundlagen der mathematischen Wissenschaften in Einzeldarstellungen, Bd. 103. Berlin, Heidelberg, New York: Springer 1960

    Google Scholar 

  31. Shoenfield, R.: Mathematical Logic. Reading MA: Addison-Wesley 1967

    MATH  Google Scholar 

  32. Stone, M.H.: The representation theorem for Boolean algebra. Trans. Am. Math. Soc. 40, 37–111 (1936)

    Google Scholar 

  33. Wand, M.: Final algebra semantics and data type extensions. J. Comput. Syst. Sci. 19, 27–44 (1981)

    Article  MathSciNet  Google Scholar 

  34. Ward, M.: Postulates for the inverse operation in a group. Trans. Amer. Soc. 32, 520–526 (1930)

    Article  MathSciNet  Google Scholar 

  35. 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

    Google Scholar 

  36. Wirsing, M., Pepper, P., Partsch, H., Dosch, W., Broy, M.: On hierarchies of abstract data types. Acta Inf. 20, 1–33 (1983)

    Article  MathSciNet  Google Scholar 

  37. Bernstein, B.A.: Bull. Am. Math. Soc. 39, 783–787 (1933)

    Article  Google Scholar 

  38. Manna, Z.: Mathematical Theory of Computation. New York: McGraw-Hill 1974

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints 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

Download citation

  • Received:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00263582

Keywords

Navigation