As a program can be modeled as data structures and control flows, the program verification problem can be reduced into verification of control flows with respect to the program data. Although a control flow can be represented as a Petri Net, the original Petri Net is not strong enough in representing a program without considering the program data. In this work, we focus on verifying a so-called Control Flow Petri Net (CF-PN) structure, a special form of Petri Net, which can capture both control flows and data manipulations of a program. This structure can also capture synchronization in concurrency systems such as multi-thread programs or asynchronous circuits. A model checking module for verifying such structures has been developed and added to PAT, a model checking tool originated from National University of Singapore (NUS). We also demonstrate our method in some working case studies of well-known verification situations.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.