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
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Abadi and L. Lamport. Conjoining specifications. ACM Transactions on Programming Languages and Systems, 17:507–533, 1995.
J.R. Abrial. The B Book: Assigning Programs to Meaning. Cambridge University Press, 1996.
M. Broy. Compositional refinement of interactive systems. Technical Report 89, Digital, SRC, Palo Alto, 1992.
M. Broy and K. Stølen. Focus on system development. Book manuscript, June 1998.
K. Buchenrieder, editor. Third International Workshop on Hardware/Software Godesign. IEEE Computer Society Press, 1994.
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.
O. Haugen. Practitioners’ Verification of SDL Systems. PhD thesis, University of Oslo, 1997.
C. A. R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12:576–583, 1969.
C. A. R. Hoare. Proof of correctness of data representations. Acta Informatica, 1:271–282, 1972.
C. B. Jones. Systematic Software Development Using VDM. Prentice-Hall, 1986.
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.
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.
K. Stølen. Refinement principles supporting the transition from asynchronous to synchronous communication. Science of Computer Programming, 26:255–272, 1996.
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.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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