A formal verification framework for static analysis: As well as its instantiation to the resource analyzer COSTA and formal verification tool KeY

Elvira Albert, Richard Bubel, Samir Genaim, Reiner Hähnle, Germán Puebla, Guillermo Román-Díez

Research output: Contribution to journalArticlepeer-review

9 Scopus citations

Abstract

Static analysis tools, such as resource analyzers, give useful information on software systems, especially in real-time and safety-critical applications. Therefore, the question of the reliability of the obtained results is highly important. State-of-the-art static analyzers typically combine a range of complex techniques, make use of external tools, and evolve quickly. To formally verify such systems is not a realistic option. In this work, we propose a different approach whereby, instead of the tools, we formally verify the results of the tools. The central idea of such a formal verification framework for static analysis is the method-wise translation of the information about a program gathered during its static analysis into specification contracts that contain enough information for them to be verified automatically. We instantiate this framework with costa, a state-of-the-art static analysis system for sequential Java programs, for producing resource guarantees and KeY, a state-of-the-art verification tool, for formally verifying the correctness of such resource guarantees. Resource guarantees allow to be certain that programs will run within the indicated amount of resources, which may refer to memory consumption, number of instructions executed, etc. Our results show that the proposed tool cooperation can be used for automatically producing verified resource guarantees.

Original languageEnglish
Pages (from-to)987-1012
Number of pages26
JournalSoftware and Systems Modeling
Volume15
Issue number4
DOIs
StatePublished - 1 Oct 2016
Externally publishedYes

Keywords

  • Closed-form upper bounds
  • Cost analysis
  • Resource analysis
  • Resource guarantees

ASJC Scopus subject areas

  • Software
  • Modeling and Simulation

Fingerprint

Dive into the research topics of 'A formal verification framework for static analysis: As well as its instantiation to the resource analyzer COSTA and formal verification tool KeY'. Together they form a unique fingerprint.

Cite this