Certifying Solvers for Clique and Maximum Common (Connected) Subgraph Problems

An algorithm is said to be certifying if it outputs, together with a solution to the problem it solves, a proof that this solution is correct. We explain how state of the art maximum clique, maximum weighted clique, maximal clique enumeration and maximum common (connected) induced subgraph algorithms can be turned into certifying solvers by using pseudo-Boolean models and cutting planes proofs, and demonstrate that this approach can also handle reductions between problems. The generality of our results suggests that this method is ready for widespread adoption in solvers for combinatorial graph problems.

[1]  Kevin A. Naudé Refined pivot selection for maximal clique enumeration in graphs , 2016, Theor. Comput. Sci..

[2]  Jimmy Ho-Man Lee,et al.  Speeding Up Constraint Propagation By Redundant Modeling , 1996, CP.

[3]  Allen Van Gelder,et al.  Verifying RUP Proofs of Propositional Unsatisfiability , 2008, ISAIM.

[4]  Coenraad Bron,et al.  Finding All Cliques of an Undirected Graph (Algorithm 457) , 1973, Commun. ACM.

[5]  Kun He,et al.  A Learning Based Branch and Bound for Maximum Common Subgraph Related Problems , 2020, AAAI.

[6]  Mario Vento,et al.  Challenging Complexity of Maximum Common Subgraph Detection Algorithms: A Performance Analysis of Three Algorithms on a Wide Database of Graphs , 2007, J. Graph Algorithms Appl..

[7]  Philippe Vismara,et al.  Finding Maximum Common Connected Subgraphs Using Clique Detection or Constraint Satisfaction Algorithms , 2008, MCO.

[8]  Ciaran McCreesh,et al.  Understanding the Empirical Hardness of Random Optimisation Problems , 2019, CP.

[9]  Eugene Goldberg,et al.  Verification of proofs of unsatisfiability for CNF formulas , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[10]  Ofer Strichman,et al.  A Proof-Producing CSP Solver , 2010, AAAI.

[11]  Alexander A. Razborov,et al.  Clique is hard on average for regular resolution , 2018, STOC.

[12]  Mikhail Batsyn,et al.  Speeding up branch and bound algorithms for solving the maximum clique problem , 2013, Journal of Global Optimization.

[13]  Darren Strash,et al.  WeGotYouCovered: The Winning Solver from the PACE 2019 Implementation Challenge, Vertex Cover Track , 2019, ArXiv.

[14]  G. Levi A note on the derivation of maximal common subgraphs of two directed or undirected graphs , 1973 .

[15]  David Eppstein,et al.  Listing All Maximal Cliques in Large Sparse Real-World Graphs , 2011, JEAL.

[16]  Christine Solnon,et al.  Clique and Constraint Models for Maximum Common (Connected) Subgraph Problems , 2016, CP.

[17]  Yves Deville,et al.  SolverCheck: Declarative Testing of Constraints , 2019, CP.

[18]  Darren Strash,et al.  WeGotYouCovered: The Winning Solver from the PACE 2019 Challenge, Vertex Cover Track , 2020, CSC.

[19]  Marijn J. H. Heule,et al.  Trimming while checking clausal proofs , 2013, 2013 Formal Methods in Computer-Aided Design.

[20]  Matthias Rarey,et al.  Maximum common subgraph isomorphism algorithms and their applications in molecular science: a review , 2011 .

[21]  Etsuji Tomita,et al.  An Efficient Branch-and-bound Algorithm for Finding a Maximum Clique with Computational Experiments , 2001, J. Glob. Optim..

[22]  Pablo San Segundo,et al.  Relaxed approximate coloring in exact maximum clique search , 2014, Comput. Oper. Res..

[23]  Joao Marques-Silva,et al.  Efficient Certified Resolution Proof Checking , 2016, TACAS.

[24]  Armin Biere,et al.  Automated Testing and Debugging of SAT and QBF Solvers , 2010, SAT.

[25]  Janez Konc,et al.  An improved branch and bound algorithm for the maximum clique problem , 2007 .

[26]  Ciaran McCreesh,et al.  Between Subgraph Isomorphism and Maximum Common Subgraph , 2017, AAAI.

[27]  William J. Cook,et al.  On the complexity of cutting-plane proofs , 1987, Discret. Appl. Math..

[28]  Panos M. Pardalos,et al.  Improved initial vertex ordering for exact maximum clique search , 2016, Applied Intelligence.

[29]  Chu Min Li,et al.  An efficient branch-and-bound algorithm based on MaxSAT for the maximum clique problem , 2010, AAAI 2010.

[30]  Ciaran McCreesh,et al.  The Shape of the Search Tree for the Maximum Clique Problem and the Implications for Parallel Branch and Bound , 2014, ACM Trans. Parallel Comput..

[31]  Hua Jiang,et al.  On minimization of the number of branches in branch-and-bound algorithms for the maximum clique problem , 2017, Comput. Oper. Res..

[32]  Ciaran McCreesh,et al.  Multi-Threading a State-of-the-Art Maximum Clique Algorithm , 2013, Algorithms.

[33]  Christine Solnon,et al.  On the subgraph epimorphism problem , 2014, Discret. Appl. Math..

[34]  Kurt Mehlhorn,et al.  Certifying algorithms , 2011, Comput. Sci. Rev..

[35]  Pablo San Segundo,et al.  An improved bit parallel exact maximum clique algorithm , 2013, Optim. Lett..

[36]  Christian Bessiere,et al.  Specific Filtering Algorithms for Over-Constrained Problems , 2001, CP.

[37]  Pablo San Segundo,et al.  Reusing the Same Coloring in the Child Nodes of the Search Tree for the Maximum Clique Problem , 2015, LION.

[38]  Pablo San Segundo,et al.  An exact bit-parallel algorithm for the maximum clique problem , 2011, Comput. Oper. Res..

[39]  Desh Ranjan,et al.  pbitMCE: A bit-based approach for maximal clique enumeration on multicore processors , 2014, 2014 20th IEEE International Conference on Parallel and Distributed Systems (ICPADS).

[40]  Etsuji Tomita,et al.  A Much Faster Branch-and-Bound Algorithm for Finding a Maximum Clique , 2016, FAW.

[41]  Dusanka Janezic,et al.  Exact Parallel Maximum Clique Algorithm for General and Protein Graphs , 2013, J. Chem. Inf. Model..

[42]  Panos M. Pardalos,et al.  Improved Infra-Chromatic Bound for Exact Maximum Clique Search , 2016, Informatica.

[43]  Panos M. Pardalos,et al.  Improvements to MCS algorithm for the maximum clique problem , 2014, J. Comb. Optim..

[44]  Wladimir Araujo Tavares Algoritmos exatos para problema da clique maxima ponderada. (Exact algorithms for the maximum-weight clique problem / Algorithmes pour le problème de la clique de poids maximum) , 2016 .

[45]  Ciaran McCreesh,et al.  On Maximum Weight Clique Algorithms, and How They Are Evaluated , 2017, CP.

[46]  Ciaran McCreesh,et al.  Justifying All Differences Using Pseudo-Boolean Reasoning , 2020, AAAI.

[47]  Etsuji Tomita,et al.  A Simple and Faster Branch-and-Bound Algorithm for Finding a Maximum Clique with Computational Experiments , 2013, IEICE Trans. Inf. Syst..

[48]  Pablo San Segundo,et al.  Initial Sorting of Vertices in the Maximum Clique Problem Reviewed , 2014, LION.

[49]  Ciaran McCreesh,et al.  The Glasgow Subgraph Solver: Using Constraint Programming to Tackle Hard Subgraph Isomorphism Problem Variants , 2020, ICGT.

[50]  Ciaran McCreesh,et al.  Reducing the Branching in a Branch and Bound Algorithm for the Maximum Clique Problem , 2014, CP.

[51]  Etsuji Tomita,et al.  An Efficient Branch-and-Bound Algorithm for Finding a Maximum Clique , 2003, DMTCS.

[52]  William J. Cook,et al.  Konrad-zuse-zentrum F ¨ Ur Informationstechnik Berlin a Hybrid Branch-and-bound Approach for Exact Rational Mixed-integer Programming , 2022 .

[53]  Mario Vento,et al.  A large database of graphs and its use for benchmarking graph isomorphism algorithms , 2003, Pattern Recognit. Lett..

[54]  David S. Johnson,et al.  Foreword xiIntroduction to the Second DIMACS Challenge: Cliques, coloring, and satisfiability , 1993, Cliques, Coloring, and Satisfiability.

[55]  Shinya Takahashi,et al.  A Simple and Faster Branch-and-Bound Algorithm for Finding a Maximum Clique , 2010, WALCOM.

[56]  Marijn J. H. Heule,et al.  DRAT-trim: Efficient Checking and Trimming Using Expressive Clausal Proofs , 2014, SAT.

[57]  Patrick Prosser,et al.  Exact Algorithms for Maximum Clique: A Computational Study , 2012, Algorithms.

[58]  Ciaran McCreesh,et al.  A Partitioning Algorithm for Maximum Common Subgraph Problems , 2017, IJCAI.

[59]  Egon Balas,et al.  Finding a Maximum Clique in an Arbitrary Graph , 1986, SIAM J. Comput..

[60]  Hua Jiang,et al.  Incremental MaxSAT Reasoning to Reduce Branches in a Branch-and-Bound Algorithm for MaxClique , 2015, LION.

[61]  Pablo San Segundo,et al.  A new branch-and-bound algorithm for the Maximum Weighted Clique Problem , 2019, Comput. Oper. Res..

[62]  Peter Willett,et al.  Maximum common subgraph isomorphism algorithms for the matching of chemical structures , 2002, J. Comput. Aided Mol. Des..

[63]  Luitpold Babel,et al.  A fast algorithm for the maximum weight clique problem , 1994, Computing.

[64]  Peter J. Stuckey,et al.  Finite Domain Bounds Consistency Revisited , 2004, Australian Conference on Artificial Intelligence.

[65]  C. Bron,et al.  Algorithm 457: finding all cliques of an undirected graph , 1973 .

[66]  Akira Tanaka,et al.  The worst-case time complexity for generating all maximal cliques and computational experiments , 2006, Theor. Comput. Sci..

[67]  Ciaran McCreesh,et al.  Subgraph Isomorphism Meets Cutting Planes: Solving With Certified Solutions , 2020, IJCAI.

[68]  Marijn J. H. Heule,et al.  Verifying Refutations with Extended Resolution , 2013, CADE.

[69]  Peter Schneider-Kamp,et al.  Efficient Certified RAT Verification , 2017, CADE.

[70]  Christine Solnon,et al.  CP Models for Maximum Common Subgraph Problems , 2011, CP.