SAT-based Analysis of Large Real-world Feature Models is Easy

06/17/2015
by   Jia Hui Liang, et al.
0

Modern conflict-driven clause-learning (CDCL) Boolean SAT solvers provide efficient automatic analysis of real-world feature models (FM) of systems ranging from cars to operating systems. It is well-known that solver-based analysis of real-world FMs scale very well even though SAT instances obtained from such FMs are large, and the corresponding analysis problems are known to be NP-complete. To better understand why SAT solvers are so effective, we systematically studied many syntactic and semantic characteristics of a representative set of large real-world FMs. We discovered that a key reason why large real-world FMs are easy-to-analyze is that the vast majority of the variables in these models are unrestricted, i.e., the models are satisfiable for both true and false assignments to such variables under the current partial assignment. Given this discovery and our understanding of CDCL SAT solvers, we show that solvers can easily find satisfying assignments for such models without too many backtracks relative to the model size, explaining why solvers scale so well. Further analysis showed that the presence of unrestricted variables in these real-world models can be attributed to their high-degree of variability. Additionally, we experimented with a series of well-known non-backtracking simplifications that are particularly effective in solving FMs. The remaining variables/clauses after simplifications, called the core, are so few that they are easily solved even with backtracking, further strengthening our conclusions.

READ FULL TEXT
research
10/29/2019

G2SAT: Learning to Generate SAT Formulas

The Boolean Satisfiability (SAT) problem is the canonical NP-complete pr...
research
10/21/2019

On speeding up factoring with quantum SAT solvers

There have been several efforts to apply quantum SAT solving methods to ...
research
06/04/2021

Certified DQBF Solving by Definition Extraction

We propose a new decision procedure for dependency quantified Boolean fo...
research
03/27/2023

On CNF Conversion for SAT Enumeration

Modern SAT solvers are designed to handle problems expressed in Conjunct...
research
10/12/2021

Reverse Engineering Code Dependencies: Converting Integer-Based Variability to Propositional Logic

A number of SAT-based analysis concepts and tools for software product l...
research
07/27/2021

On Improving the Backjump Level in PB Solvers

Current PB solvers implement many techniques inspired by the CDCL archit...
research
06/09/2023

Explaining SAT Solving Using Causal Reasoning

The past three decades have witnessed notable success in designing effic...

Please sign up or login with your details

Forgot password? Click here to reset