| 摘要: |
| 异步通信程序是进程间通过异步消息通信实现非阻塞并发的程序.当前异步通信程序的程序验证问题通常将其归约至向量加法系统及其扩展模型,因而复杂度很高,缺乏高效工具.基本并行进程作为向量加法系统的一个子类,其可达性的验证问题为NP完备.首先,改进了Osualdo等人提出的为异步通信程序建模的Actor通信系统,将其归约至基本并行进程.然后,实现了基本并行进程的模型检测工具RABLE,实验结果表明,验证方法在异步通信程序的一系列程序验证问题上具有比已有工具更高效的结果. |
| 关键词: 异步通信程序 基本并行进程 Actor通信系统 模型检测 可达性 |
| DOI:10.13328/j.cnki.jos.006598 |
| 分类号:TP311 |
| 基金项目:国家自然科学基金(61872232,61732013) |
|
| Verification Method of Asynchronously Communicating Programs Based on Basic Parallel Processes |
|
ZHAO Ying, TAN Jin-Hao, LI Guo-Qiang
|
|
School of Software, Shanghai Jiao Tong University, Shanghai 200240, China
|
| Abstract: |
| Asynchronously communicating program is the program that processes achieve non-blocking concurrency through asynchronous message passing. At present, the verification problem of asynchronously communicating program is usually reduced to vector addition system and its extension model, so it has high complexity and lack of efficient tools. Basic Parallel Processes, as a subclass of vector addition system, whose verification of complexity reachability is NP-complete, can also be used as an important model for verifying concurrent programs. Firstly, improve the Actor communicating system proposed by Osualdo, et al., by reducing it to Basic Parallel Processes. Then, realizing an automatic model checker for basic parallel processes named RABLE. The experimental results show that the verification method is more efficient than the existing tools for a series of program verification problems of asynchronously communicating programs. |
| Key words: asynchronously communicating program basic parallel processes actor communicating system model checking reachability |