Skip to main content

Algebraic Techniques for Program Specification

  • Conference paper
Program Transformation and Programming Environments

Part of the book series: NATO ASI Series ((NATO ASI F,volume 8))

Abstract

Algebraic methods are presented that allow the specification of the functional behaviour of software systems together with certain constraints on admissible implementations. For the definition of basic objects and operations we employ “algebraic types”; concurrency is added by “streams” and stream-processing functions.

Some techniques are illustrated that serve to transform given specifications into new specifications that conform better to the needs of the software system under development. This may concern the preparation of later implementations as well as the addition of hardware constraints.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. A. Goguen, J. W. Thatcher, E. G. Wagner: Initial algebra semantics and continuous algebras. Journal ACM 24, 68–95 (1977)

    Article  MathSciNet  MATH  Google Scholar 

  2. F. L. Bauer, H. Wossner: Algorithmic Language and Program Development. Berlin-Heidelberg-New York: Springer 1982.

    MATH  Google Scholar 

  3. M. Broy: Fixed Point Theory for Communication and Concurrency. In: D. Bjorner (ed.): IF IP TC2 Working Conference on “Formal Description of Programming Concepts II”, Garmisch-Partenkirchen, June 1982, Amsterdam - New York - Oxford: North-Holland Publishing Company 1983.

    Google Scholar 

  4. M. Broy: Algebraic Methods for Program Construction: The Project CIP. (In this volume)

    Google Scholar 

  5. M. Broy, B. Moller, P. Pepper, M. Wirsing: Algebraic Implementations Preserve Program Correctness. (To appear in Science of Computer Programming).

    Google Scholar 

  6. H.-D. Ehrich: On the Theory of Specification, Implementation, and Parametrization of Abstract Data Types. J. ACM 29, 1, 206–227 (1982).

    Article  MathSciNet  MATH  Google Scholar 

  7. J. A. Goguen: Abstract Errors for Abstract Data Types. Proc. IF IP Working Conference on Formal Description of Programming Concepts, St. Andrews, 1977.

    Google Scholar 

  8. J. V. Guttag, J. J. Horning: The Algebraic Specification of Abstract Data Types. Acta Informatica 10, 27–52 (1978).

    Article  MathSciNet  MATH  Google Scholar 

  9. C. A. R. Hoare: Proof of Correctness of Data Representations. Acta Informatica, 1, 4, 271–281 (1972).

    Article  MATH  Google Scholar 

  10. H. Partsch, P. Pepper: Abstract Data Types as a Tool for Requirement Engineering. In: D. Kronig, G. Hommel (eds.): Proc. GI-Arbeitstagung Friedrichshafen, Oct. 1983, Berlin-Heidelberg-New York: Springer, 1983.

    Google Scholar 

  11. P. Pepper: Inferential Techniques for Program Development. (In this volume).

    Google Scholar 

  12. J. D. Ullman: Principles of Database Systems. London: Pitman, 1980.

    MATH  Google Scholar 

  13. M. Wirsing, P. Pepper, H. Partsch, W. Dosch, M. Broy: On Hierarchies of Abstract Data Types. Acta Informatica 20, 1–33 (1983). Also: Technische Universität München, Institut fur Informatik, TUM-I8007, 1980. (Rev. version: TUM-I8303)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1984 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pepper, P. (1984). Algebraic Techniques for Program Specification. In: Pepper, P. (eds) Program Transformation and Programming Environments. NATO ASI Series, vol 8. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-46490-4_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-46490-4_20

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-46492-8

  • Online ISBN: 978-3-642-46490-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics