Advertisement

Algebraically provable specification of optimized compilations

  • Vladimir Levin
Conference paper
Part of the Lecture Notes in Computer Science book series (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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [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. [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. [3]
    C.A.R. Hoare, J.M. Spivey and others, Laws of Programming. Comm. ACM, 30, 8 (1987), 672–686.Google Scholar
  4. [4]
    He JiFeng, Jonathan Bowen, Specification, Verification and Prototyping of an Optimized Compiler (submitted to Formal Aspects of Computing in 1992).Google Scholar
  5. [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. [6]
    I.V. Pottosin, Analysis of Program Optimization and Further Development. Theoretical Computer Science, 90 (1991), 17–36.Google Scholar
  7. [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

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Vladimir Levin
    • 1
  1. 1.Keldysh Institute of Applied MathematicsMoscow

Personalised recommendations