Abstract. Our goal is to help people construct software that does what they wish. We develop tools and algorithms that span static and dynamic verification, constraint solving, and program synthesis. I will outline the current state our verification and synthesis system, Leon, which trans-lates software into a functional language and uses SMT solvers to reason about paths in programs and specifications. Certain completeness results partly explain the effectiveness of verification and synthesis procedures implemented within Leon, in particular results on decidability of suffi-ciently surjective abstraction functions, and the framework of complete functional synthesis.
SIGLECNRS 17660 / INIST-CNRS - Institut de l'Information Scientifique et TechniqueFRFranc
Developing a verifying compiler---a compiler that proves that components are correct with respect to...
Synthesis of program fragments from specifications can make programs easier to write and easier to r...
We describe techniques for synthesis and verification of recursive functional programs over unbounde...
We describe techniques for synthesis and verification of recursive functional programs over unbounde...
We present Leon, a system for developing functional Scala programs annotated with contracts. Contrac...
We present the Leon verification system for a subset of the Scala programming language. Along with s...
In this thesis, we explore techniques for the development of recursive functional programs over unbo...
Abstract. We report work in progress concerning the theoretical basis and the implementation in the ...
We report our progress in scaling deductive synthesis and repair of recursive functional Scala progr...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...
Automatically generated tools can significantly improve program-mer productivity. For example, parse...
In chapter one we begin with a historical summary of the iterative programming paradigm. This leads ...
We describe a formalization of the meta-mathematics of programming in a higher-order logical calculu...
We have developed an effective methodology for using a proof development system to prove properties...
SIGLECNRS 17660 / INIST-CNRS - Institut de l'Information Scientifique et TechniqueFRFranc
Developing a verifying compiler---a compiler that proves that components are correct with respect to...
Synthesis of program fragments from specifications can make programs easier to write and easier to r...
We describe techniques for synthesis and verification of recursive functional programs over unbounde...
We describe techniques for synthesis and verification of recursive functional programs over unbounde...
We present Leon, a system for developing functional Scala programs annotated with contracts. Contrac...
We present the Leon verification system for a subset of the Scala programming language. Along with s...
In this thesis, we explore techniques for the development of recursive functional programs over unbo...
Abstract. We report work in progress concerning the theoretical basis and the implementation in the ...
We report our progress in scaling deductive synthesis and repair of recursive functional Scala progr...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...
Automatically generated tools can significantly improve program-mer productivity. For example, parse...
In chapter one we begin with a historical summary of the iterative programming paradigm. This leads ...
We describe a formalization of the meta-mathematics of programming in a higher-order logical calculu...
We have developed an effective methodology for using a proof development system to prove properties...
SIGLECNRS 17660 / INIST-CNRS - Institut de l'Information Scientifique et TechniqueFRFranc
Developing a verifying compiler---a compiler that proves that components are correct with respect to...
Synthesis of program fragments from specifications can make programs easier to write and easier to r...