Verified resource guarantees for heap manipulating programs
Paper in proceeding, 2012

Program properties that are automatically inferred by static analysis tools are generally not considered to be completely trustworthy, unless the tool implementation or the results are formally verified. Here we focus on the formal verification of resource guarantees inferred by automatic cost analysis. Resource guarantees ensure that programs run within the indicated amount of resources which may refer to memory consumption, to number of instructions executed, etc. In previous work we studied formal verification of inferred resource guarantees that depend only on integer data. In realistic programs, however, resource consumption is often bounded by the size of heap-allocated data structures. Bounding their size requires to perform a number of structural heap analyses. The contributions of this paper are (i) to identify what exactly needs to be verified to guarantee sound analysis of heap manipulating programs, (ii) to provide a suitable extension of the program logic used for verification to handle structural heap properties in the context of resource guarantees, and (iii) to improve the underlying theorem prover so that proof obligations can be automatically discharged.

Proof obligations

Static analysis

Integer programming

Program logic

Formal verifications

Program properties

Cost accounting

Resource consumption

Theorem provers

Sound analysis

Cost analysis

Software engineering

Memory consumption

Data structures

Author

Elvira Albert

Complutense University

Richard Bubel

Chalmers, Computer Science and Engineering (Chalmers), Software Technology (Chalmers)

Samir Genaim

Complutense University

Reiner Hähnle

Chalmers, Computer Science and Engineering (Chalmers), Software Technology (Chalmers)

Guillermo Roman-Diez

Technical University of Madrid

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

03029743 (ISSN) 16113349 (eISSN)

Vol. 7212 LNCS 130-145
978-364228871-5 (ISBN)

Subject Categories

Computer and Information Science

DOI

10.1007/978-3-642-28872-2_10

ISBN

978-364228871-5

More information

Latest update

11/14/2024