R. Nieuwenhuis, A. Lozano, Albert Oliveras, Enric Rodríguez-carbonell
{"title":"Decision levels are stable: towards better SAT heuristics","authors":"R. Nieuwenhuis, A. Lozano, Albert Oliveras, Enric Rodríguez-carbonell","doi":"10.29007/cz1f","DOIUrl":null,"url":null,"abstract":"We shed new light on the Literal Block Distance (LBD) and glue -based heuristics used in current SAT solvers. For this, we first introduce the concept of stickiness : given a run of a CDCL SAT solver, for each pair of literals we define, by a real value between 0 and 1, how sticky they are, basically, how frequently they are set at the same decision level. By means of a careful and detailed experimental setup and analysis, we confirm the following quite surprising fact: given a SAT instance, when running different CDCL SAT solvers on it, no matter their settings or random seeds, the stickiness relation between literals is always very similar, in a precisely defined sense. We analyze how quickly stickiness stabilizes in a run (quite quickly), and show that it is stable even under different encodings of cardinality constraints. We then describe how and why these solid new insights lead to heuristics refinements for SAT (and extensions, such as SMT) and improved information sharing in parallel solvers.","PeriodicalId":207621,"journal":{"name":"Logic Programming and Automated Reasoning","volume":"125 1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-05-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Logic Programming and Automated Reasoning","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.29007/cz1f","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
We shed new light on the Literal Block Distance (LBD) and glue -based heuristics used in current SAT solvers. For this, we first introduce the concept of stickiness : given a run of a CDCL SAT solver, for each pair of literals we define, by a real value between 0 and 1, how sticky they are, basically, how frequently they are set at the same decision level. By means of a careful and detailed experimental setup and analysis, we confirm the following quite surprising fact: given a SAT instance, when running different CDCL SAT solvers on it, no matter their settings or random seeds, the stickiness relation between literals is always very similar, in a precisely defined sense. We analyze how quickly stickiness stabilizes in a run (quite quickly), and show that it is stable even under different encodings of cardinality constraints. We then describe how and why these solid new insights lead to heuristics refinements for SAT (and extensions, such as SMT) and improved information sharing in parallel solvers.