Skip to main content

An Approach to Automatic Proof Support for Code Generator Verification

  • Conference paper

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

In principle, program verification is the only adequate means to ensure the correctness of software with respect to precise specifications. But since realistic programs such as code generators and other parts of compilers tend to be large and complex, some mechanical support is necessary for the verification of these programs. In this paper we present the ideas of the verification support system PAMELA that is intended for the verification of programs written in a subset of Meta IV that are specified by pre- and postconditions. PAMELA organizes the proof for such programs and is based on a special kind of term rewriting.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. de Bakker J. Mathematical Theory of Program Correctness. Prentice-Hall, 1980

    Google Scholar 

  2. Bjørner D., Jones CB. The Vienna Development Method: The Meta-Language. Springer, LNCS 61, 1978

    Google Scholar 

  3. Boyer RS, Moore JS. A Computational Logic Handbook. Academic Press, 1988

    Google Scholar 

  4. Buchberger B. “Basic Features and Development of the Critical Pairs/-Completion Procedure”. In: Jouannaud JP (ed.) Proceedings of the First International Conference on Rewriting Techniques and Applications. Springer, LNCS 202, pp. 1–45, 1985

    Chapter  Google Scholar 

  5. Buth B. PACS - Implementierung einer computergestützten Verifikation für die Substitutionsphase von Codegenerator-Spezifikationen im CAT-System. Diplomarbeit, Christian-Albrechts-Universität, Kiel, 1988

    Google Scholar 

  6. Buth K-H. Beweis der partiellen Korrektheit von Codegenerator-Spezifikationen mit Hilfe von Termersetzung. Diplomarbeit, Christian-AlbrechtsUniversität, Kiel, 1988

    Google Scholar 

  7. Buth B, Buth K-H. “Correctness Proofs for META IV Written Code Generator Specifications Using Term Rewriting”. In: Bloomfield R et al. (eds.) VDM ‘88, VDM — The Way Ahead, Proceedings of the 2nd VDM-Europe Symposium. Springer, LNCS 328, pp. 406–433, 1988

    Google Scholar 

  8. Buth B et al. Experiments with Program Verification Systems. Technical Report [Kiel BB 2], ESPRIT BRA 3104 ProCoS, Christian-AlbrechtsUniversität Kiel, 1989

    Google Scholar 

  9. Dawes J. The VDM-SL Reference Guide. Pitman, 1991

    Google Scholar 

  10. Dershowitz N. “Termination” In: Jouannaud JP (ed.). Proceedings of the First International Conference on Rewriting Techniques and Applications. Springer, LNCS 202, pp. 180–224, 1985

    Chapter  Google Scholar 

  11. Garland SJ, Guttag JV. “An Overview of LP, The Larch Prover”. In: Dershowitz N (ed.). Proceedings of the Third International Conference on Rewriting Techniques and Applications. Springer, LNCS 355, pp. 137–151, 1989

    Chapter  Google Scholar 

  12. Gordon MJ, Milner R, Wadsworth CP. Edinburgh LCF. Springer, LNCS 78, 1979

    Google Scholar 

  13. Huet G, Oppen DC. “Equations and Rewrite Rules: A Survey”. In: Book RV (ed.). Formal Languages: Perspectives and Open Problems. Academic Press, New York, pp. 349–405, 1980

    Google Scholar 

  14. Jones CB. Systematic Software Development Using VDM. Prentice Hall International, 1990

    Google Scholar 

  15. Loeckx J, Sieber K. The Foundations of Program Verification. WileyTeubner, 1984

    Google Scholar 

  16. Milne R. “Proof Rules for VDM Statements”. In: Bloomfield R et al. (eds.). VDM ‘88, VDM - The Way Ahead, Proceedings of the 2nd VDM-Europe Symposium. Springer, LNCS 328, pp. 318–336, 1988

    Chapter  Google Scholar 

  17. O’Neill IM et al. “The Formal Verification of Safety-critical Assembly Code”. In: Ehrenberger WD (ed.). Safety of Computer Control Systems 1988. IFAC Proceedings Series, Vol. 16, Pergamon Press, pp. 115–120, 1988

    Google Scholar 

  18. Schmidt U. Ein neuartiger, auf VDM basierender Codegenerator Generator. Dissertation, Christian-Albrechts-Universität, Kiel, 1983

    Google Scholar 

  19. Schmidt U, Völler R. “A Multi-Language Compiler System with Automatically Generated Codegenerators”. In: Proceedings of the SIGPLAN ‘84 Symposium on Compiler Construction. ACM SIGPLAN Notices, Vol. 19(6), pp. 202–212, 1984

    Article  Google Scholar 

  20. Völler R. Entwicklung einer maschinenunabhängigen Zwischensprache und zugehöriger Ubersetzeroberteile für ein Mehrsprachenübersetzersystem mit Hilfe von VDM. Dissertation, Christian-Albrechts-Universität, Kiel, 1983

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag London

About this paper

Cite this paper

Buth, B., Buth, KH. (1992). An Approach to Automatic Proof Support for Code Generator Verification. In: Giegerich, R., Graham, S.L. (eds) Code Generation — Concepts, Tools, Techniques. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3501-2_11

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3501-2_11

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19757-7

  • Online ISBN: 978-1-4471-3501-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics