English

Incremental Symbolic Bounded Model Checking of Software Using Interval Methods via Contractors

Software Engineering 2022-09-22 v3 Logic in Computer Science

Abstract

Bounded model checking (BMC) is vital for finding program property violations. For unsafe programs, BMC can quickly find an execution path from an initial state to the violated state that refutes a given safety property. However, BMC techniques struggle to falsify programs that contain loops. BMC needs to incrementally unfold the program loops up to the bound kk, exposing the property violation, which can thus lead to exploring a considerable state space. Here, we describe and evaluate the first verification method based on interval methods via contractors to reduce the domains of variables representing the search space. This reduction is based on the specified property modeled as functions representing the contractor constraints. In particular, we exploit interval methods via contractors to incrementally analyze the program loop variables and contract the domain where the property is guaranteed to hold to prune the search exploration, thus reducing resource consumption aggressively. Experimental results demonstrate the efficiency and efficacy of our proposed approach over a large set of benchmarks, including 70447044 verification tasks, compared with state-of-the-art BMC tools. Our proposed method can reduce memory usage up to 7575\% while verifying 11\% more verification tasks.

Keywords

Cite

@article{arxiv.2012.11245,
  title  = {Incremental Symbolic Bounded Model Checking of Software Using Interval Methods via Contractors},
  author = {Mohannad Aldughaim and Kaled Alshmrany and Rafael Menezes and Lucas Cordeiro and Alexandru Stancu},
  journal= {arXiv preprint arXiv:2012.11245},
  year   = {2022}
}
R2 v1 2026-06-23T21:07:21.211Z