Proving Correctness of Parallel Implementations of Transition System Models

被引:0
|
作者
De Boer, Frank [1 ]
Johnsen, Einar Broch [2 ]
Pun, Violet Ka i [3 ]
Tarifa, Silvia Lizeth Tapia [2 ]
机构
[1] CWI, Amsterdam, Netherlands
[2] Univ Oslo, Oslo, Norway
[3] Western Norway Univ Appl Sci, Bergen, Norway
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 2024年 / 46卷 / 03期
关键词
Correctness; transition system models; active objects; simulation; multicore memory systems; ARCHITECTURES; VERIFICATION; SEMANTICS;
D O I
10.1145/3660630
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This article addresses the long-standing problem of program correctness for programs that describe systems of parallel executing processes. We propose a new method for proving correctness of parallel implementations of high-level models expressed as transition systems. The implementation language underlying the method is based on the concurrency model of actors and active objects. The method defines program correctness in terms of a simulation relation between the transition system that specifies the program semantics of the parallel program and the transition system that is described by the correctness specification. The simulation relation itself abstracts from the fine-grained interleaving of parallel processes by exploiting a global confluence property of the concurrency model of the implementation language considered in this article. As a proof of concept, we apply our method to the correctness of a parallel simulator of multicore memory systems.
引用
收藏
页数:50
相关论文
共 50 条
  • [21] Structuredness and its significance for correctness of process models
    Ralf Laue
    Jan Mendling
    Information Systems and e-Business Management, 2010, 8 : 287 - 307
  • [22] Proving total correctness and generating preconditions for loop programs via symbolic-numeric computation methods
    Lin, Wang
    Wu, Min
    Yang, Zhengfeng
    Zeng, Zhenbing
    FRONTIERS OF COMPUTER SCIENCE, 2014, 8 (02) : 192 - 202
  • [23] Correctness of the vertical discretization in hydrostatic atmospheric models
    Bourchtein, Andrei
    Bourchtein, Ludmila
    Kadychnikov, Vladimir
    QUARTERLY JOURNAL OF THE ROYAL METEOROLOGICAL SOCIETY, 2009, 135 (638) : 263 - 276
  • [24] Verification of low-level crypto-protocol implementations -: Using automated theorem proving
    Jürjens, J
    THIRD ACM & IEEE INTERNATIONAL CONFERENCE ON FORMAL METHODS AND MODELS FOR CO-DESIGN, PROCEEDINGS, 2005, : 89 - 98
  • [25] NDSeq: Runtime Checking for Nondeterministic Sequential Specifications of Parallel Correctness
    Burnim, Jacob
    Elmas, Tayfun
    Necula, George
    Sen, Koushik
    ACM SIGPLAN NOTICES, 2011, 46 (06) : 401 - 414
  • [26] Checking Models, Proving Programs, and Testing Systems
    Gaudel, Marie-Claude
    TESTS AND PROOFS, TAP 2011, 2011, 6706 : 1 - 13
  • [27] The parallel system for integrating impact models and sectors (pSIMS)
    Elliott, Joshua
    Kelly, David
    Chryssanthacopoulos, James
    Glotter, Michael
    Jhunjhnuwala, Kanika
    Best, Neil
    Wilde, Michael
    Foster, Ian
    ENVIRONMENTAL MODELLING & SOFTWARE, 2014, 62 : 509 - 516
  • [28] Correctness proof of an operating system kernel for hard real time computing
    Hamuda, G
    Halang, W
    DESDES '1: PROCEEDINGS OF THE INTERNATIONAL WORKSHOP ON DISCRETE-EVENT SYSTEM DESIGN, 2001, : 115 - 120
  • [29] On the Implementation and Correctness of Information System Upgrades
    Haller, Klaus
    2010 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2010,
  • [30] Proving the Fidelity of Simulations of Event-B Models
    Yang, Faqing
    Jacquot, Jean-Pierre
    Souquieres, Jeanine
    2014 IEEE 15TH INTERNATIONAL SYMPOSIUM ON HIGH-ASSURANCE SYSTEMS ENGINEERING (HASE), 2014, : 89 - 96