Skip to main content
QUICK REVIEW

[Paper Review] Learning a SAT Solver from Single-Bit Supervision

Daniel Selsam, Matthew Lamm|arXiv (Cornell University)|Feb 11, 2018
Constraint Satisfaction and OptimizationComputer Science24 references189 citations
TL;DR

NeuroSAT is a message-passing neural network trained only to predict SAT/UNSAT, which can then decode satisfying assignments and solve larger/different SAT problems by running more iterations.

ABSTRACT

We present NeuroSAT, a message passing neural network that learns to solve SAT problems after only being trained as a classifier to predict satisfiability. Although it is not competitive with state-of-the-art SAT solvers, NeuroSAT can solve problems that are substantially larger and more difficult than it ever saw during training by simply running for more iterations. Moreover, NeuroSAT generalizes to novel distributions; after training only on random SAT problems, at test time it can solve SAT problems encoding graph coloring, clique detection, dominating set, and vertex cover problems, all on a range of distributions over small random graphs.

Motivation & Objective

  • Develop a neural network that learns to solve SAT problems by being trained as a SAT classifier with minimal supervision.
  • Enforce permutation and negation invariances through graph-based encoding of SAT problems.
  • Demonstrate the model’s ability to solve larger problems and transfer to different domains.
  • Show that solving can be achieved by decoding solutions from network activations.
  • Explore unsat-core detection and its use for unsatisfiability proofs.

Proposed method

  • Encode SAT problems as bipartite graphs with literal and clause nodes and complementary literal edges.
  • Use a message-passing neural network (NeuroSAT) with two-stage updates per iteration (clause->literals, literals->clauses) and LSTMs for state updates.
  • Maintain permutation and negation invariance by graph-based topology and literal-complement relations.
  • Compute a scalar vote per literal after T iterations and predict satisfiability via a sigmoid loss.
  • Train on a single-bit labeled dataset generated from SR(n) where one satisfiable and one unsatisfiable instance differ by one literal.
  • Demonstrate decoding of satisfying assignments from final literal embeddings via clustering.

Experimental results

Research questions

  • RQ1Can a neural network trained only to classify SAT problems learn a procedure to find satisfying assignments?
  • RQ2Does NeuroSAT generalize beyond the training distribution to larger sizes and entirely different problem domains encoded as SAT?
  • RQ3Can the same architecture be used to identify unsat cores and assist in proving unsatisfiability?
  • RQ4What mechanisms underlie the decoding of solutions from NeuroSAT activations, and how reliable is it across instances?

Key findings

  • NeuroSAT achieves 85% accuracy on SR(U(10,40)) test set for satisfiability classification.
  • On satisfiable problems, NeuroSAT correctly predicts SAT with 73% accuracy and decodes a satisfying assignment for 70% of such problems.
  • On unsatisfiable problems, NeuroSAT achieves 96% accuracy for UNSAT.
  • NeuroSAT can solve significantly larger problems than seen during training by running more iterations (e.g., 25% of SR(n) for n=200 with extended iterations).
  • NeuroSAT generalizes to SAT problems encoding graph coloring, clique detection, dominating set, and vertex cover across various random graph distributions.
  • NeuroUNSAT can achieve 100% accuracy on detecting satisfiability when trained on data with small unsat cores, and can decode core literals from activations.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.