Acta Informatica

, Volume 31, Issue 7, pp 651–671 | Cite as

Behavioural approaches to algebraic specifications

A comparative study
  • Gilles Bernot
  • Michel Bidoit
  • Teodor Knapik
Article

Abstract

This paper focuses on observability issues in the framework of loose algebraic specifications. The main purpose of observability is to extend the model class of some given algebraic specification in order to consider not only the algebras that satisfy the axioms of the specification in order to consider not only the algebras that satisfy the axioms of the specification, but as well other ones, provided that the differences between the properties satisfied by these algebras and the properties required by the specification (i.e., the axioms) are not “observable”. We compare various behavioural approaches developed so far. We point out their respective advantages and limitations. Expressive power is our main criterion for the discussion.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bernot, G., Bidoit, M.: Proving the correctness of algebraically specified software: Modularity and observability issues. Proceedings of Second International Conference on Algebraic Methodology and Software Technology, pp. 139–161, Iowa City, May 1991Google Scholar
  2. 2.
    Bernot, G., Gaudel, M.C., Marre, B.: Software testing based on formal specifications. Software Eng. J.6, 387–405 (1991)Google Scholar
  3. 3.
    van Diepen, N.W.P.: Implementation of modular algebraic specifications. In: Ganzinger, H. (ed.) ESOP 88, Nancy, March 1988. (Lect. Notes Comput Sci., vol. 300, pp. 64–78) Berlin, Heidelberg, New York: Springer 1988Google Scholar
  4. 4.
    Ehrig, H., Mahr, B.: Fundamentals of algebraic specifications. (EATCS Monogr. Theor. Comput. Sci., vol. 6) Berlin, Heidelberg, New York: Springer 1985Google Scholar
  5. 5.
    Fribourg, L.: SLOG, a logic programming language interpreter based on clausal superposition and rewriting. International Symposium on Logic Programming, Boston, July 1985Google Scholar
  6. 6.
    Ganzinger, H.: Parameterized specifications: parameter passing and implementation with respect to observability. ACM Trans. Programm. Lang. Syst.5, 318–354 (1983)Google Scholar
  7. 7.
    Gaudel, M.C., Moineau, T.: A theory of software reusability. In: Ganzinger H. (ed.) ESOP 88, Nancy, March 1988. (Lect. Notes Comput. Sci., vol. 300, pp. 115–130) Berlin, Heidelberg, New York: Springer 1988Google Scholar
  8. 8.
    Girratana, V., Gimona, F., Montanari, U.: Observability concepts in abstract data type specification. MFCS, Gdańsk 1976 (Lect. Notes Comput. Sci., vol. 45, pp. 576–587) Berlin, Heidelberg, New York: Springer 1976Google Scholar
  9. 9.
    Goguen, J.A., Thatcher, J.W., Wagner, E.G.: An initial approach to the specification, correctness and implementation of abstract data types. In: Yeh, R.T. (ed.) Current trends in programming methodology, vol. 4: Data structuring, pp. 80–149. Englewood Cliffs, NJ: Prentice Hall 1978Google Scholar
  10. 10.
    Hennicker, R.: Observational implementation of algebraic specifications. Acta Inf. 28, 187–230 (1991)Google Scholar
  11. 11.
    Hennicker, R.: Context induction: a proof principle for behavioural abstractions and algebraic implementations. Formal Aspects Comput.3, 326–345 (1991)Google Scholar
  12. 12.
    Hennicker, R., Nickl, F.: Behavioural algebraic framework for modular system design with reuse. Institut für Informatik, Ludwig-Maximilians-Universität München, November 1992 (Internal Report 9206)Google Scholar
  13. 13.
    Hussmann, H.: Unification in conditional-equational theories. Fakultät für Mathematik und Informatik Universität Passau, January 1985 (Internal Report MIP-8502) and short version in Proc. EUROCAL 85 Conf., LinzGoogle Scholar
  14. 14.
    Kamin, S.: Final data types and their specification. ACM Trans. Programm. Lang. Syst.5, 97–123 (1983)Google Scholar
  15. 15.
    Knapik, T.: Spécifications algébriques observationnelles modulaires: une sémantique fondée sur une relation de satisfaction observationnelle. Thèse de l'Université de Paris-Sud, Orsay 1993Google Scholar
  16. 16.
    Meseguer, J., Goguen, J. A.: Initiality, induction and computability. In: Nivat, M., Reynolds, J.C. (eds.), Algebraic methods in semantics, pp. 459–540. Cambridge: Cambridge University Press 1985Google Scholar
  17. 17.
    Moss, L.S., Meseguer, J., Goguen, J.A.: Final algebras, cosemicomputable algebras and degrees of unsolvability In: Pitt, D.H., Poigné, A., Rydeheard, D.E. (eds.) Category theory and computer science, Edinburgh, September 1987 (Lect. Notes Comput. Sci., vol. 283, pp. 158–181) Berlin, Heidelberg, New York: Springer 1987Google Scholar
  18. 18.
    Moss, L.S., Thatte, S.R.: Generalization of final algebra semantics by relativization. In: Main, M., Melton, A., Mislove, M., Schmidt, D. (eds.) Mathematical foundations of programming semantics. 5th Int. Conference, New Orleans, March/April 1989 (Lect. Notes Comput. Sci. vol. 442, pp. 284–300) Berlin, Heidelberg, New York: Springer 1970Google Scholar
  19. 19.
    Nivela, P., Orejas, F.: Initial behaviour semantics for algebraic specification. In: Sannella, D., Tarlecki, A. (eds.) Recent trends in data type specification, 5th Workshop on Specification of ADT, Gullane, September 1987 (Lect. Notes Comput. Sci, vol. 332, pp. 184–207) Berlin, Heidelberg, New York: Springer 1988Google Scholar
  20. 20.
    Pepper, P.: On the correctness of type transformations. Talk at 2nd Workshop on Theory and Applications of Abstract Data Types, Passau, May 1983Google Scholar
  21. 21.
    Sannella, D., Tarlecki, A.: On observational equivalence and algebraic specification. J. Comput. Syst. Sci.34, 150–178 (1997)Google Scholar
  22. 22.
    Sannella, D., Tarlecki, A.: Toward formal development of programs from algebraic specifications: implementation revisited. Acta Inf.25, 233–281 (1988)Google Scholar
  23. 23.
    Reichel, H.: Behavioural validity of conditional equations in abstract data types contributions to general algebra 3. Proceedings of the Vienna Conference, June 1984Google Scholar
  24. 24.
    Schoett, O.: Data abstraction and the correctness of modular programming. Ph. D. Thesis, University of Edinburgh, 1986Google Scholar
  25. 25.
    Schoett, O.: Two impossibility theorems on behaviour specification of abstract data types. Acta Inf.29, 595–621 (1992)Google Scholar
  26. 26.
    Wand, M.: Final algebra semantics and data type extension. J. Comput. Syst. Sci.19, 27–44 (1979)Google Scholar
  27. 27.
    Wirsing, M.: Algebraic description of reusable software components. In: Milgrom, E., Wodon, P. (eds.) Proceedings of COMPEURO '88. IEEE Computer Society, vol. 843, pp. 300–312, 1988Google Scholar

Copyright information

© Springer-Verlag 1994

Authors and Affiliations

  • Gilles Bernot
    • 1
  • Michel Bidoit
    • 1
  • Teodor Knapik
    • 1
  1. 1.Ecole Normale SupérieureL.I.E.N.S., C.N.R.S. U.R.A. 1327Paris Cedex 05France

Personalised recommendations