Solving Difficult Instances of Boolean Satisfiability in the Presence of Symmetry Fadi A. Aloul, Arathi Ramani, Igor L. Markov and Karem A. Sakallah Department of EECS, University of Michigan, Ann Arbor 48109-2122 {faloul,ramania,imarkov,karem}@eecs.umich.edu April 29, 2003 Abstract Research in algorithms for Boolean satisfiability (SAT) and their implementations [11, 45, 50] has recently outpaced benchmarking efforts. Most of the classic DIMACS bench- marks [22] can now be solved in seconds on commodity PCs. More recent benchmarks [60] take longer to solve due to their large size, but are still solved in minutes. Yet, relatively 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 implementa- tion to solve the graph automorphism problem [43, 55, 56], we show that in structured SAT instances difficulty may be associated with large numbers of symmetries. We point out that a previously published symmetry extraction mechanism [19] based on a reduction to the graph automorphism problem often produces many spurious symmetries. Our work contributes two new reductions to graph automorphism, which extract all correct symmetries found previously [19] as well as phase-shift symmetries not found 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 extracts symmetries from 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 extraction and also show that considerations of symmetry may lead to more efficient reductions to SAT in the VLSI routing domain. Early results of this work were reported at the ACM/IEEE Design Automation Conference in June 2002. 1