Download PDFOpen PDF in browserFormally Proving the Boolean Pythagorean Triples Conjecture14 pages•Published: May 4, 2017AbstractIn 2016, Heule, Kullmann and Marek solved the Boolean Pythagorean Triples problem: is there a binary coloring of the natural numbers such that every Pythagorean triple contains an element of each color? By encoding a finite portion of this problem as a propositional formula and showing its unsatisfiability, they established that such a coloring does not exist. Subsequently, this answer was verified by a correctbyconstruction checker extracted from a Coq formalization, which was able to reproduce the original proof. However, none of these works address the question of formally addressing the relationship between the propositional formula that was constructed and the mathematical problem being considered. In this work, we formalize the Boolean Pythagorean Triples problem in Coq. We recursively define a family of propositional formulas, parameterized on a natural number n, and show that unsatisfiability of this formula for any particular n implies that there does not exist a solution to the problem. We then formalize the mathematical argument behind the simplification step in the original proof of unsatisfiability and the logical argument underlying cubeandconquer, obtaining a verified proof of Heule et al.’s solution.Keyphrases: boolean pythagorean triples problem, formal proofs, interactive theorem proving In: Thomas Eiter and David Sands (editors). LPAR21. 21st International Conference on Logic for Programming, Artificial Intelligence and Reasoning, vol 46, pages 509522.
