Share This Author
Why3: Shepherd Your Herd of Provers
Why3 is the next generation of the Why software verification platform that features a rich library of proof task transformations that can be chained to produce a suitable input for a large set of theorem provers, including SMT solvers, TPTPProvers, as well as interactive proof assistants.
Let’s verify this with Why3
- François Bobot, J. Filliâtre, C. Marché, A. Paskevich
- Computer ScienceInternational Journal on Software Tools for…
- 1 November 2015
We present solutions to the three challenges of the VerifyThis competition held at the 18th FM symposium in August 2012. These solutions use the Why3 environment for deductive program verification.
Implementing polymorphism in SMT solvers
- François Bobot, S. Conchon, Evelyne Contejean, Stéphane Lescuyer
- Computer ScienceSMT '08/BPR '08
- 7 July 2008
Based on the experience with the development of Alt-Ergo, the small number of modifications needed to bring parametric polymorphism to the authors' SMT solver are shown and it is hoped that this experience is convincing enough to raise interest for polymorphism in the SMT community.
Real Behavior of Floating Point
We present an efficient constraint programming (CP) approach to the SMTLIB theory of quantifier-free floating-point arithmetic (QF FP). We rely on dense interreduction between many domain…
An Automated Deductive Verification Framework for Circuit-building Quantum Programs
- Christophe Chareton, Sébastien Bardin, François Bobot, Valentin Perrelle, B. Valiron
- Computer ScienceESOP
- 12 March 2020
Qbricks is proposed, a formal verification environment for circuit-building quantum programs, featuring both parametric specifications and a high degree of proof automation, and the main tool is developed, PPS, a parametric extension of the recently developed path sum semantics.
Deductive Proof of Ethereum Smart Contracts Using Why3
The aim of this paper is to propose a language dedicated to deductive verification, called Why3, as a new language for writing formal and verified smart contracts, thereby avoiding attacks exploiting such contract execution vulnerabilities.
Expressing Polymorphic Types in a Many-Sorted Language
This paper considers a three-stage scheme where the last stage eliminates polymorphic types while adding the necessary "annotations" to preserve soundness, and the first two stages serve to protect certain terms so that they can keep their original unannotated form.
A Simplex-Based Extension of Fourier-Motzkin for Solving Linear Integer Arithmetic
This paper describes a novel decision procedure for quantifier-free linear integer arithmetic that interleaves an exhaustive search for a model with bounds inference and computed bounds are computed provided an oracle capable of finding constant positive linear combinations of affine forms.
The dogged pursuit of bug-free C programs
A panoramic view of a popular platform for C program analysis and verification as well as a comparison of different approaches to integration and verification.
Centralizing equality reasoning in MCSAT
The topic of how to reason about equalities in a centralized way is broached, so that the theory reasoners can avoid replicating equality reasoning steps, and even benefit from a centralized implementation of equivalence classes of terms, which is based on a equality graph (Egraph).