Skip to main content

The Specification and Proof of an EXPRESS to SQL “Compiler”

  • Chapter
Proof in VDM: Case Studies

Summary

EXPRESS and SQL are two ISO standard languages for modelling data. However, EXPRESS is abstract in the sense that it is intended to be used to define application-oriented data types, whereas SQL is concrete in that all data must be modelled using relation tables. In this chapter, we specify and prove some properties of an EXPRESS to SQL “compiler” which implements the ISO standard STEP Data Access Interface (SDAI) for the storage and retreval of EXPRESS instance data.

The “compiler” is formalised as a refinement: an abstract model of the EXPRESS database is given which defines operations for the storage and retreval based on a model of the EXPRESS data types on VDM; then a specification of a relational database is given as a basis for a refinement of the EXPRESS database; and then concrete versions of the operations are defined on top of the relational model. These operations are, in effect, the semantic functions of the compiler. The equivalence of the abstract and concrete specifications is the justification of the correctness of the compiler.

We outline the specifications and prove an obligation concerning the refinement. A number of issues concerning modelling style arise in comparing the EXPRESS data types with those of VDM and concerning the structuring of the development to facilitate proofs. The specification was developed using the IFAD VDM-SL Toolbox and the proofs constructed by hand.

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.

Bibliography

  1. STEP Overview, ISO 10303, Part 1.

    Google Scholar 

  2. SDAI Specification, ISO 10303, Part 22. TC184/SC4/WG7.

    Google Scholar 

  3. ibid. Section 6 to 8.

    Google Scholar 

  4. Semantic Unification Meta Model. ISO 10303.

    Google Scholar 

  5. A Formal Semantics For SQL. Meira, S., Motz, M. and Tepedino, F. Intern. J. Computer Math. Vol. 34. pp. 43–63 (1990)

    Article  MATH  Google Scholar 

  6. Schenck and Wilson. Information Modelling the EXPRESS way, Oxford University Press, 1995.

    Google Scholar 

  7. ibid. Appendix E.

    Google Scholar 

  8. Analysis of the STEP Standard Data Access Interface Using Formal Methods. Botting, R.M. and Godwin, A.N. Computer Standards and Interfaces. 17 (56), pp. 437–456, North Holland, 1995.

    Article  Google Scholar 

  9. Bicarregui J.C., An evaluation of methods for generating SQL from EXPRESS. ESPRIT 6212, Processbase, Document RAL/6212/TNR/016/4. January 1995.

    Google Scholar 

  10. Bicarregui, Ritchie and Haughton, Experiences in Using Abstract Machine Notation in a GKS Case Study. FME’94: Industrial Benefit of Formal Methods, LNCS 873, Springer-Verlag, 1994.

    Google Scholar 

  11. Vienna Development Method - Specification Language, Draft International Standard, ISO/IEC DIS 13817–1, 1995(E).

    Google Scholar 

  12. Bicarregui, Dick and Woods, Supporting the length of formal development: form diagrams to VDM to B to C, 7th International Conference on Putting into Practice Methods and Tools for Information System Design. IBSN: 2906082–19–9 October 1995.

    Google Scholar 

  13. The CAESAR STEP Toolkit User manual (Version 1.3). Caesar Systems Limited, June 1992.

    Google Scholar 

  14. The EXPRESS Language Reference Manual, ISO IS 10303–11: 1994(E).

    Google Scholar 

  15. Translating Express to SQL: A User Guide. Morris, K.C., NISTIR 90–4341, National Institute of Standards and Technology (NIST), Gaithersburg MD., 20899. USA.

    Google Scholar 

  16. STEP Relational Interface, Raghaven, V., Hardwick, M., Rensselaer Polytechnic Institute, Computer Science Masters Project. (1993)

    Google Scholar 

  17. Thomas D, Implementing the emerging ISO Standard STEP into a relational database, BNCOD-8, Proceedings of the 8th British national Conference on Databases.

    Google Scholar 

  18. P. Clement, Internal Report on the EXPRESS to SQL Compiler. Loughborough University of Technology Technical Report. 1991.

    Google Scholar 

  19. The IFAD VDM-SL Toolbox, in Woodcock and Larsen (Eds.). FME’93: Industrial Strength Formal Methods. Springer-Verlag, 1993.

    Google Scholar 

  20. C.B. Jones C.D. Allen, D.N. Chapman. A formal definition of algol 60. Technical Report 12. 105, IBM Laboratory, Hursley, Aug. 1972.

    Google Scholar 

  21. D. Andrews and W. Henhapl. Pascal. In Formal Specification and Software Development, chapter 7, pages 175–252. Prentice-Hall, 1982.

    Google Scholar 

  22. S.P.A. Lau, Derek Andrews, Anjula Garg and J.R. Pitchers. The Formal Definition of Modula-2 and Its Associated Interpreter. In L. Marshall R.Bloomfield and R. Jones, editors, VDM ’88 VDM–The Way Ahead, pages 167–177. VDM-Europe, Springer-Verlag, September 1988.

    Google Scholar 

  23. W.Henhapl C.B.Jones P.Lucas H.Bekic, D.Bjorner. A formal definition of a plli subset. Technical Report 25. 139, IBM Laboratory, Vienna, December 1974.

    Google Scholar 

  24. O. Oest (eds.) D. Bjorner. Towards a Formal Description of Ada, volume 98 of Lecture Notes in Computer Science. Springer-Verlag, 1980.

    Google Scholar 

  25. J.F. Nilsson. Formal Vienna-Definition-Method models of Prolog. In J.A. Campbell, editor, Implementations of PROLOG, pages 281–308. Ellis Horwood Series: Artificial Intelligence, 1984.

    Google Scholar 

Download references

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag London Limited

About this chapter

Cite this chapter

Bicarregui, J., Matthews, B. (1998). The Specification and Proof of an EXPRESS to SQL “Compiler”. In: Bicarregui, J.C. (eds) Proof in VDM: Case Studies. Formal Approaches to Computing and Information Technology (FACIT). Springer, London. https://doi.org/10.1007/978-1-4471-1532-8_4

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-1532-8_4

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-76186-0

  • Online ISBN: 978-1-4471-1532-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics