Hoare Logic For Realistically Modelled Machine Code

TACAS'07: Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems(2007)

引用 43|浏览65
暂无评分
摘要
This paper presents a mechanised Hoare-style programming logic framework for assembly level programs. The framework has been designed to fit on top of operational semantics of realistically modelled machine code. Many ad hoc restrictions and features present in real machine-code are handled, including finite memory, data and code in the same memory space, the behavior of status registers and hazards of corrupting special purpose registers (e.g. the program counter, procedure return register and stack pointer). Despite accurately modeling such low level details, the approach yields concise specifications for machine-code programs without using common simplifying assumptions (like an unbounded state space). The framework is based on a flexible state representatiOD in which functional and resource usage specifications are written in a style inspired by separation logic. The presented work has been formalised in higher-order logic, mechanised in the HOL4 system and is currently being used to verify ARM machine-code implementations of arithmetic and cryptographic operations.
更多
查看译文
关键词
ARM machine-code implementation,higher-order logic,machine-code program,mechanised Hoare-style programming logic,real machine-code,separation logic,assembly level program,finite memory,flexible state representation,low level detail,Hoare logic,modelled machine code
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要