Skip to main content

Proving correctness w.r.t. specifications with hidden parts

  • Conference paper
  • First Online:
Algebraic and Logic Programming (ALP 1990)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 463))

Included in the following conference series:

Abstract

The task of proving the correctness of an implementation w.r.t. a formal specification is sometimes complicated by the use of auxiliary (hidden) functions and sorts within the specification which are needed for the specification but are not meant to be implemented.

Auxiliary sorts and functions are the normal way to express requirements in abstract model specifications. Algebraic specifications became popular as a way to define the elements of a system without representing them in terms of more primitive concepts, avoiding the definition of any extra structure. However, it has been shown that hidden functions are in general necessary for specifying computable functions [Maj 77, TWW 79].

In this paper we analyze general proving techniques for specifications with hidden parts and, in particular, an strategy which is complete when some side conditions are met.

Supported by a grant from the Ministerio de Educación y Ciencia.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R.Breu. A normal form for structured algebraic specifications. Internal report MIP-8917, Universität Pasau, 1989.

    Google Scholar 

  2. J.A. Bergstra, et al. On the power of algebraic specifications. Proc. 10th Symp. on Mathematical Foundations of Computer Science. LNCS 118, Springer 1981, p. 193–204.

    Google Scholar 

  3. J.A.Bergstra, J.Heering, P.Klint. Module algebra. Centrum voor Wiskunde en Informatica, Report CS-R8617, 1986.

    Google Scholar 

  4. H.Ehrig, B.Mahr. Fundamentals of algebraic specification 1: Equations and initial semantics. Springer, 1985.

    Google Scholar 

  5. J. Farrés-Casals. Proving correctness of constructor implementations. Proc. 14th Symp. on Mathematical Foundations of Computer Science, Porabka-Kozubnik. LNCS 379, p. 225–235, 1989. Extended version in LFCS Report Series 89–72, University of Edinburgh, 1989.

    Google Scholar 

  6. J.Farrés-Casals. Verification in ASL and related specification languages. Draft of forth-coming Ph.D. thesis, University of Edinburgh.

    Google Scholar 

  7. J. Goguen, R. Burstall. Introducing Institutions. Proc. Workshop on Logic of Programs. LNCS 140. Springer 1984. p. 221–256.

    Google Scholar 

  8. M.E. Majster. Limits of the algebraic specifications of abstract data types. ACM-Sigplan Notices 12 (1977), p.37–42.

    Google Scholar 

  9. D. Sannella, A. Tarlecki. Specifications in an arbitrary institution. Information and Computation 76 (1988), p. 165–210.

    Google Scholar 

  10. D. Sannella, A. Tarlecki. Towards formal development of programs from algebraic specifications: Implementations revisited. Acta Informatica 25 (1988), p. 233–281.

    Google Scholar 

  11. D. Sannella, M. Wirsing. A kernel language for algebraic specification and implementation. Proc. Intl. Conf. on Foundations of Computation Theory, Borgholm, Sweden. Springer LNCS 158, p. 413–427, 1983.

    Google Scholar 

  12. A. Tarlecki. Bits and pieces of the theory of institutions. Proc. Intl. Workshop on Category Theory and Computer Programming, Guildford 1985, eds. D. Pitt, S. Abramsky, A. Poigné and D. Rydeheard, Springer LNCS 240, p.334–363, 1986.

    Google Scholar 

  13. J.W. Thatcher, E.G. Wagner, J.B. Wright. Data type specification: Parameterization and the power of specification techniques. In SIGACT 10th Annual Symp. on the Theory of Computation, 1979. Also in, ACM TOPLAS 4, p. 711–732, 1982.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hélène Kirchner Wolfgang Wechler

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Farrés-Casals, J. (1990). Proving correctness w.r.t. specifications with hidden parts. In: Kirchner, H., Wechler, W. (eds) Algebraic and Logic Programming. ALP 1990. Lecture Notes in Computer Science, vol 463. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53162-9_28

Download citation

  • DOI: https://doi.org/10.1007/3-540-53162-9_28

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-53162-3

  • Online ISBN: 978-3-540-46738-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics