Formal Aspects of Computing

, Volume 7, Issue 3, pp 329–347 | Cite as

Using units of measurement in formal specifications

  • Ian J. Hayes
  • Brendan P. Mahony
Article

Abstract

In the physical sciences and engineering, units of measurement provide a valuable aid to both the exposition and comprehension of physical systems. In addition, they provide an error checking facility comparable to static type checking commonly found with programming languages. It is argued that units of measurement can provide similar benefits in the specification and design of software and computer systems.

To demonstrate this, we present an extension of the Z specification notation with support for the incorporation of units in specifications and demonstrate the feasibility of static dimensional analysis of the resulting language.

Keywords

Formal specification Units of measurement Dimensional analysis Type-checking Z specification language 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [Bri31]
    Bridgman, P.W.:Dimensional Analysis. Yale University Press, revised edition, 1931.Google Scholar
  2. [DeG90]
    Delisle, N. and Garlan, D.: A formal specification of an oscilloscope.IEEE Software, 7(5):29–36, September 1990.CrossRefGoogle Scholar
  3. [Ell66]
    Ellis, B.:Basic Concepts in Measurement. Cambridge University Press, 1966.Google Scholar
  4. [GoW88]
    Goguen, J. and Winkler, T.: Introducing OBJ3. Technical Report SRI-CSL-88-9, SRI International, Computer Science Lab, August 1988.Google Scholar
  5. [Hay89]
    Hayes, I.J.: A generalisation of bags in Z. In J.E. Nicholls, editor,Proceedings of the Z User Meeting, Workshops in Computing, pages 113–127, Springer-Verlag, December 1989.Google Scholar
  6. [Hay90]
    Hayes, I.J.: Specifying physical limitations: A case study of an oscilloscope. Technical Report 167, Department of Computer Science, University of Queensland, July 1990.Google Scholar
  7. [Hay93]
    Hayes, I.J., editor:Specification Case Studies. Prentice Hall International, second edition, 1993.Google Scholar
  8. [ISO79]
    International Organisation for Standardization, Geneva.Units of Measurement: handbook on international standards for units of measurement, 1979.Google Scholar
  9. [Jon90]
    Jones, C.B.:Systematic Software Development Using VDM. Prentice Hall International, second edition, 1990.Google Scholar
  10. [MaH92]
    Mahony, B.P. and Hayes, I.J.: A case-study in timed refinement: A mine pump.IEEE Transactions on Software Engineering, 18(9), September 1992.Google Scholar
  11. [MMH93]
    Mahony, B.P., Millerchip, C. and Hayes, I.J.: A boiler control system: An overview. InInternational Invitational Workshop — Design and Review of Software Controlled Safety-Related Systems, Ottawa, June 1993.Google Scholar
  12. [Spi88]
    Spivey, J.M.:Understanding Z: A Specification Language and its Formal Semantics, volume 3 ofCambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1988.Google Scholar
  13. [Spi92]
    Spivey, J.M.:The Z Notation: A Reference Manual. Prentic Hall International, second edition, 1992.Google Scholar
  14. [Val93]
    Valentine, S.: Putting numbers into the mathematical toolkit. In J.P. Bowen and J.E. Nicholls, editors,Z User Workshop: Proceedings of the Seventh Annual Z User Meeting, London, December 1992, Workshops in Computing, pages 9–36. Springer-Verlag, 1993.Google Scholar

Copyright information

© BCS 1995

Authors and Affiliations

  • Ian J. Hayes
    • 1
  • Brendan P. Mahony
    • 1
  1. 1.Department of Computer ScienceUniversity of QueenslandBrisbaneAustralia

Personalised recommendations