Construction of Veriied Software Systems with Program-checking: an Application to Compiler Back-ends
msra(1999)
摘要
This paper describes how program-checking can be used to signiicantly reduce the amount of veriication work to establish the implementation correctness of software systems which may be partly generated by unveriied construction tools. We show the practicability of our approach with an application to the construction of veriied compiler back-ends. The basic idea of program-checking is to use an unveriied algorithm whose results are checked by a veriied component at run time. Run-Time Result Veriication in our approach assures formal correct-ness of the software system and its implementation if partial correctness of the application is suucient. In our example the approach does not only simplify the construction of veriied compilers because checking the result of the transformations is much simpler to verify than the veri-cation of an optimizing code selection. Furthermore, we are still able to use existing compiler generator tools without modiications. Compiler veriication plays two roles in this paper: First it closes the gap between veriication on high-level programming language and the implementation on machine level using a veriied compiler to translate the veriied program to machine code. Second it serves as a large-scale case study for software veriication. This work points out the tasks which still have to be veriied and it discusses the exibility of the approach. 1
更多查看译文
关键词
software systems
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络