Skip to Main content Skip to Navigation

Static analysis by abstract interpretation of functional temporal properties of programs

Abstract : The overall aim of this thesis is the development of mathematically sound and practically efficient methods for automatically proving the correctness of computer software. More specifically, this thesis is grounded in the theory of abstract interpretation, a powerful mathematical framework for approximating the behavior of programs. In particular, this thesis focuses on provingprogram liveness properties, which represent requirements that must be eventually or repeatedly realized during program execution. Program termination is the most prominent liveness property. This thesis designs new program approximations, in order to automatically infer sufficient preconditions for program termination and synthesize so called piecewisedefined ranking functions, which provide upper bounds on the waiting time before termination. The approximations are parametric in the choice between the expressivity and the cost of the underlying approximations, which maintain information about the set of possible values of the program variables along with the possible numerical relationships between them. This thesis also contributes an abstract interpretation framework for proving liveness properties, which comes as a generalization of the framework proposedfor termination. In particular, the framework is dedicated to liveness properties expressed in temporal logic, which are used to ensure that some desirable event happens once or infinitely many times during program execution. As for program termination, piecewise-defined ranking functions are used to infer sufficient preconditions for these properties, and to provide upper boundson the waiting time before a desirable event. The results presented in this thesis have been implemented into a prototype analyzer. Experimental results show that it performs well on a wide variety of benchmarks, it is competitive with the state of the art, and is able to analyze programs that are out of the reach of existing methods.
Document type :
Complete list of metadatas

Cited literature [99 references]  Display  Hide  Download
Contributor : Abes Star :  Contact
Submitted on : Wednesday, April 18, 2018 - 3:03:04 PM
Last modification on : Wednesday, October 14, 2020 - 4:12:13 AM


Version validated by the jury (STAR)


  • HAL Id : tel-01176641, version 2



Caterina Urban. Static analysis by abstract interpretation of functional temporal properties of programs. Other [cs.OH]. Ecole normale supérieure - ENS PARIS, 2015. English. ⟨NNT : 2015ENSU0017⟩. ⟨tel-01176641v2⟩



Record views


Files downloads