Unbounded Software Model Checking with Incremental SAT-Solving

02/12/2018
by   Marko Kleine Büning, et al.
0

This paper describes a novel unbounded software model checking approach to find errors in programs written in the C language based on incremental SAT-solving. Instead of using the traditional assumption based API to incremental SAT solvers we use the DimSpec format that is used in SAT based automated planning. A DimSpec formula consists of four CNF formulas representing the initial, goal and intermediate states and the relations between each pair of neighboring states of a transition system. We present a new tool called LLUMC which encodes the presence of certain errors in a C program into a DimSpec formula, which can be solved by either an incremental SAT-based DimSpec solver or the IC3 algorithm for invariant checking. We evaluate the approach in the context of SAT-based model checking for both the incremental SAT-solving and the IC3 algorithm. We show that our encoding expands the functionality of bounded model checkers by also covering large and infinite loops, while still maintaining a feasible time performance. Furthermore, we demonstrate that our approach offers the opportunity to generate runtime-optimizations by utilizing parallel SAT-solving.

READ FULL TEXT

page 1

page 2

page 3

page 4

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/05/2023

2LS for Program Analysis

2LS ("tools") is a verification tool for C programs, built upon the CPRO...
research
03/06/2019

Pinaka: Symbolic Execution meets Incremental Solving (Competition Contribution)

Many modern-day solvers offer functionality for incremental SAT solving,...
research
10/10/2018

A Toolbox For Property Checking From Simulation Using Incremental SAT (Extended Abstract)

We present a tool that primarily supports the ability to check bounded p...
research
06/30/2023

Speculative SAT Modulo SAT

State-of-the-art model-checking algorithms like IC3/PDR are based on uni...
research
09/23/2020

Efficient Incremental Modelling and Solving

In various scenarios, a single phase of modelling and solving is either ...
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