Advertisement

Proof systems for structured algebraic specifications: An overview

  • Rolf Hennicker
  • Martin Wirsing
Invited Lectures
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1279)

Abstract

In this paper an overview on proof systems for structured algebraic specifications is presented. As underlying language we choose an ASL-like kernel language which includes reachability and observability operators. Three different kinds of proof systems are studied. The first two approaches are non-compositional systems where the basic idea is to compute for any structured specification a flat unstructured set of axioms and rules which, combined with some standard proof systems for the underlying logic, may be used for deriving theorems of the specification. In the normal form approach of Bergstra, Hering and Klint, a flat set of axioms is constructed for each structured specification, whereas in the second approach not only individual axioms but also individual proof rules are taken into account. The drawback of the non-compositional proof systems is that they do not reflect the modular structure of specifications. Therefore we present also a structured proof system the derivations of which are performed in accordance with the modular structure of a specification.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [Bergstra et al. 90]
    J. A. Bergstra, J. Heering, P. Klint: Module algebra. Journal of the Association for Computer Machinery 37 (2), 335–372,1990.Google Scholar
  2. [Bidoit, Hennicker 961]
    M. Bidoit, R. Hennicker: Behavioural theories and the proof of behavioural properties. Theoretical Computer Science 165 (1), 3–55, 1996.CrossRefGoogle Scholar
  3. [Burstall 69]
    R. M. Burstall: Proving properties of programs by structural induction. Computer Journal 12, 41–48, 1969.Google Scholar
  4. [Burstall, Goguen 80]
    R. M. Burstall, J. A. Goguen: The semantics of CLEAR, a specification language. In: Proc. Advanced Course on Abstract Software Specifications, Springer Lecture Notes in Computer Science 86, 292–332, 1980.Google Scholar
  5. [Cengarle 95]
    M. V. Cengarle: Formal specifications with higher-order parameterization. Dissertation, Institut für Informatik, Universität München, Aachen, Verlag Shaker, 1995.Google Scholar
  6. [Dershowitz, Jouannaud 90]
    N. Dershowitz, J. P. Jouannaud: Rewriting systems. In: J. van Leeuwen (ed.): Handbook of Theoretical Computer Science, Vol. B, Amsterdam, North-Holland, 1990.Google Scholar
  7. [Ehrig, Mahr 85]
    H. Ehrig, B. Mahr: Fundamentals of Algebraic Specification 1, EATCS Monographs on Theoretical Computer Science 6, Springer, 1985.Google Scholar
  8. [Farrés 92]
    J. Farrés-Casals. Verification in ASL and related specification languages. Ph.D. thesis, Report CST-92-92, University of Edinburgh, 1992.Google Scholar
  9. [Harper et al. 89]
    R. Harper, D. T. Sannella, A. Tarlecki: Structure and representation in LF. Proc. 4th IEEE Symp. on Logic in Computer Science, Asilomar, 226–237, 1989.Google Scholar
  10. [Harper et al. 94]
    R. Harper, D. T. Sannella, A. Tarlecki: Structured theory presentations and logic representations. Annals of Pure and Applied Logic 67, 113–160, 1994.CrossRefGoogle Scholar
  11. [Hennicker 97]
    R. Hennicker: Structured specifications with behavioural operators: semantics, proof methods and applications. Habilitation thesis, Institut für Informatik, Universität München, 1997.Google Scholar
  12. [Hennicker, Wirsing, Bidoit 97]
    R. Hennicker, M. Wirsing, M. Bidoit: Proof systems for structured specifications with observability operators. Theoretical Computer Science 173, 393–443, 1997.CrossRefGoogle Scholar
  13. [Keisler 71 ]
    H. J. Keisler. Model theory for infinitary logic. North-Holland, 1971.Google Scholar
  14. [Kreisel, Krivine 67]
    G. Kreisel, J. L. Krivine: Eléments de Logique Mathematique. Dunod (Paris), 1967.Google Scholar
  15. [Maibaum et al. 85]
    T. S. E. Maibaum, P. A. S. Veloso, M. R. Sadler: A theory of abstract data types for program development: Bridging the gap? In: H. Ehrig, C. Floyd, M. Nivat, J. Thatcher (eds.): Proc. TAPSOFT '85, Joint Conference on Theory and Practice of Software Development, Springer Lecture Notes in Computer Science 186, 214–230, 1985.Google Scholar
  16. [Malcolm, Goguen 94]
    G. Malcolm, J. A. Goguen: Proving correctness of refinement and implementation. Technical Monograph PRG-114, Oxford University Computing Laboratory, 1994.Google Scholar
  17. [Mendelson 87]
    E. Mendelson: Introduction to Mathematical Logic. Mathematics Series. Wadswort & Brooks/Cole, 3rd edition, 1987.Google Scholar
  18. [Mosses 97]
    P. D. Mosses: CoFI: The common framework initiative for algebraic specification and development. In: Proc. TAPSOFT '97, Theory and Practice of Software Development, Springer Lecture Notes in Computer Science 1214, 115–137, 1997.Google Scholar
  19. [Peterreins 96]
    H. Peterreins: A natural-deduction-like calculus for structured specifications. Dissertation, Institut für Informatik, Universität München, 1996.Google Scholar
  20. [Sannella, Burstall 83]
    D. T. Sannella, R. M. Burstall: Structured theories in LCF. In: G. Ausiello, M. Protasi (eds.): 8th CAAP, L'Aquila, Springer Lecture Notes in Computer Science 159, 377–391, 1983.Google Scholar
  21. [Sannella, Tarlecki 89]
    D. T. Sannella, A. Tarlecki: Toward formal development of ML programs: foundations and methodology. In: J. Diaz, F. Orejas (eds.): Proc. TAPSOFT '89, Springer Lecture Notes in Computer Science 352,375–389,1989.Google Scholar
  22. [Sannella, Wirsing 83]
    D. T. Sannella, M. Wirsing. A kernel language for algebraic specifications and implementation. In: M. Karpinski (ed.): Proc. FCT'83, Springer Lecture Notes in Computer Science 158, 413–427, 1983.Google Scholar
  23. [Schoett 90]
    O. Schoett: Behavioural correctness of data representation. Science of Computer Programming 14, 43–57, 1990.CrossRefGoogle Scholar
  24. [Wirsing 90]
    M. Wirsing: Algebraic specification. In: J. van Leeuwen (ed.): Handbook of Theoretical Computer Science, Amsterdam, North-Holland, 675–788, 1990.Google Scholar
  25. [Wirsing 91]
    M. Wirsing: Structured specifications: syntax, semantics and proof calculus. In: F. L. Bauer, W. Brauer, H. Schwichtenberg (eds.): Logic and Algebra of Specification, International Summer School Marktoberdorf, 1991, Springer, 411–442, 1993.Google Scholar
  26. [Wirsing 95]
    M. Wirsing: Algebraic specification languages: an overview. In: E. Astesiano, G. Reggio, A. Tarlecki (eds.): Recent Trends in Data Type Specification. Proc. 10th Workshop on Specification of Abstract Data Types. Springer Lecture Notes in Computer Science 906, 81–115, 1995. *** DIRECT SUPPORT *** A0008123 00002Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Rolf Hennicker
    • 1
  • Martin Wirsing
    • 1
  1. 1.Institut für InformatikLudwig-Maximilians-Universität MünchenMünchenGermany

Personalised recommendations