In this thesis, we develop new techniques to conveniently write formally verified programs. To proceed, we study the use of Coq as a programming language in different settings. Coq being a purely functional language, we mainly focus on the representation and on the specification of impure effects, like exceptions, mutable references, inputs-outputs, and concurrency.First, we work on two preliminary projects helping us to understand the challenges of programming in Coq. The first project, Cybele, is a Coq plugin to write efficient proofs by reflection with effects. We compile and execute the impure effects in OCaml to generate a prophecy, a kind of certificate, and then interpret the effects in Coq using the prophecy. The second project, the...
Proof assistants based on dependent type theory are gaining adoption as a tool to develop certified ...
International audienceBasing program analyses on formal semantics has a long and successful traditio...
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engine...
In this thesis, we develop new techniques to conveniently write formally verified programs. To proce...
International audienceInteractive programs, like user interfaces, are hard to formally specify and t...
Making sure that a computer program behaves as expected, especially in critical applications (health...
In this thesis, we aim to formalize the effects of a computation. Indeed, most used programming lang...
The Coq proof assistant mechanically checks the consistency of the logical reasoning in a proof. It ...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
International audienceThe Coq Platform is a continuously developed distribution of the Coq proof ass...
We present a new approach for constructing and verifying higher-order, imperative programs using the...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
This thesis studies the cooperation between the Coq proof assistant and external provers through pro...
Proof assistants based on dependent type theory are gaining adoption as a tool to develop certified ...
International audienceBasing program analyses on formal semantics has a long and successful traditio...
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engine...
In this thesis, we develop new techniques to conveniently write formally verified programs. To proce...
International audienceInteractive programs, like user interfaces, are hard to formally specify and t...
Making sure that a computer program behaves as expected, especially in critical applications (health...
In this thesis, we aim to formalize the effects of a computation. Indeed, most used programming lang...
The Coq proof assistant mechanically checks the consistency of the logical reasoning in a proof. It ...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
International audienceThe Coq Platform is a continuously developed distribution of the Coq proof ass...
We present a new approach for constructing and verifying higher-order, imperative programs using the...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
This thesis studies the cooperation between the Coq proof assistant and external provers through pro...
Proof assistants based on dependent type theory are gaining adoption as a tool to develop certified ...
International audienceBasing program analyses on formal semantics has a long and successful traditio...
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engine...