Section: New Results

Automated Deduction

  • In collaboration with Assia Mahboubi (from Typical Inria project-team), and Guillaume Melquiond, the group involved in the development of Alt-Ergo, implemented and proved the correctness of a novel decision procedure for quantifier-free linear integer arithmetic [20] . This algorithm tries to bridge the gap between projection and branching/cutting methods: it interleaves an exhaustive search for a model with bounds inference. These bounds are computed provided an oracle capable of finding constant positive linear combinations of affine forms. An efficient oracle based on the Simplex procedure has been designed. Our algorithm is proved sound, complete, and terminating and is implemented in the Alt-Ergo theorem prover.

  • In their LMCS journal paper [15] , S. Conchon, É. Contejean and M. Iguernelala present a modular extension of ground AC-completion for deciding formulas in the combination of the theory of equality with user-defined AC symbols, uninterpreted symbols and an arbitrary signature disjoint Shostak theory X. This paper extends the results presented in  [72] by showing that a simple preprocessing step allows to get rid of a full AC-compatible reduction ordering, and to simply use a partial multiset extension of a non necessarily AC-compatible ordering.

  • In [31] , S. Conchon, G. Melquiond and C. Roux described a dedicated procedure for a theory of floating-point numbers which allows reasoning on approximation errors. This procedure is based on the approach of the Gappa tool: it performs saturation of consequences of the axioms, in order to refine bounds on expressions. In addition to the original approach, bounds are further refined by a constraint solver for linear arithmetic. This procedure has been implemented in Alt-Ergo.

  • In [42] , [32] , C. Dross and J. Kanig from AdaCore, in collaboration with S. Conchon and A. Paskevich propose a generic framework for adding a decision procedure for a theory or a combination of theories to an SMT prover. This mechanism is based on the notion of instantiation patterns, or triggers, which restrict instantiation of universal premises and can effectively prevent a combinatorial explosion. A user provides an axiomatization with triggers, along with a proof of completeness and termination in our framework, and obtains in return a sound, complete and terminating solver for his theory. A prototype implementation was realized in the Alt-Ergo prover. As a case study, a feature-rich axiomatization of doubly-linked lists was proved comlpete and terminating.

  • In [38] , A. Paskevich in collaboration with J. Blanchette from TU München, introduced a new format in the TPTP family (http://tptp.org ), called TFF1, which extends the earlier TFF0 format (many-sorted first-order logic) with rank-1 type polymorphism. The technical report presents the syntax, typing rules, and semantics, as well as a sound and complete translation from TFF1 to TFF0. The format is designed to be easy to process by existing reasoning tools that support ML-style polymorphism. It opens the door to useful middleware, such as monomorphizers and other translation tools that encode polymorphism in FOF or TFF0. Ultimately, the hope is that TFF1 will be implemented in popular automatic theorem provers.

  • A. Paskevich and J.-C. Filliâtre implemented a new Coq tactic that is able call an automated prover from Coq environment. It uses Why3 as an intermediate tool. This new tactic brings a very significant improvement of proof automation within Coq. For example, the development of a certified VC generator in Why3 made an intensive use of this tactic. The combination of automatic and interactive theorem proving was the subject of invited talks given by J.-C. Filliâtre at the workshop “Automation in Proof Assistants” [17] (satellite workshop of ETAPS 2012) and at the international workshop on Intermediate Verification Languages [18] (BOOGIE 2012, Berkeley, California, USA, July 2012).

  • Together with O. Hermant (ISEP, Paris), D. Cousineau studied the cut elimination property for deduction modulo theories. They were able to show a strong relationship the syntactic cut-elimination property and the semantic construction of pre-models: they made a full semantic proof that the existence of a pre-model entails the cut elimination property for the considered theory in deduction modulo. This is published at the RTA Conference [26] .

  • TLA+ is a specification language based on standard set theory and temporal logic, developed by the TLA groupe of Microsoft Research (http://research.microsoft.com/en-us/um/people/lamport/tla/tla.html ). During the first part of his post-doc, D. Cousineau finalized a work on describing how to write TLA+ proofs and check them with TLAPS, the TLA+ Proof System. It was published as a tool description at FM Conference [25] .

  • S. Conchon defended his habilitation à diriger des recherches in December 2012. The memoir [11] provides a very good and useful survey of the scientific work of the past 10 years, around the SMT solving techniques, that leaded to the tools Alt-Ergo and Cubicle as they are nowadays.