Skip to main content

Compound algebraic implementations: An approach to stepwise refinement of software systems

  • Communications
  • Conference paper
  • First Online:
Mathematical Foundations of Computer Science 1980 (MFCS 1980)

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

Abstract

A precise mathematical approach to stepwise refinement of software systems is given within the framework of algebraic specifications. Since our new concept for the implementation of abstract data types — recently introduced in another paper — corresponds to a single refinement step, the composition problem for algebraic implementations is studied in this paper. It is shown that in general algebraic implementations are not closed under composition unless we have the special case of “persistent implementations”. For other types of implementations sufficient consistency conditions are given to achieve closure under composition. These results can be extended to compound algebraic implementations which are syntactically defined to be sequences of (weak) implementations according to the idea of stepwise refinement of software systems.

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.

5. References

  1. Burstall, R.M.-Goguen, J.A.: Putting Theories together to Make Specifications, Proc. Int.Conf. Artificial Intelligence, Boston, 1977

    Google Scholar 

  2. —: CAT, a System for the Structured Elaboration of Correct Programs from Structured Specifications, Preliminary Draft, 1979

    Google Scholar 

  3. —: Semantics of CLEAR, a specification language, Proc. 1979 Copenhagen Winter School on Abstract Software Specif., 1980

    Google Scholar 

  4. Dijkstra, E.W.: Notes on Structured Programming, in: Structured Programming, C.A.R. Hoare, Ed., Academic Press, New York, 1972

    Google Scholar 

  5. Ehrich, H.D.: Extensions and Implementations of Abstract Data Type Specifications, Proc.Conf.MFCS'78,Zakopane,Springer Lect. Not. in Comp. Sci. 64, 1978, 155–163

    Google Scholar 

  6. —: On the Theory of Specification, Implementation and Parametrization of Abstract Data Types, Forschungsbericht Univ. Dortmund, 1978

    Google Scholar 

  7. Ehrig, H.-Kreowski,H.-J.-Mahr,B.-Padawitz,P.: Compound Algebraic Implementations: An Approach to Stepwise Refinement of Software Systems (long version), Forschungsbericht Nr. 80-04, TU Berlin, FB 20, 1980

    Google Scholar 

  8. Ehrig, H.-Kreowski, H.-J.-Padawitz, P.: Stepwise Specification and Implementation of Abstract Data Types, Proc. ICALP'78, Udine, Springer Lect. Notes in Comp. Sci. 62, 1978, 205–226.

    Google Scholar 

  9. —: Algebraic Implementation of Abstract Data Types: Concept, Syntax, Semantics and Correctness, Forschungsbericht Nr. 79-23, TU Berlin, FB 20, 1979, to appear in Proc. ICALP'80.

    Google Scholar 

  10. Ehrig, H.-Kreowski, H.-J.-Thatcher, J.-Wagner,E.-Wright,J.: Parameterized Specifications in Algebraic Specification Languages, to appear in Proc. ICALP'80

    Google Scholar 

  11. Ehrig, H.-Kreowski, H.-J.-Weber, H.: Algebraic Specification Schemes for Data Base Systems, Proc.4. Int.Conf. on Very Large Data Bases, Berlin, 1978

    Google Scholar 

  12. Ehrig, H. — Mahr, B.: Complexity of Implementations on the Level of Algebraic Specifications, Proc. 12.SIGACT Symp. on Theory of Computing, Los Angeles, 1980

    Google Scholar 

  13. Goguen, J.A. — Nournai, F.: Some Algebraic Techniques for Proving Correctness of Data Type Implementation, Extended Abstract, Comp. Sci. Dept., UCLA, Los Angeles, 1978

    Google Scholar 

  14. Goguen, J.A.-Thatcher, J.W.-Wagner, E.G.: An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types, in: Current Trends in Programming Methodology, IV: Data Structuring (R. Yeh, Ed.), Prentice Hall, New Jersey, 1978, 80–144

    Google Scholar 

  15. Guttag, J.V.: Abstract Data Types and the Development of Data Structures, Supplement to Proc. Conf. on Data Abstraction, Definition, and Structure, SIGPLAN Notices 8, March 1976

    Google Scholar 

  16. Guttag, J.V.-Horowitz, E.-Musser, D.R.: Abstract Data Types and Software Validation, Comm. ACM, Vol. 21, No. 12, 1978, 1048–1063

    Google Scholar 

  17. Lehmann, D.H.-Smyth, M.B.: Data Types, Univ. of Warwick, Dept. of Comp. Sci., Report No. 19, 1977, and Proc. 18th IEEE Symp. on Found. of Computing, Providence, R.I., Nov. 77, 7–12

    Google Scholar 

  18. Thatcher, J.W.-Wagner, E.G.-Wright, J.B.: Data Type Specification: Parameterization and the Power of Specification Techniques, Proc. 10. SIGACT Symp. on Theory of Computing, San Diego, 1978, 119–132; revised version in IBM Research Report RC 7757, 1979

    Google Scholar 

  19. Wand, M.: Final Algebra Semantics and Data Type Extensions, Indiana Univ., Comp. Sci. Dept., Technical Report No. 65, 1977

    Google Scholar 

  20. Wirth, N.: Program Development by Stepwise Refinement, Comm. ACM, Vol. 14, No.4, 1971, 221–227

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

P. Dembiński

Rights and permissions

Reprints and permissions

Copyright information

© 1980 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ehrig, H., Kreowski, H.J., Mahr, B., Padawitz, P. (1980). Compound algebraic implementations: An approach to stepwise refinement of software systems. In: Dembiński, P. (eds) Mathematical Foundations of Computer Science 1980. MFCS 1980. Lecture Notes in Computer Science, vol 88. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0022508

Download citation

  • DOI: https://doi.org/10.1007/BFb0022508

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-10027-0

  • Online ISBN: 978-3-540-38194-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics