Skip to main content

Inferential Techniques for Program Development

  • Conference paper
Program Transformation and Programming Environments

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

Abstract

The principles and potentials of transformational program development are outlined by a few simple examples. It is demonstrated that this programming technique may be used to produce software for various kinds of hardware architectures. Based on observations made with these examples, the theoretical fundamentals of a “transformational calculus” are developed. The considerations aim at the clarification of notions such as “transformation rule”, “applicability condition”, or “axiomatic rule”. Some brief comments on transformation systems and rule bases round off the discussion.

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: A Philosophy of Programming. A Course of three lectures given at the Imperial College of Science and Technology, London, October 1973. Abteilung Mathematik der TU München, Report Nr. 7318, 1973.

    Google Scholar 

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

    MATH  Google Scholar 

  4. 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 

  5. W. H. Bürge: Stream Processing Functions. IBM Journal of Research and Development, 19, 15–25, 1975.

    Article  Google Scholar 

  6. R. M. Burstall, J. Darlington: Some Transformations for Developing Recursive Programs. Proc. 1975 Int. Conf. on Reliable Software, Los Angeles, 1975, 465–472. Rev. vers.: J. ACM 24, 1, 44–67 (1977).

    Google Scholar 

  7. CIP Language Groip: Report on a Wide Spectrum Language for Program Specification and Development. Technische Universität München, Institut fur Informatik, TUM-I8104, May 1981.

    Google Scholar 

  8. J. B. Dennis: First Version of a Data Flow Procedure Language. Computation Structures Group Memo 93, MIT/LCS, 1973.

    Google Scholar 

  9. R. Gnatz, P. Pepper: fuse: An Example in Program Development. Technische Universität München, Institut fur Informatik, TUM-INFO-7711, 1977.

    Google Scholar 

  10. R. M. Keller: Denotational Models for Parallel Programs with Indeterminate Operators. In: E. J. Neuhold (ed.): Formal Descriptions of Programming Languages. Amsterdam: North-Holland 1978.

    Google Scholar 

  11. Z. Manna, R. Waldinger: Deductive Synthesis of the Unification Algorithm. Science of Computer Programming, 1, 5–48 (1981).

    Article  MathSciNet  MATH  Google Scholar 

  12. J. McCarthy: A Basis for a Mathematical Theory of Computation. In: P. Braffort, D. Hirschberg (eds.): Computer Programming and Formal Systems. Amsterdam: North-Holland 1963.

    Google Scholar 

  13. Partsch 84] H. Partsch: The CIP Transformation System. (In this volume)

    Google Scholar 

  14. P. Pepper: Specification Languages and Program Transformation. In: J. K. Reid (ed.): Relationship between Numerical Computation and Programming Languages. Proc. IF IP WG 2.5 Conf., Boulder 1981. Amsterdam: North-Holland 1982.

    Google Scholar 

  15. P. Pepper: Algebraic Techniques for Program Specification. (In this volume).

    Google Scholar 

  16. P. Pepper: A Positional Logic for Program Transformation and Program Verification. (To appear).

    Google Scholar 

  17. P. Pepper: Data Flow Machines Need Tail Recursion, Too. (Submitted for publication).

    Google Scholar 

  18. P. Pepper, H. Partsch: On the Feedback between Specifications and Implementations: An Example. Technische Universität München, Institut fur Informatik, TUM-I8011, 1980.

    Google Scholar 

  19. 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 für 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). Inferential Techniques for Program Development. 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_24

Download citation

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

  • 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