Advertisement

Implementation of parameterized observational specifications

  • Rolf Hennicker
Communications
Part of the Lecture Notes in Computer Science book series (LNCS, volume 351)

Abstract

An observational approach to the modular construction of algebraic implementations is presented. Based on the theory of parameterized observational specifications an implementation relation is defined which formalizes the intuitive idea that an implementation is correct if it produces correct observable output. It is shown that observational implementations compose vertically and (under appropriate conditions) horizontally. To be useful in practice proof theoretic criteria for parameterized observational implementations are given which are based on the notion of observable parameter context.

References

  1. [Broy et al. 84]
    M. Broy, C. Pair und M. Wirsing: A systematic study of models of abstract data types. Theoretical Computer Science 33, 139–174 (1984).Google Scholar
  2. [Broy et al. 86]
    M. Broy, B. Möller, P. Pepper und M. Wirsing: Algebraic implementations preserve program correctness. Science of Computer Programming 7, 1, 35–54 (1986).Google Scholar
  3. [Burstall, Goguen 80]
    R.M. Burstall, J.A. Goguen: The semantics of Clear, a specification language. Proc. of Advanced Course on Abstract Software Specifications, Kopenhagen. Springer Lecture Notes in Computer Science 86, 292–332 (1980).Google Scholar
  4. [Ehrig, Kreowski 82]
    H. Ehrig, H.J. Kreowski: Parameter passing commutes with implementation of parameterized data types. In: M. Nielsen, E.M. Schmidt (eds.): Proc. ICALP 82, 9th Coll. on Automata, Languages and Programming, Aarhus, July 1982. Springer Lecture Notes in Computer Science 140, 197–211 (1982).Google Scholar
  5. [Ehrig, Mahr 85]
    H. Ehrig, B. Mahr: Fundamentals of algebraic specification 1. EATCS Monographs on Theor. Comp. Science, Vol. 6, Springer Verlag (1985).Google Scholar
  6. [Ehrig et al. 82]
    H. Ehrig, H.J. Kreowski, B. Mahr und P. Padawitz: Algebraic implementation of abstract data types. Theoretical Computer Science 20, 209–263 (1982).Google Scholar
  7. [Futatsugi et al. 85]
    K. Futatsugi, J.A. Goguen, J.P. Jouannaud und J. Meseguer: Principles of OBJ2. Proc. 12th ACM Symposium on Principles of Programming Languages, New Orleans, 52–66 (1985).Google Scholar
  8. [Ganzinger 83]
    H. Ganzinger: Parameterized specifications: parameter passing and implementation with respect to observability. ACM Trans. on Prog. Lang. and Systems 5, 3, 318–354 (1983).Google Scholar
  9. [Geser, Hussmann 86]
    A. Geser, H. Hussmann: Experiences with the RAP system — a specification interpreter combining term rewriting and resolution. In: B. Robinet, R. Wilhelm (eds.): Proc. ESOP 86, Europ. Symp. on Programming, Saarbrücken, March 1986. Springer Lecture Notes in Computer Science 213, 339–350Google Scholar
  10. [Giarratana et al. 76]
    V. Giarratana, F. Gimona und U. Montanari: Observability concepts in abstract data type specification. In: A. Mazurkiewicz (ed.): Proc. MFCS 76, 5th Internat. Symp. on Mathematical Foundations of Comp. Science, Gdansk, Sept. 1976. Springer Lecture Notes in Computer Science 45, 576–587 (1976).Google Scholar
  11. [Goguen, Burstall 80]
    J.A. Goguen, R.M. Burstall: CAT, a system for the structured elaboration of correct programs from structured specifications. Technical report CSL-118, Computer Science Laboratory, SRI InternationalGoogle Scholar
  12. [Goguen, Meseguer 82]
    J.A. Gouen, J. Meseguer: Universal realization, persistent interconnection and implementation of abstract modules. In: M. Nielsen, E.M. Schmidt (eds.): Proc. ICALP 82, 9th Coll. on Automata, Languages and Programming, Aarhus, July 1982. Springer Lecture Notes in Computer Science 140, 265–281 (1982).Google Scholar
  13. [Hennicker 88]
    R. Hennicker: Beobachtungsorientierte Spezifikationen. Dissertation, Fakultät für Mathematik und Informatik, Universität Passau (1988).Google Scholar
  14. [Hennicker, Wirsing 85]
    R. Hennicker, M. Wirsing: Observational specification: a Birkhoff-theorem. In: H.J. Kreowski (ed.): Recent Trends in Data Type Specification. 3rd Workshop on Theory and Appl. of Abstract Data Types, Selected Papers. Informatik Fachberichte 116, 119–135, Springer Verlag (1985).Google Scholar
  15. [Nivela, Orejas 87]
    Ma P. Nivela, F. Orejas: Initial behaviour semantics for algebraic specifications. Proc. 5th Workshop on Algebraic Specifications of Abstract Data Types, Gullane, September 1987, Springer Lecture Notes in Computer Science 332, 184–207 (1988).Google Scholar
  16. [Pepper 83]
    P. Pepper: On the correctness of type transformations. Talk at 2nd Workshop on Theory and Appl. of Abstract Data Types, Passau, May 1984.Google Scholar
  17. [Reichel 81]
    H. Reichel: Behavioural equivalence — a unifying concept for initial and final specification methods. In: M. Arato, L. Varga (eds.): Math. Models in Comp. Systems, Proc. 3rd Hungarian Computer Science Conf., Budapest, January 1981, 27–39 (1981).Google Scholar
  18. [Sannella, Tarlecki 85]
    D.T. Sannella, A. Tarlecki: On observational equivalence and algebraic specification. In: H. Ehrig, C. Floyd, M. Nivat, J. Thatcher (eds.): Proc. TAPSOFT 85, Joint Conf. on Theory and Practice of Software Development, Berlin, March 1985. Springer Lecture Notes in Computer Science 185, 308–322 (1985).Google Scholar
  19. [Sannella, Tarlecki 87]
    D.T. Sannella, A. Tarlecki: Toward formal development of programs from algebraic specifications: implementations revisited. Proc. TAPSOFT 87, Joint Conf. on Theory and Practice of Software Development, Pisa, March 1986. Springer Lecture Notes in Computer Science 249, 96–110 (1987).Google Scholar
  20. [Sannella, Wirsing 82]
    D.T. Sannella, M. Wirsing: Implementation of parameterized specification: In: M. Nielsen, E.M. Schmidt (eds.): Proc. ICALP 82, 9th Coll. on Automata, Languages and Programming, Aarhus, July 1982. Springer Lecture Notes in Computer Science 140, 473–488 (1982).Google Scholar
  21. [Schoett 87]
    O. Schoett: Data abstraction and the correctness of modular programming. Ph.D. thesis, CST-42-87, Department of Comp. Science, University of Edinburgh (1987).Google Scholar
  22. [Selman 72]
    A. Selman: Completeness of calculii for axiomatically defined classes of algebras. Algebra universalis 2 Google Scholar
  23. [Wirsing 86]
    M. Wirsing: Structured algebraic specifications: a kernel language. Theoretical computer science 42, 123–249 (1986).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1989

Authors and Affiliations

  • Rolf Hennicker
    • 1
  1. 1.Fakultät für Mathematik und InformatikUniversität PassauPassau

Personalised recommendations