Formal Modelling of Program Dependence Net for Software Model Checking

Authors

  • Shuo Li School of Information Science and Technology, Taishan University Taian, 271000, China
  • Zhijun Ding Department of Computer Science, Tongji University, Shanghai, 201804, China
  • Meiqin Pan School of Business and Management, Shanghai International Studies University, Shanghai, 200083, China

DOI:

https://doi.org/10.31577/cai_2024_5_1161

Keywords:

Formal modelling, operational semantics, PThread, PDNet, LTL

Abstract

Program dependence net (PDNet) is a kind of Petri nets which can represent concurrent systems and software to apply the automata-theoretic approach for software model checking on Linear Temporal Logic (LTL). This paper presents a formal modelling method to construct a PDNet which is consistent with the behavior of multi-threaded C programs (PThread programs) from a source code. For concurrent programs with a function call and POSIX threads, we propose the formal operational semantics by the labeled transition system (LTS). We formalize the statements by the basic PDNet structure based on LTS operational semantics. Then, we propose the formal modelling method to build a basic flow to simulate the execution of PThread programs. Finally, we give a case study to illustrate the formal modelling method for verifying PThread programs on LTL properties.

Downloads

Download data is not yet available.

Downloads

Published

2024-10-31

How to Cite

Li, S., Ding, Z., & Pan, M. (2024). Formal Modelling of Program Dependence Net for Software Model Checking. Computing and Informatics, 43(5), 1161–1184. https://doi.org/10.31577/cai_2024_5_1161