License: Creative Commons Attribution 4.0 International license (CC BY 4.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.SAT.2023.28
URN: urn:nbn:de:0030-drops-184909
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2023/18490/
Yang, Jiong ;
Shaw, Arijit ;
Baluta, Teodora ;
Soos, Mate ;
Meel, Kuldeep S.
Explaining SAT Solving Using Causal Reasoning
Abstract
The past three decades have witnessed notable success in designing efficient SAT solvers, with modern solvers capable of solving industrial benchmarks containing millions of variables in just a few seconds. The success of modern SAT solvers owes to the widely-used CDCL algorithm, which lacks comprehensive theoretical investigation. Furthermore, it has been observed that CDCL solvers still struggle to deal with specific classes of benchmarks comprising only hundreds of variables, which contrasts with their widespread use in real-world applications. Consequently, there is an urgent need to uncover the inner workings of these seemingly weak yet powerful black boxes.
In this paper, we present a first step towards this goal by introducing an approach called {CausalSAT}, which employs causal reasoning to gain insights into the functioning of modern SAT solvers. {CausalSAT} initially generates observational data from the execution of SAT solvers and learns a structured graph representing the causal relationships between the components of a SAT solver. Subsequently, given a query such as whether a clause with low literals blocks distance (LBD) has a higher clause utility, {CausalSAT} calculates the causal effect of LBD on clause utility and provides an answer to the question. We use {CausalSAT} to quantitatively verify hypotheses previously regarded as "rules of thumb" or empirical findings, such as the query above or the notion that clauses with high LBD experience a rapid drop in utility over time. Moreover, {CausalSAT} can address previously unexplored questions, like which branching heuristic leads to greater clause utility in order to study the relationship between branching and clause management. Experimental evaluations using practical benchmarks demonstrate that {CausalSAT} effectively fits the data, verifies four "rules of thumb", and provides answers to three questions closely related to implementing modern solvers.
BibTeX - Entry
@InProceedings{yang_et_al:LIPIcs.SAT.2023.28,
author = {Yang, Jiong and Shaw, Arijit and Baluta, Teodora and Soos, Mate and Meel, Kuldeep S.},
title = {{Explaining SAT Solving Using Causal Reasoning}},
booktitle = {26th International Conference on Theory and Applications of Satisfiability Testing (SAT 2023)},
pages = {28:1--28:19},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-286-0},
ISSN = {1868-8969},
year = {2023},
volume = {271},
editor = {Mahajan, Meena and Slivovsky, Friedrich},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/opus/volltexte/2023/18490},
URN = {urn:nbn:de:0030-drops-184909},
doi = {10.4230/LIPIcs.SAT.2023.28},
annote = {Keywords: Satisfiability, Causality, SAT solver, Clause management}
}
Keywords: |
|
Satisfiability, Causality, SAT solver, Clause management |
Collection: |
|
26th International Conference on Theory and Applications of Satisfiability Testing (SAT 2023) |
Issue Date: |
|
2023 |
Date of publication: |
|
09.08.2023 |
Supplementary Material: |
|
Software (Source Code): https://github.com/meelgroup/causalsat |