1 / 7

Boolean Satisfiability Present and Future

Boolean Satisfiability Present and Future. Lintao Zhang Microsoft Research SVC. SAT: Introduction . Deciding the satisfiability of Boolean formulas SAT: Propositional ( usually in Conjunctive Normal Form (CNF) ) QBF: With quantifiers Many driving forces Verification

hali
Télécharger la présentation

Boolean Satisfiability Present and Future

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Boolean Satisfiability Present and Future Lintao Zhang Microsoft Research SVC

  2. SAT: Introduction • Deciding the satisfiability of Boolean formulas • SAT: Propositional ( usually in Conjunctive Normal Form (CNF) ) • QBF: With quantifiers • Many driving forces • Verification • Electronic Design Automation (EDA) • Artificial Intelligence • Operational Research • Physics ??? • Where is SAT used in our context? • A basic building block for the reasoning engine • Reasoning on Boolean domain • Driving branching and backtracking for search • Model Checking • Decision Procedures • Etc.

  3. SAT Solvers: Current State-of-the-Art • Tremendous performance improvements on Propositional SAT solvers in the last decade • Speed increased by at least 3 orders of magnitude • We regularly solve SAT instances with tens of thousands variables and clauses • Example: • Microprocessor verification, Bounded Model Checking, 14 Cycles • 1 million variables, 10 million literals initially • 200 million literals in added clauses • 30 million literals finally • 4 million clauses initially • 200k clauses added • 1.5 million decisions • 3 hours run time

  4. SAT Solvers: Current State-of-the-Art • Non performance related improvements of SAT solvers: • Explanatory SAT solver • UNSAT: Unsatisfiable core extraction • SAT: Minimal model extraction • Interpolation using SAT solver • Checkable proof of unsatisfiability • On line progress report • In the last several years, SAT solver changed from a toy with only academic interest to become a powerful and feature rich deduction method capable of industrial strength applications.

  5. Can we increase the SAT solver speed even more? • Yes. Better heuristics and better implementations are proposed everyday • But the improvements are incremental • DPLL is the dominating algorithm for SAT solving for more than 40 years • Basic DPLL algorithm is proposed in 1962 • Learning and non-chronological backtracking (1996) • Careful implementation and tuning (2001) • 2-Literal Watching BCP, VSIDS decision heuristic, 1-UIP learning, etc. • What’s going on? • Better decision/branching heuristics • Better learning and garbage collection schemes • Leverage the structure of the Boolean formula • What’s next? • We cannot bet on any breakthrough without fundamentally change the way the algorithm works • i.e. Don’t bet on another 3 orders of magnitude speed up in the next 10 years.

  6. SAT Solver as a White Box • Traditional usage of SAT as a Black Box • Translate the problem into a monolithic CNF instance • Throw it to the SAT solver and pray • Used to work well • To squeeze the last bit of performance out of a SAT solver, current applications need to treat SAT as a White Box • We need to use the knowledge about the application to help the SAT solver • Input to the SAT solver may be a Boolean formula combined with: • Branching suggestions • Domain specific implications • Continuous interaction because of abstract and refinement • …… • SAT engines need to be expandable, with cleanly defined interfaces. • What can the applications offer?

  7. QBF: Quantified Boolean Formulas • Many applications stress SAT solver because of quantifications • Eliminate quantification by expansion: the formula becomes exponentially large • Eliminate quantification by solution enumeration: SAT solver is bad at this • Unlike SAT, QBF just started to attract interests from researchers in the last couple of years • No predominant algorithm • DPLL search • Resolution • BDD • And many other approaches… • Quantification elimination is hard (exponential in space), while deciding the satisfiability of a QBF may not be. • Will there be a breakthrough in the near future? • Much more probable than a breakthrough in SAT

More Related