Skip to main content

Algebraically provable specification of optimized compilations

  • Conference paper
  • First Online:

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

Abstract

Hoare's theory of compilation based on refinement algebra of programs is generalized to provide verifiable specification of optimized compilers that produce effective object codes. The compilation relation is modified by including a register table into data representation. The definition of this (modified) compilation relation is given in the framework of the justification scheme for data refinement. A compiler is specified by a set of theorems. They describe target object code for each construct of a source language and state that this partial compiling is correct, i.e. fits to the compilation relation. The proofs of compiler specification theorems are developed in algebraic style of the original theory with additional lemmas that justify alteration of a register table in the process of compilation.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. C.A.R. Hoare, Refinement Algebra Proves Correctness of Compiling Specifications, in: C.C. Morgan and J.C.P. Woodcock (Eds.), 3rd Refinement Workshop. Springer-Verlag, Workshops in Computing, 33–48, 1991.

    Google Scholar 

  2. He JiFeng and E.-R. Olderog (eds.), Interfaces between Languages for Concurrent Systems, volume II. ESPRIT BRA ProCoS Project Deliverable, 1991.

    Google Scholar 

  3. C.A.R. Hoare, J.M. Spivey and others, Laws of Programming. Comm. ACM, 30, 8 (1987), 672–686.

    Google Scholar 

  4. He JiFeng, Jonathan Bowen, Specification, Verification and Prototyping of an Optimized Compiler (submitted to Formal Aspects of Computing in 1992).

    Google Scholar 

  5. A.V. Aho and J.D. Ullman, Principles of Compiler Design. Addison-Wisley, Series in Computer Science and Information Processing, 1977.

    Google Scholar 

  6. I.V. Pottosin, Analysis of Program Optimization and Further Development. Theoretical Computer Science, 90 (1991), 17–36.

    Google Scholar 

  7. W.-P. de Roever, G. Rozenberg (eds.), Stepwise Refinement of Distributed Systems — Models, Formalisms, Correctness. Lecture Notes in Computer Science, 430, Springer-Verlag, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dines Bjørner Manfred Broy Igor V. Pottosin

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Levin, V. (1993). Algebraically provable specification of optimized compilations. In: Bjørner, D., Broy, M., Pottosin, I.V. (eds) Formal Methods in Programming and Their Applications. Lecture Notes in Computer Science, vol 735. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0039719

Download citation

  • DOI: https://doi.org/10.1007/BFb0039719

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57316-6

  • Online ISBN: 978-3-540-48056-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics