Proving the correctness of behavioural implementations

  • Michel Bidoit
  • Rolf Hennicker
Refereed Contributions Algebraic and Logical Foundations
Part of the Lecture Notes in Computer Science book series (LNCS, volume 936)


We introduce a concept of behavioural implementation for algebraic specifications which is based on an indistinguishability relation (called behavioural equality). The central objective of this work is the investigation of proof rules that first allow us to establish the correctness of behavioural implementations in a modular way and moreover are practicable enough to induce proof obligations that can be discharged with existing theorem provers. Our proof technique can also be applied for proving abstractor implementations in the sense of Sannella and Tarlecki.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [BB 91]
    G. Bernot, M. Bidoit: Proving the correctness of algebraically specified software: modularity and observability issues. Proc. AMAST '91, 216–242, Springer-Verlag Workshops in Computing Series, 1992.Google Scholar
  2. [BH 94]
    M. Bidoit, R. Hennicker: Proving ehavioural theorems with standard first-order logic. In Proc. ALP '94, Fourth International Conference on Algebraic and Logic Programming, Springer Lecture Notes in Computer Science 850,41–58,1994.Google Scholar
  3. [BH 95a]
    M. Bidoit, R. Hennicker. Behavioural theories and the proof of behavioural properties. Report LIENS-95-5, Ecole Normale Supérieure, 1995.Google Scholar
  4. [BH 95b]
    M. Bidoit, R. Hennicker: Proving the correctness of behavioural implementations. Technical Report, Universität München, 1995.Google Scholar
  5. [BHW 94]
    M. Bidoit, R. Hennicker, M. Wirsing: Behavioural and abstractor specifications. Report LIENS-94-10, Ecole Normale Supérieure, 1994. Revised version to appear in Science of Computer Programming.Google Scholar
  6. [EM 85]
    H. Ehrig, B. Mahr: Fundamentals of algebraic specification 1, EATCS Monographs on Theoretical Computer Science 6, Springer, 1985.Google Scholar
  7. [GH 93]
    J. Guttag, J. Horning: Larch: Languages and Tools for Formal Specification. Texts and Monographs in Computer Science, Springer, 1993.Google Scholar
  8. [GM 82]
    J. A. Goguen, J. Meseguer: Universal realization, persistent interconnection and implementation of abstract modules. In Proc. ICALP '82, Springer Lecture Notes in Computer Science 140, 265–281,1982.Google Scholar
  9. [H 72]
    C. A. R. Hoare: Proofs of correctness of data representations. Acta Informatica 1, 271–281,1972.Google Scholar
  10. [KK 67]
    G. Kreisel, J. L. Krivine: Eléments de Logique Mathematique. Dunod (Paris), 1967.Google Scholar
  11. [NO 88]
    P. Nivela, F. Orejas: Initial behaviour semantics for algebraic specifications. In: D. T. Sannella, A. Tarlecki (eds.): Proc. 5th Workshop on Algebraic Specifications of Abstract Data Types, Springer Lecture Notes in Computer Science 332, 184–207, 1988.Google Scholar
  12. [R 87]
    H. Reichel: Initial computability, algebraic specifications, and partial algebras. International Series of Monographs in Computer Science No. 2, Oxford: Clarendon Press, 1987.Google Scholar
  13. [Sch 87]
    O. Schoett: Data abstraction and correctness of modular programming. Ph. D. thesis, CST-42-87, University of Edinburgh, 1987.Google Scholar
  14. [ST 88]
    D. T. Sannella, A. Tarlecki: Toward formal development of programs from algebraic specifications: implementation revisited. Acta Informatica 25, 233–281, 1988.Google Scholar
  15. [W 90]
    M. Wirsing: Algebraic specification. In: J. van Leeuwen (ed.): Handbook of Theoretical Computer Science, 675–788, Elsevier Science Publishers B. V., 1990.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Michel Bidoit
    • 1
  • Rolf Hennicker
    • 2
  1. 1.LIENS, CNRS & Ecole Normale SupérieureParis CedexFrance
  2. 2.Institut für InformatikLudwig-Maximilians-Universität MünchenMünchenGermany

Personalised recommendations