Reseña: Solveurs CP(FD) vérifiés formellement

Se ha publicado un artículo de razonamiento formalizado en Coq sobre restricciones titulado Solveurs CP(FD) vérifiés formellement.

Sus autores son Catherine Dubois y Arnaud Gotlieb.

El trabajo se ha presentado en las 9èmes Journées Francophones de Programmation par Contraintes.

Su resumen es

Constraint solvers are used to solve problems coming from optimization, scheduling, planning, etc. Their usage in critical applications implies a more skeptical regard on their implementation, especially when the result is that a constraint problem has no solution, i.e., unsatisfiability. In this paper, we propose an approach aiming to develop a correct-by-construction finite domain based – CP(FD) – solver. We developed this solver within the Coq proof tool and proved its correctness in Coq. It embeds the algorithm AC3 (and AC2001) and uses arc-consistency. The Coq extraction mechanism allows us to provide a finite domain based solver written in OCaml formally verified, the first one to our knowledge. This solver can be used directly or as a second shot solver to verify results coming from an untrusted solver. This result has recently been published in FM 2012]. In this paper, we present a summary of this result and extend it to deal with another local-consistency property, namely, bound-consistency.

Reseña: Theorem of three circles in Coq

Se ha publicado un artículo de razonamiento formalizado en Coq sobre geometría algebraica titulado Theorem of three circles in Coq.

Su autora es Julianna Zsidó (de INRIA Sophia Antipolis).

Su resumen es

The theorem of three circles in real algebraic geometry guarantees the termination and correctness of an algorithm of isolating real roots of a univariate polynomial. The main idea of its proof is to consider polynomials whose roots belong to a certain area of the complex plane delimited by straight lines. After applying a transformation involving inversion this area is mapped to an area delimited by circles. We provide a formalisation of this rather geometric proof in Ssreflect, an extension of the proof assistant Coq, providing versatile algebraic tools. They allow us to formalise the proof from an algebraic point of view.

Reseña: The rooster and the butterflies (a machine-checked proof of the Jordan-Hölder theorem for finite groups)

Se ha publicado un artículo de razonamiento formalizado en Coq sobre la demostración del teorema de Jordan-Hölder para grupos finitos titulado The rooster and the butterflies.

Su autora es Assia Mahboubi (de Microsoft Research – Inria Joint Centre).

El trabajo se presentará en julio en el CICM 2013 (Conferences on Intelligent Computer Mathematics).

Su resumen es

This paper describes a machine-checked proof of the Jordan-Hölder theorem for finite groups. This purpose of this description is to discuss the representation of the elementary concepts of finite group theory inside type theory. The design choices underlying these representations were crucial to the successful formalization of a complete proof of the Odd Order Theorem with the Coq system.

Reseña: A certified reduction strategy for homological image processing

Se ha publicado un trabajo de verificación formal con Coq titulado A certified reduction strategy for homological image processing.

Sus autores son María Poza, César Domínguez, Jónathan Heras y Julio Rubio (de la Universidad de la Rioja).

Su resumen es

The analysis of digital images using homological procedures is an outstanding topic in the area of Computational Algebraic Topology. In this paper, we describe a certified reduction strategy to deal with digital images, but preserving their homological properties. We stress both the advantages of our approach (mainly, the formalisation of the mathematics allowing us to verify the correctness of algorithms) and some limitations (related to the performance of the running systems inside proof assistants). The drawbacks are overcome using techniques that provide an integration of computation and deduction. Our driving application is a problem in bioinformatics, where the accuracy and reliability of computations are specially requested.

El código de las teoría Coq correspondientes al trabajo se encuentra aquí.

Reseña: A machine-checked proof of the odd order theorem

Una de las líneas de trabajo en la automatización del razonamiento es la verificación de demostraciones de grandes teoremas. En esta línea se inscribe el proyecto de la formalización en Coq del teorema clasificación de grupos finitos. Un resultado clave para dicha demostración es el teorema de Feit y Thompson, también conocido como el teorema del orden impar. Recientemente se ha conseguido la formalización del teorema en Coq como se comenta en el artículo A machine-checked proof of the odd order theorem.

Sus autores son Georges Gonthier, Andrea Asperti, Jeremy Avigad, Yves Bertot, Cyril Cohen, François Garillot, Stéphane Le Roux, Assia Mahboubi, Russell O’Connor, Sidi Ould Biha, Ioana Pasca, Laurence Rideau, Alexey Solovyev, Enrico Tassi y Laurent Théry.

Su resumen es

This paper reports on a six-year collaborative effort that culminated in a complete formalization of a proof of the Feit-Thompson Odd Order Theorem in the Coq proof assistant. The formalized proof is constructive, and relies on nothing but the axioms and rules of the foundational framework implemented by Coq. To support the formalization, we developed a comprehensive set of reusable libraries of formalized mathematics, including results in finite group theory, linear algebra, Galois theory, and the theories of the real and complex algebraic numbers.

Las conclusiones del trabajo son

The success of the present formalization relies on a heavy use of the inductive types provided by Coq and on various flavors of reflection techniques. A crucial ingredient was the transfer of the methodology of “generic programming” to formal proofs, using the type inference mechanisms of the Coq system.

Our development includes more than 150,000 lines of proof scripts, including roughly 4,000 definitions and 13,000 theorems. The roughly 250 pages of mathematics in our two main sources translate to about 40,000 lines of formal proof, which amounts to 4-5 lines of SSReflect code per line of informal text. During the formalization, we had to correct or rephrase a few arguments in the texts we were following, but the most time-consuming part of the project involved getting the base and intermediate libraries right. This required systematic consolidation phases performed after the production of new material. The corpus of mathematical theories preliminary to the actual proof of the Odd Order theorem represents the main reusable part of this work, and contributes to almost 80 percent of the total length. Of course, the success of such a large formalization, involving several people at different locations, required a very strict discipline, with uniform naming conventions, synchronization of parallel developments, refactoring, and benchmarking for synchronization with Coq.

As we have tried to make clear in this paper, when it comes to formalizing this amount of mathematics, there is no silver bullet. But the combined success of the many techniques we have developed shows that we are now ready for theorem proving in the large. The outcome is not only a proof of the Odd Order Theorem, but also, more importantly, a substantial library of mathematical components, and a tried and tested methodology that will support future formalization efforts.

Una vesión minimal de la demostración en Coq del teorema del orden impar se encuentra aquí. La formalización completa se encuentra aquí.