Bounded verification of message-passing concurrency in Go using Promela and Spin

被引:10
作者
Dilley, Nicolas [1 ]
Lange, Julien [1 ]
机构
[1] Univ Kent, Canterbury, Kent, England
来源
ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE | 2020年 / 314期
关键词
D O I
10.4204/EPTCS.314.4
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper describes a static verification framework for the message-passing fragment of the Go programming language. Our framework extracts models that over-approximate the message-passing behaviour of a program. These models, or behavioural types, are encoded in Promela, hence can be efficiently verified with Spin. We improve on previous works by verifying programs that include communication-related parameters that are unknown at compile-time, i.e., programs that spawn a parameterised number of threads or that create channels with a parameterised capacity. These programs are checked via a bounded verification approach with bounds provided by the user.
引用
收藏
页码:34 / 45
页数:12
相关论文
共 50 条
[21]   Using the Pilot Library to Teach Message-Passing Programming [J].
Gardner, William B. ;
Carter, John D. .
2014 WORKSHOP ON EDUCATION FOR HIGH PERFORMANCE COMPUTING (EDUHPC), 2014, :1-8
[22]   Dynamically instrumenting message-passing programs using virtual clocks [J].
Zhang, K ;
Sun, CZ ;
Li, KC .
SEVENTH INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE DISTRIBUTED COMPUTING - PROCEEDINGS, 1998, :340-341
[23]   Implementation of a simultaneous message-passing protocol using optical vortices [J].
Szatkowski, Mateusz ;
Koechlin, Julian ;
Lopez-Mago, Dorilian .
OPTICS AND LASER TECHNOLOGY, 2021, 133
[24]   SIMULATION WITH ACTORS USING TIME-REFERENCED MESSAGE-PASSING [J].
SENTENI, A ;
SALLE, P ;
LAPALME, G .
SIMULATION METHODOLOGIES, LANGUAGES AND ARCHITECTURES AND AI AND GRAPHICS FOR SIMULATION, 1989, :109-114
[25]   THE PERFORMANCE OF MESSAGE-PASSING USING RESTRICTED VIRTUAL MEMORY REMAPPING [J].
TZOU, SY ;
ANDERSON, DP .
SOFTWARE-PRACTICE & EXPERIENCE, 1991, 21 (03) :251-267
[26]   Modeling and verification of interactive flexible multimedia presentations using PROMELA/SPIN [J].
Aygün, RS ;
Zhang, AD .
MODEL CHECKING SOFTWARE, PROCEEDINGS, 2002, 2318 :205-212
[27]   Multi-agent structured optimization over message-passing architectures with bounded communication delays [J].
Latafat, Puya ;
Patrinos, Panagiotis .
2018 IEEE CONFERENCE ON DECISION AND CONTROL (CDC), 2018, :1688-1693
[28]   Two-Phase Dynamic Analysis of Message-Passing Go Programs Based on Vector Clocks [J].
Sulzmann, Martin ;
Stadtmueller, Kai .
PPDP'18: PROCEEDINGS OF THE 20TH INTERNATIONAL SYMPOSIUM ON PRINCIPLES AND PRACTICE OF DECLARATIVE PROGRAMMING, 2018,
[29]   ABSTRACTION FROM COLLABORATION BETWEEN AGENTS USING ASYNCHRONOUS MESSAGE-PASSING [J].
Kristensen, Bent Bruun .
ICEIS 2010: PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS, VOL 4: SOFTWARE AGENTS AND INTERNET COMPUTING, 2010, :86-92
[30]   On the abstraction of message-passing communications using algorithmic skeletons -: A case study [J].
González-Vélez, H .
ADVANCED DISTRIBUTED SYSTEMS, 2005, 3563 :43-50