Research in algorithms for Boolean satisfiability (SAT) and their implementations [45,41,10] has recently outpaced benchmarking efforts. Most of the classic DIMACS benchmarks [21] can now be solved in seconds on commodity PCs. More recent benchmarks [54] take longer to solve due of their large size, but are still solved in minutes. Yet, small and difficult SAT instances must exist if P NP. To this end, our work articulates SAT instances that are unusually difficult for their size, including satisfiable instances derived from Very Large Scale Integration (VLSI) routing problems. With an efficient implementation to solve the graph automorphism problem [39,50,51], we show that in structured SAT instances difficulty may be associated with large numbers of symmetries.We point out that a previously published symmetry-detection mechanism [18] based on a reduction to the graph automorphism problem often produces many spurious symmetries. Our work contributes two new reductions to graph automorphism, which detect all correct symmetries detected previously [18] as well as phase-shift symmetries not detected earlier. The correctness of our reductions is rigorously proven, and they are evaluated empirically.We also formulate an improved construction of symmetry-breaking clauses in terms of permutation cycles and propose to use only generators of symmetries in this process. These ideas are implemented in a fully automated flow that first detects symmetries in a given SAT instance, pre-processes it by adding symmetry-breaking clauses and then calls a state-of-the-art backtrack SAT solver. Significant speed-ups are shown on many benchmarks versus direct application of the solver.In an attempt to further improve the practicality of our approach, we propose a scheme for fast "opportunistic" symmetry detection and also show that considerations of symmetry may lead to more efficient reductions to SAT in the VLSI routing domain.
Research in algorithms for Boolean satisfiability and their efficient implementations [26,8] has recently outpaced benchmarking efforts. Most of the classic DIMACS benchmarks from the early 1990s [12] can be solved in seconds on commodity PCs. More recent benchmarks take longer to solve primarily because of their large size, but are still solved in minutes [28]. However, small and difficult SAT instances must exist because Boolean satisfiability is NP-complete.Our work articulates a number of SAT instances that are unusually difficult for their size, including satisfiable instances from global routing and detailed routing for FPGAs [22]. Using an efficient implementation to solve the graph automorphism problem [21,23,25], we show that in structured SAT instances difficulty is sometimes associated with large numbers of symmetries.We propose a new, improved construction of symmetry-breaking clauses [11] and apply them to empirically demonstrate very significant speed-ups over current state of the art in Boolean satisfiability. Our techniques are formulated as pre-processing and can be applied to an arbitrary SAT solver without modifying its source code. We also show that considerations of symmetry may lead to more efficient reductions to SAT in the routing domain and potentially other applications.
Abstract. We introduce a framework for studying and solving a class of CSP formulations. The framework allows constraints to be expressed as linear and non-linear equations, then compiles them into SAT instances via Boolean logic circuits. While in general reduction to SAT may lead to the loss of structure, we specifically detect several types of structure in high-level input and use them in compilation. Linearity is preserved by the use of pseudo-Boolean (PB) constraints in conjunction with a 0-1 ILP solver that extends common SAT-solving techniques. Symmetries are detected in high-level constraints by solving the graph automorphism problem on parse trees. Symmetry-breaking predicates are added during compilation. Our system generalizes earlier work on symmetries in SAT and 0-1 ILP problems. Empirical evaluation is performed on instances of the social golfers and Hamming code generation problems. We show substantial speedups with symmetry-breaking, especially on unsatisfiable instances. In general, our runtimes with the specialized 0-1 ILP solver Pueblo are competitive with results recently reported for ILOG Solver.
Research in algorithms for Boolean satisfiability and their efficient implementations [26,8] has recently outpaced benchmarking efforts. Most of the classic DIMACS benchmarks from the early 1990s [12] can be solved in seconds on commodity PCs. More recent benchmarks take longer to solve primarily because of their large size, but are still solved in minutes [28]. However, small and difficult SAT instances must exist because Boolean satisfiability is NP-complete.Our work articulates a number of SAT instances that are unusually difficult for their size, including satisfiable instances from global routing and detailed routing for FPGAs [22]. Using an efficient implementation to solve the graph automorphism problem [21,23,25], we show that in structured SAT instances difficulty is sometimes associated with large numbers of symmetries.We propose a new, improved construction of symmetry-breaking clauses [11] and apply them to empirically demonstrate very significant speed-ups over current state of the art in Boolean satisfiability. Our techniques are formulated as pre-processing and can be applied to an arbitrary SAT solver without modifying its source code. We also show that considerations of symmetry may lead to more efficient reductions to SAT in the routing domain and potentially other applications.
Research in algorithms for Boolean satisfiability and their efficient implementations [26,8] has recently outpaced benchmarking efforts. Most of the classic DIMACS benchmarks from the early 1990s [12] can be solved in seconds on commodity PCs. More recent benchmarks take longer to solve primarily because of their large size, but are still solved in minutes [28]. However, small and difficult SAT instances must exist because Boolean satisfiability is NP-complete.Our work articulates a number of SAT instances that are unusually difficult for their size, including satisfiable instances from global routing and detailed routing for FPGAs [22]. Using an efficient implementation to solve the graph automorphism problem [21,23,25], we show that in structured SAT instances difficulty is sometimes associated with large numbers of symmetries.We propose a new, improved construction of symmetry-breaking clauses [11] and apply them to empirically demonstrate very significant speed-ups over current state of the art in Boolean satisfiability. Our techniques are formulated as pre-processing and can be applied to an arbitrary SAT solver without modifying its source code. We also show that considerations of symmetry may lead to more efficient reductions to SAT in the routing domain and potentially other applications.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.