A SAT-based Approach for Specification, Analysis, and Justification of Reductions between NP-complete Problems
Predrag Janičić
TL;DR
This work addresses the challenge of designing, analyzing, and justifying reductions between $\mathsf{NP}$-complete problems by leveraging URSA, a SAT-based constraint solver. The authors show how to represent problem instances, certificate verification, and reductions within a single framework, enabling solving, composition of reductions, and bounded-size automatic verification through equisatisfiability and certificate linkage. Key contributions include a general URSA-based methodology for reductions, concrete demonstrations such as $k$-clique to $l$-vertex-cover and $3$-SAT to $3$-coloring, and the demonstration that reductions can be automatically verified for given instance sizes, providing rapid prototyping and justification of reductions. The approach offers a practical, extensible toolkit for education and research to prototype and test reductions, while acknowledging that these verifications are not full formal proofs and may benefit from integration with proof assistants for complete formalization.
Abstract
We propose a novel approach for the development, analysis, and verification of reductions between NP-complete problems. This method uses the URSA system, a SAT-based constraint solver and incorporates features that distinguish it from existing related systems.
