Skip to main content

Translation Validation: From DC+ to C

  • Conference paper
Applied Formal Methods — FM-Trends 98 (FM-Trends 1998)

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

Included in the following conference series:

Abstract

Translation validation is an alternative to the verification of translators (compilers, code generators). Rather than proving in advance that the compiler always produces a target code which correctly implements the source code (compiler verification), each individual translation (i.e. a run of the compiler) is followed by a validation phase which verifies that the target code produced on this run correctly implements the submitted source program. In order to be a practical alternative to compiler verification, a key feature of this validation is its full automation.

In this paper we demonstrate the feasibility of translation validation for industrial code generators from DC+ -a widely used intermediate format for synchronous languages- to C. We explain the compilation pattern from DC+ to C and advocate new abstraction techniques for a fragment of first order logic as part of the automation of our approach.

This research was done as part of the ESPRIT project SACRES and was supported in part by a grant from the Deutsche Forschungs Gemeinschaft, the Minerva Foundation and an infra-structure grant from the Israeli Ministry of Science and Art

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 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Abadi and L. Lamport. The existence of refinement mappings. Theoretical Computer Science, 82(2), 1991.

    Google Scholar 

  2. A. Benviniste, P. Le Guernic, and C. Jacquemot. Synchronous programming with events and relations: the SIGNAL language. Science of Computer Programming, 16, 1991.

    Google Scholar 

  3. G. Berry and G. Gonthier. The ESTEREL synchronous programming language: Design, semantics, implementation. Science of Computer Programming, 19(2), 1992.

    Google Scholar 

  4. E. Börger, E. Grädel, and Y. Gurevich. The Classical Decision Problem. Springer, 1996.

    Google Scholar 

  5. P. Caspi, N. Halbwachs, P. Raymond, and D. Pilaud. The synchronous dataflow programming language LUSTRE. Proceedings of the IEEE, 79(9), 1991.

    Google Scholar 

  6. A. Cimatti, F. Giunchiglia, and P. Pecchiari et al. A provably correct embedded verifier for the certification of safety critical software. In CAV, number 1254 in LNCS. Springer, 1997.

    Google Scholar 

  7. The declarative code DC+. ESPRIT Project: SACRES, Project Report, 1997. Version 1.3.

    Google Scholar 

  8. Another look at real-time programming, volume 9 of Proc. of the IEEE, September 1991.

    Google Scholar 

  9. F. Maraninchi. Operational and compositional semantics of synchronous automata compositions. In Proceedings CONCUR, volume 630 of LNCS. Springer, 1992.

    Chapter  Google Scholar 

  10. A. Pnueli, M. Siegel, and O. Shtrichman. Translation validation for synchronous languages. In ICALP’ 98, LNCS. Springer-Verlag, 1998.

    Google Scholar 

  11. A. Pnueli, M. Siegel, and E. Singermann. Translation validation. In TACAS 98: Tools and Algorithms for the Construction and Analysis of Systems, LNCS. Springer-Verlag, 1998.

    Google Scholar 

  12. private communications with TNI (BREST), Siemens (Munich) and Inria (Rennes).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pnueli, A., Shtrichman, O., Siegel, M. (1999). Translation Validation: From DC+ to C. In: Hutter, D., Stephan, W., Traverso, P., Ullmann, M. (eds) Applied Formal Methods — FM-Trends 98. FM-Trends 1998. Lecture Notes in Computer Science, vol 1641. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48257-1_8

Download citation

  • DOI: https://doi.org/10.1007/3-540-48257-1_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66462-8

  • Online ISBN: 978-3-540-48257-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics