Community Structure in Industrial SAT Instances

Modern SAT solvers have experienced a remarkable progress on solving industrial instances. Most of the techniques have been developed after an intensive experimental process. It is believed that these techniques exploit the underlying structure of industrial instances. However, there are few works trying to exactly characterize the main features of this structure. The research community on complex networks has developed techniques of analysis and algorithms to study real-world graphs that can be used by the SAT community. Recently, there have been some attempts to analyze the structure of industrial SAT instances in terms of complex networks, with the aim of explaining the success of SAT solving techniques, and possibly improving them. In this paper, inspired by the results on complex networks, we study the community structure, or modularity, of industrial SAT instances. In a graph with clear community structure, or high modularity, we can find a partition of its nodes into communities such that most edges connect variables of the same community. In our analysis, we represent SAT instances as graphs, and we show that most application benchmarks are characterized by a high modularity. On the contrary, random SAT instances are closer to the classical Erdos-Renyi random graph model, where no structure can be observed. We also analyze how this structure evolves by the effects of the execution of a CDCL SAT solver. In particular, we use the community structure to detect that new clauses learned by the solver during the search contribute to destroy the original structure of the formula. This is, learned clauses tend to contain variables of distinct communities.

[1]  Ulrik Brandes,et al.  On Modularity Clustering , 2008, IEEE Transactions on Knowledge and Data Engineering.

[2]  Bart Selman,et al.  The state of SAT , 2007, Discret. Appl. Math..

[3]  Maria Luisa Bonet,et al.  The Fractal Dimension of SAT Formulas , 2013, IJCAR.

[4]  Gilles Audemard,et al.  Predicting Learnt Clauses Quality in Modern SAT Solvers , 2009, IJCAI.

[5]  Maria Luisa Bonet,et al.  Towards Industrial-Like Random SAT Instances , 2009, IJCAI.

[6]  Andrew Slater,et al.  Modelling More Realistic SAT Problems , 2002, Australian Joint Conference on Artificial Intelligence.

[7]  M E J Newman,et al.  Finding and evaluating community structure in networks. , 2003, Physical review. E, Statistical, nonlinear, and soft matter physics.

[8]  M. L. Bonet,et al.  Scale-Free Random SAT Instances , 2017 .

[9]  Jesús Giráldez-Cru,et al.  A Modularity-Based Random SAT Instances Generator , 2015, IJCAI.

[10]  Toby Walsh,et al.  Search on High Degree Graphs , 2001, IJCAI.

[11]  Joao Marques-Silva,et al.  Empirical Study of the Anatomy of Modern Sat Solvers , 2011, SAT.

[12]  M. Barber Modularity and community detection in bipartite networks. , 2007, Physical review. E, Statistical, nonlinear, and soft matter physics.

[13]  Carlos Ansótegui,et al.  Using Community Structure to Detect Relevant Learnt Clauses , 2015, SAT.

[14]  Bart Selman,et al.  Backdoors To Typical Case Complexity , 2003, IJCAI.

[15]  Bart Selman,et al.  Problem Structure in the Presence of Perturbations , 1997, AAAI/IAAI.

[16]  Santo Fortunato,et al.  Community detection in graphs , 2009, ArXiv.

[17]  孙博玲 分形维数(Fractal dimension)及其测量方法 , 2004 .

[18]  Bart Selman,et al.  Ten Challenges in Propositional Reasoning and Search , 1997, IJCAI.

[19]  Barry O'Sullivan,et al.  Structure-Preserving Instance Generation , 2016, LION.

[20]  Armin Biere Lingeling, Plingeling and Treengeling Entering the SAT Competition 2013 , 2013 .

[21]  Armin Biere,et al.  Inprocessing Rules , 2012, IJCAR.

[22]  Jesús Giráldez-Cru,et al.  Locality in Random SAT Instances , 2017, IJCAI.

[23]  M E J Newman,et al.  Fast algorithm for detecting community structure in networks. , 2003, Physical review. E, Statistical, nonlinear, and soft matter physics.

[24]  Rina Dechter,et al.  Constraint Processing , 1995, Lecture Notes in Computer Science.

[25]  Tomohiro Sonobe,et al.  Community Branching for Parallel Portfolio SAT Solvers , 2014, SAT.

[26]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[27]  Mikolás Janota,et al.  Exploiting Resolution-Based Representations for MaxSAT Solving , 2015, SAT.

[28]  Toby Walsh,et al.  Morphing: Combining Structure and Randomness , 1999, AAAI/IAAI.

[29]  Krzysztof Czarnecki,et al.  Learning Rate Based Branching Heuristic for SAT Solvers , 2016, SAT.

[30]  Vasco M. Manquinho,et al.  Community-Based Partitioning for MaxSAT Solving , 2013, SAT.

[31]  Armin Biere,et al.  Effective Preprocessing in SAT Through Variable and Clause Elimination , 2005, SAT.

[32]  Jean-Loup Guillaume,et al.  Fast unfolding of communities in large networks , 2008, 0803.0476.

[33]  Ilkka Niemelä,et al.  The effect of structural branching on the efficiency of clause learning SAT solving: An experimental study , 2008, J. Algorithms.

[34]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[35]  Bart Selman,et al.  Satisfiability testing: recent developments and challenge problems , 2000, Proceedings Fifteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.99CB36332).

[36]  Sebastian Fischmeister,et al.  Impact of Community Structure on SAT Solver Performance , 2014, SAT.

[37]  Laurent Simon,et al.  Post Mortem Analysis of SAT Solver Proofs , 2014, POS@SAT.

[38]  Maria Luisa Bonet,et al.  On the Structure of Industrial SAT Instances , 2009, CP.

[39]  Toby Walsh,et al.  Search in a Small World , 1999, IJCAI.

[40]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[41]  Joao Marques-Silva,et al.  Anatomy and Empirical Evaluation of Modern SAT Solvers , 2011, Bull. EATCS.

[42]  Armin Biere,et al.  Decomposing SAT Problems into Connected Components , 2006, J. Satisf. Boolean Model. Comput..

[43]  Carlos Ansótegui,et al.  The Community Structure of SAT Formulas , 2012, SAT.

[44]  Alan M. Frieze,et al.  Random graphs , 2006, SODA '06.

[45]  George Katsirelos,et al.  Eigenvector Centrality in Industrial SAT Instances , 2012, CP.

[46]  Réka Albert,et al.  Near linear time algorithm to detect community structures in large-scale networks. , 2007, Physical review. E, Statistical, nonlinear, and soft matter physics.

[47]  Krzysztof Czarnecki,et al.  SATGraf: Visualizing the Evolution of SAT Formula Structure in Solvers , 2015, SAT.

[48]  Duncan J. Watts,et al.  Collective dynamics of ‘small-world’ networks , 1998, Nature.

[49]  Jordi Levy,et al.  Generating SAT instances with community structure , 2016, Artif. Intell..

[50]  Bart Selman,et al.  Ten Challenges Redux: Recent Progress in Propositional Reasoning and Search , 2003, CP.

[51]  M. Newman,et al.  Finding community structure in very large networks. , 2004, Physical review. E, Statistical, nonlinear, and soft matter physics.

[52]  Tad Hogg,et al.  Refining the Phase Transition in Combinatorial Search , 1996, Artif. Intell..

[53]  Michael Kaufmann,et al.  Creating Industrial-Like SAT Instances by Clustering and Reconstruction - (Poster Presentation) , 2012, SAT.

[54]  Jesús Giráldez-Cru,et al.  On the Community Structure of Bounded Model Checking SAT Problems , 2017, SAT.