Program Dependence Net and Its Slice for Verifying Linear Temporal Properties

01/27/2023
by   Zhijun Ding, et al.
0

The finite-state model checking of software is still limited by the notorious state-explosion problem. The dependence-based program slicing is effective to reduce the verification time and is orthogonal to other reduction techniques of model checking. However, within slicing concurrent programs for model checking, the conversions between multiple irreplaceable models and the calculation of dependencies for some variables irrelevant to the verified property produce redundant calculating costs. Thus, we propose a Program Dependence Net (PDNet) as a unified model combining the control-flow structure with dependencies to avoid the model conversions. For reduction, we propose a PDNet slicing to capture the relevant variables' dependencies on demand. The calculating costs could be significantly compressed by our unified model and on-demand slicing based on PDNet. Then, we implemented a concurrent program model checking tool based on PDNet and its slice. Finally, we validated the advantages of our methods.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/25/2019

Model Checking Data Flows in Concurrent Network Updates (Full Version)

We present a model checking approach for the verification of data flow c...
research
10/15/2021

BPPChecker: An SMT-based Model Checker on Basic Parallel Processes(Full Version)

Program verification on concurrent programs is a big challenge due to ge...
research
11/02/2020

Out of Control: Reducing Probabilistic Models by Control-State Elimination

We present a new, simple technique to reduce state space sizes in probab...
research
07/10/2018

Datalog-based Scalable Semantic Diffing of Concurrent Programs

When an evolving program is modified to address issues related to thread...
research
08/07/2018

A Spin-based model checking for the simple concurrent program on a preemptive RTOS

We adapt an existing preemptive scheduling model of RTOS kernel by eChro...
research
06/19/2023

Partial-order Checking with Unfolding for Linear Temporal Properties

Unfolding can tackle the path-explosion problem caused by concurrency. T...
research
01/31/2022

Network Programming via Computable Products

The User Plane Function (UPF) aims to provide network services in the 3G...

Please sign up or login with your details

Forgot password? Click here to reset