Speculative SAT Modulo SAT

06/30/2023
by   Hari Govind V K, et al.
0

State-of-the-art model-checking algorithms like IC3/PDR are based on uni-directional modular SAT solving for finding and/or blocking counterexamples. Modular SAT solvers divide a SAT-query into multiple sub-queries, each solved by a separate SAT solver (called a module), and propagate information (lemmas, proof obligations, blocked clauses, etc.) between modules. While modular solving is key to IC3/PDR, it is obviously not as effective as monolithic solving, especially when individual sub-queries are harder to solve than the combined query. This is partially addressed in SAT modulo SAT (SMS) by propagating unit literals back and forth between the modules and using information from one module to simplify the sub-query in another module as soon as possible (i.e., before the satisfiability of any sub-query is established). However, bi-directionality of SMS is limited because of the strict order between decisions and propagation – only one module is allowed to make decisions, until its sub-query is SAT. In this paper, we propose a generalization of SMS, called SPEC SMS, that speculates decisions between modules. This makes it bi-directional – decisions are made in multiple modules, and learned clauses are exchanged in both directions. We further extend DRUP proofs and interpolation, these are useful in model checking, to SPEC SMS. We have implemented SPEC SMS in Z3 and show that it performs exponentially better on a series of benchmarks that are provably hard for SMS.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/04/2022

Proof-Stitch: Proof Combination for Divide and Conquer SAT Solvers

With the increasing availability of parallel computing power, there is a...
research
06/24/2020

Formalizing the Soundness of the Encoding Methods of SAT-based Model Checking

One of the effective model checking methods is to utilize the efficient ...
research
02/12/2018

Unbounded Software Model Checking with Incremental SAT-Solving

This paper describes a novel unbounded software model checking approach ...
research
10/26/2021

NeuroComb: Improving SAT Solving with Graph Neural Networks

Propositional satisfiability (SAT) is an NP-complete problem that impact...
research
07/27/2022

Scalable Proof Producing Multi-Threaded SAT Solving with Gimsatul through Sharing instead of Copying Clauses

We give a first account of our new parallel SAT solver Gimsatul. Its key...
research
01/20/2023

Counterexample Guided Abstraction Refinement with Non-Refined Abstractions for Multi-Agent Path Finding

Counterexample guided abstraction refinement (CEGAR) represents a powerf...
research
08/02/2022

Stratified Certification for k-Induction

Our recently proposed certification framework for bit-level k-induction-...

Please sign up or login with your details

Forgot password? Click here to reset