Formally Verifying the Solution to the Boolean Pythagorean Triples Problem
- Luís Cruz-Filipe,
- Joao Marques-Silva,
- Peter Schneider-Kamp
- University of Southern Denmark,
- University of Lisbon
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-reviewPublication Information
Output type
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-reviewOriginal language
EnglishPages from-to (Number of pages)
Pages 695-722 (28 pages)Journal (Volume, Issue Number)
Journal of Automated Reasoning (Volume 63, Issue 3)Publication milestones
- Published - 01/10/2019
Publication status
Published - 01/10/2019
ISSN
0168-7433Publication IDs
- Scopus: 85055893611
Abstract
The Boolean Pythagorean Triples problem asks: does there exist a binary coloring of the natural numbers such that every Pythagorean triple contains an element of each color? This problem was first solved in 2016, when Heule, Kullmann and Marek encoded a finite restriction of this problem as a propositional formula and showed its unsatisfiability. In this work we formalize their development in the theorem prover Coq. We state the Boolean Pythagorean Triples problem in Coq, define its encoding as a propositional formula and establish the relation between solutions to the problem and satisfying assignments to the formula. We verify Heule et al.’s proof by showing that the symmetry breaks they introduced to simplify the propositional formula are sound, and by implementing a correct-by-construction checker for proofs of unsatisfiability based on reverse unit propagation.
Publication metrics
PlumX, opens in new tab
Captures
3
Citations
17
