Proving Resource Consumption of Low-level Programs Using Automated Theorem Provers

Jaroslav Ševčík
2007 Electronical Notes in Theoretical Computer Science  
In this paper we use a program logic and automatic theorem provers to certify resource usage of low-level bytecode programs equipped with annotations describing resource consumption for methods. We have adapted an existing resource counting logic [1] to fit the first-order setting, implemented a verification condition generator, and tested our approach on programs that contain recursion and deal with recursive data structures. We have successfully applied our framework to programs that did not
more » ... nvolve any updates to recursive data structures. But mutation is more tricky because of aliasing of heap. We discuss problems related to this and suggest techniques to solve them.
doi:10.1016/j.entcs.2007.02.065 fatcat:5xs5kattzvfndcbzbn37ooaiw4