scholarly journals A Verified SAT Solver Framework including Optimization and Partial Valuations

10.29007/96wb ◽  
2020 ◽  
Author(s):  
Mathias Fleury ◽  
Christoph Weidenbach

Based on our formal framework for CDCL (conflict-driven clause learning) using the proof assistant Isabelle/HOL, we verify an extension of CDCL computing cost-minimal models called OCDCL. It is based on branch and bound and computes models of minimal cost with respect to total valuations. The verification starts by developing a framework for CDCL with branch and bound, called CDCLBnB, which is then instantiated to get OCDCL. We then apply our formalization to three different applications. Firstly, through the dual rail encoding, we reduce the search for cost-optimal models with respect to partial valuations to searching for total cost-optimal models, as derived by OCDCL. Secondly, we instantiate OCDCL to solve MAX-SAT, and, thirdly, CDCLBnB to compute a set of covering models. A large part of the original CDCL verification framework was reused without changes to reduce the complexity of the new formalization. To the best of our knowledge, this is the first rigorous formalization of CDCL with branch and bound and its application to an optimizing CDCL calculus, and the first solution that computes cost-optimal models with respect to partial valuations.


Author(s):  
Jasmin Christian Blanchette ◽  
Mathias Fleury ◽  
Christoph Weidenbach

We developed a formal framework for SAT solving using the Isabelle/HOL proof assistant. Through a chain of refinements, an abstract CDCL (conflict-driven clause learning) calculus is connected to a SAT solver that always terminates with correct answers. The framework offers a convenient way to prove theorems about the SAT solver and experiment with variants of the calculus. Compared with earlier verifications, the main novelties are the inclusion of the CDCL rules for forget, restart, and incremental solving and the use of refinement.



2015 ◽  
Vol 9 (1) ◽  
pp. 89-128 ◽  
Author(s):  
André Abramé ◽  
Djamal Habet
Keyword(s):  


2021 ◽  
pp. 1-21
Author(s):  
Chu-Min Li ◽  
Zhenxing Xu ◽  
Jordi Coll ◽  
Felip Manyà ◽  
Djamal Habet ◽  
...  

The Maximum Satisfiability Problem, or MaxSAT, offers a suitable problem solving formalism for combinatorial optimization problems. Nevertheless, MaxSAT solvers implementing the Branch-and-Bound (BnB) scheme have not succeeded in solving challenging real-world optimization problems. It is widely believed that BnB MaxSAT solvers are only superior on random and some specific crafted instances. At the same time, SAT-based MaxSAT solvers perform particularly well on real-world instances. To overcome this shortcoming of BnB MaxSAT solvers, this paper proposes a new BnB MaxSAT solver called MaxCDCL. The main feature of MaxCDCL is the combination of clause learning of soft conflicts and an efficient bounding procedure. Moreover, the paper reports on an experimental investigation showing that MaxCDCL is competitive when compared with the best performing solvers of the 2020 MaxSAT Evaluation. MaxCDCL performs very well on real-world instances, and solves a number of instances that other solvers cannot solve. Furthermore, MaxCDCL, when combined with the best performing MaxSAT solvers, solves the highest number of instances of a collection from all the MaxSAT evaluations held so far.



2020 ◽  
Vol 34 (02) ◽  
pp. 1552-1560
Author(s):  
Anastasios Kyrillidis ◽  
Anshumali Shrivastava ◽  
Moshe Vardi ◽  
Zhiwei Zhang

The Boolean SATisfiability problem (SAT) is of central importance in computer science. Although SAT is known to be NP-complete, progress on the engineering side—especially that of Conflict-Driven Clause Learning (CDCL) and Local Search SAT solvers—has been remarkable. Yet, while SAT solvers, aimed at solving industrial-scale benchmarks in Conjunctive Normal Form (CNF), have become quite mature, SAT solvers that are effective on other types of constraints (e.g., cardinality constraints and XORs) are less well-studied; a general approach to handling non-CNF constraints is still lacking. In addition, previous work indicated that for specific classes of benchmarks, the running time of extant SAT solvers depends heavily on properties of the formula and details of encoding, instead of the scale of the benchmarks, which adds uncertainty to expectations of running time.To address the issues above, we design FourierSAT, an incomplete SAT solver based on Fourier analysis of Boolean functions, a technique to represent Boolean functions by multilinear polynomials. By such a reduction to continuous optimization, we propose an algebraic framework for solving systems consisting of different types of constraints. The idea is to leverage gradient information to guide the search process in the direction of local improvements. Empirical results demonstrate that FourierSAT is more robust than other solvers on certain classes of benchmarks.



10.29007/gpp8 ◽  
2018 ◽  
Author(s):  
Laurent Simon

Conflict-Driven Clause Learning algorithms are well known from an engineerpoint of view. Thanks to Minisat, their designs are well understood, and mostof their implementations follow the same ideas, with essentially the samecomponents. Same heuristics, fast restarts, same learning mechanism.However, their efficiency has an important drawback: they are more and morelike complex systems and harder and harder to handle. Unfortunately, only afew works are focusing on understanding them rather than improving them. Inmost of the cases, their studies are often based on a generate and testpattern: An idea is added to an existing solver and if it improves itsefficiency the idea is published and kept. In this paper, we analyse``post-mortem'' the proofs given by one typical CDCL solver,Glucose. The originality of our approach is that we only consider it as aresolution proofs builder, and then we analyze some of the proofcharacteristics on a set of selected unsatisfiable instances, by shuffling each ofthem 200 times. We particularly focus on trying to characterize useless anduseful clauses in the proof as well as proofs shapes. We also show thatdespite their incredible efficiency, roughly 90% of the time spent in aCDCL is useless for producing the final proof.



2020 ◽  
Vol 49 (5) ◽  
pp. 71-75
Author(s):  
Y. S. Kucherov ◽  
R. V. Dopira ◽  
D. V. Yagolnikov ◽  
I. E. Yanochkin

The article proposes a method for solving the problem of choosing the element base and constructive solutions to ensure the required reliability of promising radio equipment at minimal cost. The problem belongs to the class of Boolean linear programming and is solved using the branch and bound method. The main idea of the branch and bound method is to determine the branching rule for assigning options and further evaluating the objective function on these subsets, which allows us to exclude from consideration subsets that do not contain optimal points. The task of increasing reliability can be solved by choosing more reliable elements and using the method of structural reservation of elements at the stage of product development. The results of using the proposed method to solve the practical problem of choosing the elements are presented.



Author(s):  
Alexander S. Kulikov ◽  
Konstantin Kutzkov
Keyword(s):  




Sign in / Sign up

Export Citation Format

Share Document