Skip to main content

An Exercise in Conditional Refinement

  • Chapter
  • First Online:
Prospects for Hardware Foundations

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

Abstract

This paper is an attempt to demonstrate the potential of conditional refinement in step-wise system development. In particular, we emphasise the ease with which conditional refinement allows boundedness constraints to be introduced in a specification based on unbounded resources. For example, a specification based on purely asynchronous communication can be conditionally refined into a specification using time-synchronous communication

The presentation is built around a small case-study: A step-wise design of a timed FIFO queue that is partly to be implemented in hardware and partly to be implemented in software. We first specify the external behaviour of the queue ignoring timing and synchronisation. This overall specification is then restated in a time-synchronous setting and thereafter refined into a composite specification consisting of three sub-specifications: A specification of a time-synchronous hardware queue, a specification of an asynchronous software queue, and a specification of an interface component managing the communication between the first two. We argue that the three overall specifications can be related by conditional refinement. By further steps of conditional refinement additional boundedness constraints are introduced. We explain how each step of conditional refinement can be formally verified in a compositional manner

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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. M. Abadi and L. Lamport. Conjoining specifications. ACM Transactions on Programming Languages and Systems, 17:507–533, 1995.

    Article  Google Scholar 

  2. J.R. Abrial. The B Book: Assigning Programs to Meaning. Cambridge University Press, 1996.

    Google Scholar 

  3. M. Broy. Compositional refinement of interactive systems. Technical Report 89, Digital, SRC, Palo Alto, 1992.

    Google Scholar 

  4. M. Broy and K. Stølen. Focus on system development. Book manuscript, June 1998.

    Google Scholar 

  5. K. Buchenrieder, editor. Third International Workshop on Hardware/Software Godesign. IEEE Computer Society Press, 1994.

    Google Scholar 

  6. R. Grosu and K. Stølen. A model for mobile point-to-point data-flow networks without channel sharing. In Proc. AMAST’96, Lecture Notes in Computer Science 1101, pages 504–519, 1996.

    Google Scholar 

  7. O. Haugen. Practitioners’ Verification of SDL Systems. PhD thesis, University of Oslo, 1997.

    Google Scholar 

  8. C. A. R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12:576–583, 1969.

    Article  MATH  Google Scholar 

  9. C. A. R. Hoare. Proof of correctness of data representations. Acta Informatica, 1:271–282, 1972.

    Article  MATH  Google Scholar 

  10. C. B. Jones. Systematic Software Development Using VDM. Prentice-Hall, 1986.

    Google Scholar 

  11. J. M. Spivey. Understanding Z, A Specification Language and its Formal Semantics. Volume 3 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1988.

    Google Scholar 

  12. K. St0len. Assumption/commitment rules for data-flow networks— with an emphasis on completeness. In Proc. ES OP’96, Lecture Notes in Computer Science 1058, pages 356–372, 1996.

    Google Scholar 

  13. K. Stølen. Refinement principles supporting the transition from asynchronous to synchronous communication. Science of Computer Programming, 26:255–272, 1996.

    Article  MathSciNet  Google Scholar 

  14. K. Stølen and P. Mohn. Measuring the effect of formalization. In Proc. SAM’98, Informatik Bericht Nr. 104, pages 183–190. Humboldt-Universität zu Berlin, 1998.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Stølen, K., Fuchs, M. (1998). An Exercise in Conditional Refinement. In: Möller, B., Tucker, J.V. (eds) Prospects for Hardware Foundations. Lecture Notes in Computer Science, vol 1546. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49254-2_12

Download citation

  • DOI: https://doi.org/10.1007/3-540-49254-2_12

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-49254-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics