Skip to Main content Skip to Navigation

Méthodes et outils pour la spécification et la preuve de propriétés difficiles de programmes séquentiels

Abstract : This thesis is set in the domain of deductive verification of programs, which consists of transforming a property to be verified about a program into a logical statement, and then proving this statement. Effective verification of a program can pose many practical difficulties. In fact, the concepts behind the program may be sufficient to impede verification. Indeed, some programs can be quite short and use only simple constructions, and yet prove very difficult to verify. This leads us to the following question: in the context of a deductive program verification environment based on automatic provers, what methods can be applied to reduce the effort required both to specify complex behaviors, as well as to prove that a program respects these expected behaviors? To carry out our study, we placed ourselves in the context of the deductive verification environment of programs Why3. The verification of programs in Why3 is based on the generation of verification conditions, and the use of external provers to prove them, whether these provers are automatic or interactive. We have developed several methods, some general and others specific to some program classes, to reduce manual effort. Our contributions are as follows. First, we add features to Why3 to assist the verification process, including a lightweight declarative proof mechanism based on the notion of cut indicators. Then we present a method for checking the absence of arithmetic overflow, for use cases which are difficult to process by standard methods. Finally, we are interested in the development of a generic library for the specification and proof of code generating programs.
Document type :
Complete list of metadata

Cited literature [76 references]  Display  Hide  Download
Contributor : Abes Star :  Contact
Submitted on : Monday, May 7, 2018 - 5:09:08 PM
Last modification on : Thursday, February 4, 2021 - 3:59:45 AM
Long-term archiving on: : Monday, September 24, 2018 - 11:48:23 PM


Version validated by the jury (STAR)


  • HAL Id : tel-01787689, version 1



Martin Clochard. Méthodes et outils pour la spécification et la preuve de propriétés difficiles de programmes séquentiels. Autre [cs.OH]. Université Paris Saclay (COmUE), 2018. Français. ⟨NNT : 2018SACLS071⟩. ⟨tel-01787689⟩



Record views


Files downloads