Worked solution: Flyspeck: a formal proof of the Kepler conjecture in HOL Light and Isabelle (2015)
Some quantities in the geometry (like an angle squared, or a volume that depends nonlinearly on several lengths) are awkward for a computer to reason about directly, so Hales gives every troublesome expression its own temporary name and only remembers the bounds that expression must obey — exactly like replacing 'the square of how fast you're going' with a new variable 'your kinetic energy' and just tracking its range instead of recomputing the square every time.
For each tame plane graph, the geometry of a contravening packing forces a system of inequalities — dihedral angles, volumes, and scores of the Marchal cells — that is mostly nonlinear. Hales relaxes this system to a linear one by introducing a fresh variable for every nonlinear subexpression, as in the toy example above: the nonlinear fact together with becomes a linear system once is treated as an independent variable bounded by . If the resulting linear system is infeasible, the original nonlinear system must be infeasible too, ruling out that tame graph as a counterexample.
- linear programming relaxation
- Replacing a hard system of equations or inequalities with a looser, purely linear one obtained by treating some nonlinear expressions as new independent variables; any solution of the original system is still a solution of the relaxed one, so if the relaxed system already has no solution, neither does the original.