## Project-Team : logical

## Section: New Results

## Development of theories and tactics

### Four Color Theorem

**Participant:**Benjamin Werner.

Benjamin Werner collaborated with Georges Gonthier on the proof in Coq of the Four Color Theorem. The proof of the combinatorial version of the theorem was completed in september 2004 in Coq V 7.3 and requires several hundred hours of computation for total checking.

In the process of constructing this proof, Georges Gonthier developped a promising new style of proof scripts using a new set of very compact tactics. Hugo Herbelin and Benjamin Werner are working on porting these tactics to Coq V 8 which should allow to make them widely available together with porting the four color proof to Coq V 8. In V8, using the technology of compilation, the checking time for the whole developpement is expected to drop to a few hours.

### Kepler's Conjecture

**Participants:**Benjamin Werner, Roland Zumkeller.

Roland Zumkeller has started his PhD under the supervision of Benjamin Werner, investigating the possibility to formalizee in Coq parts of Thomas Hales' proof (1998) of the Kepler Conjecture. This is part of the global Flyspeck project started by Hales.

They have particularly looked at how to prove inequalities over real numbers in Coq. Zumkeller has developped a library of interval arithmetic in Coq. In order to improve the performances of the package, they have starting promising discussions with computer algebra people like Eric Schost (LIX), Mohab Safey El Din (LIP6) and Jean-Pierre Merlet (INRIA Sophia-Antipolis).

The most promising of these are based on interval arithmetic with further refinements such as branch-and-bound methods and monotonicity checks done by evaluating partial derivatives. He provided an implementation of a reflectional Coq tactic with a (partial) correctness proof. As a result, in some cases the tactic is already sufficient to verify inequalities occurring in Hales' proof, in others further work needs to be done.

### Formalization of ordinal numbers

**Participant:**Pierre Castéran.

Since October 2004, Pierre Castéran works on proofs of termination of
complex problems. He starts developping a library on ordinals
for that purpose. At present, ordinals less than _{0} are
represented in Cantor normal form. The main parts of the present development
are a proof of well foundedness of _{0}, as well
as proofs that any Goodstein sequence eventally hits zero, and
that every strategy is a winning strategy (in the game of Hercules against
the Hydra). The last two proofs are adapted from the work of Kirby and Paris,
who show they cannot be done in Peano Arithmetic.
This work will continue with a development of the library on ordinals,
in order to make easier proofs of termination of processes. Investigation
on the representation and use of larger ordinals is planned.

### Formalization of data structures

**Participant:**Pierre Corbineau.

In a paper submitted to publication, Pierre Corbineau showed an
isomorphism between a functional version of *skip-lists* and a
certain class of randomized binary search trees.

### Air traffic control

**Participants:**Gilles Dowek, Nikhil Barthwal.

Gilles Dowek, César Muñoz and Víctor Carreño have studied an hybrid model of the air traffic concept SATS. This model permits to give a geometrical information on the spacing of aircraft. Their previous work on a discrete model of the same concept of operation has been published [26].

Nikhil Barthwal proved in Coq the correction of a synchronization algorithm of messages exchanged by aircrafts in the same airspace.

### Geometry

**Participant:**Julien Narboux.

Julien Narboux has implemented in Coq a decision method for Euclidean geometry using the Ltac language. This work has been published in [27].

Julien Narboux is working on diagrammatic reasoning for geometry and more precisely on the notion of "generic sketches of a geometric configuration". This is intended to be used to reason using sketches without losing soundness. A set of sketches is said to be generic relatively to some property when if the property holds for some points on each of the generic sketches then it holds in any case.

### Proof languages

**Participant:**Florent Kirchner.

Florent Kirchner has formalized a semantic framework specially adapted to the features of imperative languages, in particular proof languages. This work has been submitted to the JFLA 2005 conference.

In conjunction with César Muñoz, he has proposed a monadic representation of a proof state, and is implementing it as a library for PVS. A NASA technical report is being written that sums up this work.

Florent Kirchner has prototyped and is now implementing a meta-prover to factorize the proofs of several theorem provers.

### First order decision procedure with constructors

**Participant:**Pierre Corbineau.

Pierre Corbineau worked on extending his congruence-closure tactic with the theory of free constructors, which corresponds to the semantics of Coq's inductive datatypes.

To improve the perfomance of the `firstorder` tactic implemented
in the latest distributed version of Coq, he is currently working on a
backend of his procedure based on reflection. This approach already
gave encouraging results in the propositionnal case.