Faster Extraction of High-Level Minimal Unsatisfiable Cores

Various verification techniques are based on SAT's capability to identify a small, or even minimal, unsatisfiable core in case the formula is unsatisfiable, i.e., a small subset of the clauses that are unsatisfiable regardless of the rest of the formula. In most cases it is not the core itself that is being used, rather it is processed further in order to check which clauses from a preknown set of Interesting Constraints (where each constraint is modeled with a conjunction of clauses) participate in the proof. The problem of minimizing the participation of interesting constraints was recently coined high-level minimal unsatisfiable core by Nadel [15]. Two prominent examples of verification techniques that need such small cores are 1) abstraction-refinement model-checking techniques, which use the core in order to identify the state variables that will be used for refinement (smaller number of such variables in the core implies that more state variables can be replaced with free inputs in the abstract model), and 2) assumption minimization, where the goal is to minimize the usage of environment assumptions in the proof, because these assumptions have to be proved separately. We propose seven improvements to the recent solution given in [15], which together result in an overall reduction of 55% in run time and 73% in the size of the resulting core, based on our experiments with hundreds of industrial test cases. The optimized procedure is also better empirically than the assumptions-based minimization technique.

[1]  Alain Hertz,et al.  Using heuristics to find minimal unsatisfiable subformulas in satisfiability problems , 2009, J. Comb. Optim..

[2]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[3]  Zurab Khasidashvili,et al.  A compositional theory for post-reboot observational equivalence checking of hardware , 2009, 2009 Formal Methods in Computer-Aided Design.

[4]  Henry A. Kautz,et al.  Towards Understanding and Harnessing the Potential of Clause Learning , 2004, J. Artif. Intell. Res..

[5]  Igor L. Markov,et al.  AMUSE: a minimally-unsatisfiable subformula extractor , 2004, Proceedings. 41st Design Automation Conference, 2004..

[6]  Éric Grégoire,et al.  Extracting MUSes , 2006, ECAI.

[7]  Frank Wolter,et al.  Monodic fragments of first-order temporal logics: 2000-2001 A.D , 2001, LPAR.

[8]  Hans van Maaren,et al.  Finding Guaranteed MUSes Fast , 2008, SAT.

[9]  Karem A. Sakallah,et al.  Algorithms for Computing Minimal Unsatisfiable Subsets of Constraints , 2007, Journal of Automated Reasoning.

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

[11]  Edmund M. Clarke,et al.  Learning abstractions for model checking , 2006 .

[12]  Oliver Kullmann,et al.  Theory and Applications of Satisfiability Testing - SAT 2009, 12th International Conference, SAT 2009, Swansea, UK, June 30 - July 3, 2009. Proceedings , 2009, SAT.

[13]  Nachum Dershowitz,et al.  A Scalable Algorithm for Minimal Unsatisfiable Core Extraction , 2006, SAT.

[14]  Zijiang Yang,et al.  Iterative Abstraction using SAT-based BMC with Proof Analysis , 2003, ICCAD 2003.

[15]  Ohad Shacham,et al.  On-The-Fly Resolve Trace Minimization , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[16]  Ofer Strichman,et al.  An approach for extracting a small unsatisfiable core , 2008, Formal Methods Syst. Des..

[17]  Armin Biere,et al.  Minimizing Learned Clauses , 2009, SAT.

[18]  Kenneth L. McMillan,et al.  Interpolation and SAT-Based Model Checking , 2003, CAV.

[19]  Christos H. Papadimitriou,et al.  The complexity of facets resolved , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[20]  Kenneth L. McMillan,et al.  Automatic Abstraction without Counterexamples , 2003, TACAS.

[21]  Albert Oliveras,et al.  Efficient Generation of Unsatisfiability Proofs and Cores in SAT , 2008, LPAR.

[22]  Sharad Malik,et al.  Extracting small unsatis able cores from unsatis able boolean formulas , 2003 .

[23]  Niklas Sörensson,et al.  Temporal induction by incremental SAT solving , 2003, BMC@CAV.

[24]  Alexander Nadel Boosting minimal unsatisfiable core extraction , 2010, Formal Methods in Computer Aided Design.

[25]  Hans Kleine Büning,et al.  Theory and Applications of Satisfiability Testing - SAT 2008, 11th International Conference, SAT 2008, Guangzhou, China, May 12-15, 2008. Proceedings , 2008, SAT.

[26]  Armin Biere,et al.  Theory and Applications of Satisfiability Testing - SAT 2006, 9th International Conference, Seattle, WA, USA, August 12-15, 2006, Proceedings , 2006, SAT.

[27]  Inês Lynce,et al.  A branch and bound algorithm for extracting smallest minimal unsatisfiable subformulas , 2008, Constraints.