Trustworthy Translation for Eliminating High-Order Operation of a Synchronous Dataflow Language

Yang LIU,Yuan-Ke GAN,Sheng-Yuan WANG,Yuan DONG,Fei YANG,Gang SHI,Xin YAN
DOI: https://doi.org/10.13328/j.cnki.jos.004785
2015-01-01
Abstract:Lustre is a synchronous dataflow language widely used in safety critical industrial control system. Formal verification is efficient to improve the reliability of the compiler which translates Lustre to C. Based on this approach, this paper conducts a research on the trustworthy compiler for translating Lustre*(a Lustre-like language) to Clight (a subset language of C). The entire compiling process is divided into different stages to tackle the large difference between Lustre* and Clight. Each stage performs a specific translation task. This paper describes a translation algorithm which eliminates high-order operations. The implementation of translation process is assisted by theorem proving tool Coq, and a strict proof of correctness of the process is also provided.
What problem does this paper attempt to address?