Flyspeck
We are pleased to announce the completion of the Flyspeck project, which has constructed a formal proof of the Kepler conjecture. The Kepler conjecture asserts that no packing of congruent balls in Euclidean 3-space has density greater than the face-centered cubic packing. It is the oldest problem in discrete geometry. The proof of the Kepler conjecture was first obtained by Ferguson and Hales in 1998. The proof relies on about 300 pages of text and on a large number of computer calculations.
The formalization project covers both the text portion of the proof and the computer calculations. The blueprint for the project appears in the book "Dense Sphere Packings," published by Cambridge University Press. The formal proof takes the same general approach as the original proof, with modifications in the geometric partition of space that have been suggested by Marchal.
Formal Proof
A formal proof is a mathematical proof that has been checked by computer from the foundational axioms of mathematics and primitive inference rules. A formal proof provides a much higher degree of certification than traditional standards of rigor and peer review by referees.
The formal proof has been constructed in a combination of the Isabelle and HOL Light formal proof assistants.
The Isabelle portion of the formalization, which was carried out by Bauer and Nipkow, classifies all tame graphs. This enumerates the combinatorial structures of potential counterexamples to the Kepler conjecture.
Their classification theorem has been translated directly by hand into a
corresponding term import_tame_classification
in the HOL Light proof
assistant. At a conceptual level, the classification theorem could be
formulated as a large SAT problem, and SAT problems pass easily from
one proof assistant to another.
The rest of the formalization has been carried out in HOL Light, producing a formal theorem
|- import_tame_classification /\ the_nonlinear_inequalities
==> the_kepler_conjecture
where the_kepler_conjecture
is defined as the following term
`(!V. packing V
==> (?c. !r. &1 <= r
==> &(CARD(V INTER ball(vec 0,r))) <=
pi * r pow 3 / sqrt(&18) + c * r pow 2))`
In standard mathematical language, this states that for every packing
V (which is identified with the set of centers of balls of radius 1),
there exists a constant c controlling the error term, such that for
every radius r that is at least 1, the number of ball centers inside a
spherical container of radius r is at most pi * r^3 / sqrt(18)
, plus
an error term of smaller order. As r tends to infinity, this gives
the density bound pi / sqrt(18) = 0.74+
, which is the density of the
face-centered-cubic packing.
The term the_nonlinear_inequalities
is defined as a conjunction of
several hundred nonlinear inequalities. The domains of these
inequalities have been partitioned to create more than 23,000
inequalities. The verification of all nonlinear inequalities in HOL
Light on the Microsoft Azure cloud took approximately 5000
processor-hours. Almost all verifications were made in parallel with
32 cores, hence the real time is about 5000 / 32 = 156.25
hours. Nonlinear inequalities were verified with compiled versions of
HOL Light and the verification tool developed in Solovyev's 2012
thesis.
To check that no pieces were overlooked in the distribution of inequalities to various cores, the pieces have been reassembled in a specially modified version of HOL Light that allows the import of theorems from other sessions of HOL light. In that version, we obtain a formal proof of the theorem
|- the_nonlinear_inequalities
Download
The code for the project is available for download from http://afp.sourceforge.net/devel-entries/Flyspeck-Tame.shtml (Isabelle tame graphs) https://code.google.com/p/flyspeck/ (HOL Light Flyspeck project).
There have been many contributors to the project as indicated in the credits below. Many of them will be co-authors of the published account of the formal proof.
Sincerely,
Thomas Hales, Alexey Solovyev, Hoang Le Truong, and the Flyspeck Team August 10, 2014
Credits
- Project Director: Thomas Hales
- Project Managers: Ta Thi Hoai An, Mark Adams
- HOL Light libraries and support: John Harrison,
- Isabelle Tame Graph Classification: Gertrud Bauer, Tobias Nipkow,
- Chief Programmer: Alexey Solovyev,
- Nonlinear inequalities: Victor Magron, Sean McLaughlin, Roland Zumkeller,
- Linear Programming: Steven Obua,
- Microsoft Azure Cloud support: Daron Green, Joe Pleso, Dan Synek, Wenming Ye,
- Chief Formalizer: Hoang Le Truong,
- Text formalization: Jason Rute, Dang Tat Dat, Nguyen Tat Thang, Nguyen Quang Truong, Tran Nam Trung, Trieu Thi Diep, Vu Khac Ky, Vuong Anh Quyen,
- Student Projects: Catalin Anghel, Matthew Wampler-Doty, Nicholas Volker, Nguyen Duc Tam, Nguyen Duc Thinh, Vu Quang Thanh,
- Proof Automation: Cezary Kaliszyk, Josef Urban,
- Editing: Erin Susick, Laurel Martin, Mary Johnston,
- External Advisors and Design: Freek Wiedijk, Georges Gonthier, Jeremy Avigad, Christian Marchal,
- Institutional Support: NSF, Microsoft Azure Research, William Benter Foundation, University of Pittsburgh, Radboud University, Institute of Math (VAST), VIASM.