On the (Non-)Applicability of a Small Model Theorem to Model Checking STMs

07/01/2021
by   Heike Wehrheim, et al.
0

Software Transactional Memory (STM) algorithms provide programmers with a synchronisation mechanism for concurrent access to shared variables. Basically, programmers can specify transactions (reading from and writing to shared state) which execute "seemingly" atomic. This property is captured in a correctness criterion called opacity. For model checking opacity of an STM algorithm, we – in principle – need to check opacity for all possible combinations of transactions writing to and reading from potentially unboundedly many variables. To still apply automatic model checking techniques to opacity checking, a so called small model theorem has been proven which states that model checking on two variables and two transactions is sufficient for correctness verification of STMs. In this paper, we take a fresh look at this small model theorem and investigate its applicability to opacity checking of STM algorithms.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

06/04/2020

Automatic Verification of LLVM Code

In this work we present our work in developing a software verification t...
11/18/2019

Combined Covers and Beth Definability

In ESOP 2008, Gulwani and Musuvathi introduced a notion of cover and exp...
04/21/2021

Tutorial: Designing Distributed Software in mCRL2

Distributed software is very tricky to implement correctly as some error...
07/23/2019

Using Model Checking to Formally Verify Rendezvous Algorithms for Robots with Lights in Euclidean Space

The paper details the first successful attempt at using model-checking t...
04/16/2019

VeriVANca: An Actor-Based Framework for Formal Verification of Warning Message Dissemination Schemes in VANETs

One of the applications of vehicular ad-hoc networks is warning message ...
09/07/2021

Statistical Model Checking of Common Attack Scenarios on Blockchain

Blockchain technology has developed significantly over the last decade. ...
02/14/2020

Sthread: In-Vivo Model Checking of Multithreaded Programs

This work strives to make formal verification of POSIX multithreaded pro...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.