Skip to main content

Formal Verification of a Compiler Back-End Generic Checker Program

  • Conference paper
  • First Online:
Perspectives of System Informatics (PSI 1999)

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

Abstract

This paper reports on a non-trivial case-study carried out in the context on the German correct compiler construction project Verifix. The PVS system is here used as a vehicle to formally represent and verify a generic checker routine (run-time result verification) used in compiler back-ends. The checker verifies the results of a sophisticated labeling process of intermediate language expression trees with instances of compilation rule schemata. Starting from an operational specification (i.e. a set of recursive PVS functions), necessary declarative properties of the checker are formally stated and proved correct.

This work has been supported by the Deutsche Forschungsgemeinschaft (DFG) project Verifix

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.

References

  • 1. A. Dold, T. Gaul, V. Vialard, and W. Zimmermann. ASM-Based Mechanized Verification of Compiler Backends. In UweäGlässer and Peter H.äSchmitt, editors, 5th International Workshop on ASM, pages 50–67, 1998.

    Google Scholar 

  • 2. Axel Dold. Software Development in PVS using Generic Development Steps. In Dagstuhl Seminar on Generic Programming (April 98), LNCS, 1998.

    Google Scholar 

  • 3. W.äGoerigk, A.äDold, T.äGaul, G.äGoos, A.äHeberle, F.W.ävon Henke, U.äHoffmann, H.äLangmaack, H.äPfeifer, H.äRuess, and W.äZimmermann. Compiler Correctness and Implementation Verification: The Verifix Approach. In P.äFritzson, editor, Poster Session of CC’ 96, IDA Technical Report LiTH-IDA-R-96-12, Linkøping, Sweden, 1996.

    Google Scholar 

  • 4. W.øGoerigk, T.øGaul, and W.øZimmermann. Correct Programs without Proof? On Checker-Based Program Verification. In ATOOLS’98 Workshop on “Tool Support for System Specification, Development, and Verification”, ACS, Malente, 1998. Springer Verla

    Google Scholar 

  • 5. W. Goerigk and U. Hoffmann. Rigorous Compiler Implementation Correctness: How to Prove the Real Thing Correct. In FM-TRENDS’98, LNCS, Boppard, 1998.

    Google Scholar 

  • 6. A.“Heberle, T.“Gaul, W.“Goerigk, G.“Goos, and W.“Zimmermann.Construction of Verified Compiler Front-Ends with Program-Checking. PSI’99 (this volume), 1998.

    Google Scholar 

  • 7. G.C.“Necula and P.“Lee. The Design and Implementation of a Certifying Compiler. In ACM SIGPLAN’98 PLDI, pages 333–344, Montreal, Canada, 17—19 June 1998.

    Google Scholar 

  • 8. S.—Owre, J. M.—Rushby, and N.—Shankar. PVS: A Prototype Verification System. In Deepak—Kapur, editor, CADE’11, volume 607 of LNAI, pages 748–752, Saratoga NY, 1992. Springer-Verlag.

    Google Scholar 

  • 9. A.—Pnuelli, M.—Siegel, and E.—Singermann. Translation Validation for Synchronous Languages. In S.—Skyum K.G.—Larsen and G.—Winskel, editors, ICALP 98, pages 235–246.

    Google Scholar 

  • 10. W.—Zimmermann and T.—Gaul. On the Construction of Correct Compiler Back-Ends: An ASM Approach. Journal of Universal Computer Science, 3(5):504–567, 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Dold, A., Vialard, V. (2000). Formal Verification of a Compiler Back-End Generic Checker Program. In: Bjøner, D., Broy, M., Zamulin, A.V. (eds) Perspectives of System Informatics. PSI 1999. Lecture Notes in Computer Science, vol 1755. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46562-6_42

Download citation

  • DOI: https://doi.org/10.1007/3-540-46562-6_42

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67102-2

  • Online ISBN: 978-3-540-46562-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics