Abstract

Incremental satisfiability (SAT) solving is an extension of classic SAT solving that allows users to efficiently solve a set of related SAT problems by identifying and exploiting shared terms. However, using incremental solvers effectively is hard since performance is sensitive to a problem's structure and the order sub-terms are fed to the solver, and the burden to track results is placed on the end user. For analyses that generate sets of related SAT problems, such as those in software product lines, incremental SAT solvers are either not used at all, used but not explicitly stated so in the literature, or used but suffer from the aforementioned usability problems. This paper translates the ordering problem to an encoding problem and automates the use of incremental SAT solving. We introduce variational SAT solving, which differs from incremental SAT solving by accepting all related problems as a single variational input and returning all results as a single variational output. Our central idea is to make explicit the operations of incremental SAT solving, thereby encoding differences between related SAT problems as local points of variation. Our approach automates the interaction with the incremental solver and enables methods to automatically optimize sharing of the input. To evaluate our methods we construct a prototype variational SAT solver and perform an empirical analysis on two real-world datasets that applied incremental solvers to software evolution scenarios. We show, assuming a variational input, that the prototype solver scales better for these problems than naive incremental solving while also removing the need to track individual results.

Keywords:
Solver Computer science Boolean satisfiability problem Satisfiability Usability Software Set (abstract data type) Construct (python library) Encoding (memory) Theoretical computer science Mathematical optimization Algorithm Mathematics Programming language Artificial intelligence

Metrics

3
Cited By
0.29
FWCI (Field Weighted Citation Impact)
68
Refs
0.64
Citation Normalized Percentile
Is in top 1%
Is in top 10%

Citation History

Topics

Advanced Software Engineering Methodologies
Physical Sciences →  Computer Science →  Artificial Intelligence
Software Engineering Research
Physical Sciences →  Computer Science →  Information Systems
Service-Oriented Architecture and Web Services
Physical Sciences →  Computer Science →  Information Systems

Related Documents

JOURNAL ARTICLE

SOLVING INCREMENTAL SATISFIABILITY

Malek MouhoubSamira Sadaoui

Journal:   International Journal of Artificial Intelligence Tools Year: 2007 Vol: 16 (01)Pages: 139-147
JOURNAL ARTICLE

Solving propositional satisfiability problems

R. G. JeroslowJinchang Wang

Journal:   Annals of Mathematics and Artificial Intelligence Year: 1990 Vol: 1 (1-4)Pages: 167-187
© 2026 ScienceGate Book Chapters — All rights reserved.