Skip to main content

Constructive Refinement of First Order Specifications

  • Conference paper
5th Refinement Workshop

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

A refinement calculus is a formal system that enables a program to be derived from its specification in such a way that the program is correct by construction. A number of workers have developed such systems which are mainly based on a predicate transformer semantics. In this paper an alternative system is proposed, which is based instead on predicates in first order logic. This is a simpler framework, and its strengths and weaknesses are explored. In addition, the paper introduces a simplified form of the loop construction rule whose only side-conditions are purely syntactic.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

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.

Similar content being viewed by others

References

  1. On the Correctness of Refinement Steps in Program Development R J R Back. PhD Thesis A-1978–4, Department of Computer Science, University of Helsinki, 1978.

    Google Scholar 

  2. Duality in Specification Languages: A Lattice-theoretical Approach R J R Back, J von Wright. Acta Informatica, vol 27, pages 583–625, 1990.

    Google Scholar 

  3. The Munich Project CIP (vol I) F L Bauer et al. Springer Verlag Lecture Notes in Computer Science 183, 1985.

    Google Scholar 

  4. The Munich Project CIP (vol H) F L Bauer et al. Springer Verlag Lecture Notes in Computer Science 292, 1987.

    Google Scholar 

  5. Simple Fixpoint Argument Without the Restriction to Continuity E W Dijkstra, A J M van Gasteren. Acta Informatica, vol 23, pages 1–7, 1986.

    Google Scholar 

  6. Correctness-Oriented Approaches to Software Development S Gilmore. PhD Thesis CST-76–91, Department of Computer Science, University of Edinburgh, April 1991.

    Google Scholar 

  7. Completeness of Many-Sorted Equational Logic J A Goguen and J Meseguer. SIG PLAN Notices, vol 16, no 7, pages 24–32, 1981.

    Google Scholar 

  8. Predicative Programming Parts I and II Communications of the ACM, vol 27, pages 134–151, 1984.

    Google Scholar 

  9. Predicative Methodology E C R Hehner, L E Gupta, A J Malton. Acta Informat.ica, vol 23, pages 487–505, 1986.

    Google Scholar 

  10. A Practical Theory of Programming (draft) E C R Hehner. De- partment of Computer Science, University of Toronto, July 1991.

    Google Scholar 

  11. Systematic Software Development Using VDM (second edition) C B Jones. Prentice Hall, 1990.

    Google Scholar 

  12. Z and the Refinement Calculus S King. Report PRG 79, Programming Research Group, Oxford, February 1990.

    Google Scholar 

  13. Introduction to Mathematical Logic (third edition). E Mendelson. Wadsworth Brooks, 1987.

    Google Scholar 

  14. Data Refinement using Miracles C C Morgan. Information Processing Letters, vol 26, no 5, pages 243–246, January 1988

    Google Scholar 

  15. Programming from Specifications C C Morgan. Prentice Hall 1990

    Google Scholar 

  16. A Theoretical Basic for Stepwise Refinement and the Programming Calculus J M Morris Science of Computer Programming, vol 9, no 3 pages 287–306, 1987.

    Google Scholar 

  17. Machine Support for Z: the zedB tool D Nielson. Z User Workshop (Oxford 90), ed J E Nicholls, pages 105–128, Springer-Verlag, 1991.

    Google Scholar 

  18. Specification and Transformation of Programs H A Partsch Springer Verlag, 1990.

    Google Scholar 

  19. An. Introduction to Formal Specification and Z B Potter, J Sinclair, D Till Prentice Hall, 1991.

    Google Scholar 

  20. Eliminating the Substitution Axiom from UNITY Logic B A Sanders. Formal Aspects of Computing, vol 3, no 2, pages 189–205, 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag London

About this paper

Cite this paper

Gravell, A. (1992). Constructive Refinement of First Order Specifications. In: Jones, C.B., Shaw, R.C., Denvir, T. (eds) 5th Refinement Workshop. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3550-0_10

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3550-0_10

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19752-2

  • Online ISBN: 978-1-4471-3550-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics