Identify patterns causing SAT solver sat4j runtime spikes in the learning-based verification experiments

Identify the underlying characteristics of the SAT encodings produced by the reduction of the length-preserving Separability problem to SAT within the authors’ learning-based algorithm for AbstractSafety that cause the SAT solver sat4j to exhibit substantially increased runtimes in a subset of five case studies, despite similar counts and sizes of the input formulas compared to the other case studies. Characterize these conditions to explain and potentially mitigate the observed performance degradation.

Background

The paper proposes a learning-based approach to compute inductive constraints sufficient to prove safety in regular abstraction frameworks, relying on solving instances of the Separability problem via a reduction to SAT (implemented with sat4j).

Across 59 case studies, both the proposed tool and a prior approach typically complete within seconds. However, in five cases the authors observed that their tool takes minutes (more than ten in two cases), and they attribute the slowdowns to sat4j. They explicitly state they have not identified a pattern explaining these runtime spikes, even though the number and size of the SAT formulas passed to the solver are similar to other cases.

Understanding the cause of these slowdowns would inform improvements to the SAT encoding, solver configuration, or learning process, and could guide the design of more efficient verification workflows for regular abstraction frameworks.

References

In these five cases the time performance is dominated by the SAT solver sat4j. We have not yet identified a pattern explaining why sat4j takes so much time, in particular the number and size of the formulas passed to it is similar to the other cases.

Computing Inductive Invariants of Regular Abstraction Frameworks (2404.10752 - Czerner et al., 16 Apr 2024) in Section 5, Subsection "Some experimental results"