TY - JOUR

T1 - Kater

T2 - Automating Weak Memory Model Metatheory and Consistency Checking

AU - Kokologiannakis, Michalis

AU - Lahav, Ori

AU - Vafeiadis, Viktor

N1 - Publisher Copyright:
© 2023 Owner/Author.

PY - 2023/1/9

Y1 - 2023/1/9

N2 - The metatheory of axiomatic weak memory models covers questions like the correctness of compilation mappings from one model to another and the correctness of local program transformations according to a given model - -topics usually requiring lengthy human investigation. We show that these questions can be solved by answering a more basic question: "Given two memory models, is one weaker than the other?"Moreover, for a wide class of axiomatic memory models, we show that this basic question can be reduced to a language inclusion problem between regular languages, which is decidable. Similarly, implementing an efficient check for whether an execution graph is consistent according to a given memory model has required non-trivial manual effort. Again, we show that such efficient checks can be derived automatically for a wide class of axiomatic memory models, and that incremental consistency checks can be incorporated in GenMC, a state-of-the-art model checker for concurrent programs. As a result, we get the first time- and space-efficient bounded verifier taking the axiomatic memory model as an input parameter.

AB - The metatheory of axiomatic weak memory models covers questions like the correctness of compilation mappings from one model to another and the correctness of local program transformations according to a given model - -topics usually requiring lengthy human investigation. We show that these questions can be solved by answering a more basic question: "Given two memory models, is one weaker than the other?"Moreover, for a wide class of axiomatic memory models, we show that this basic question can be reduced to a language inclusion problem between regular languages, which is decidable. Similarly, implementing an efficient check for whether an execution graph is consistent according to a given memory model has required non-trivial manual effort. Again, we show that such efficient checks can be derived automatically for a wide class of axiomatic memory models, and that incremental consistency checks can be incorporated in GenMC, a state-of-the-art model checker for concurrent programs. As a result, we get the first time- and space-efficient bounded verifier taking the axiomatic memory model as an input parameter.

KW - Kleene Algebra with Tests

KW - Model Checking

KW - Weak Memory Models

UR - http://www.scopus.com/inward/record.url?scp=85146547366&partnerID=8YFLogxK

U2 - 10.1145/3571212

DO - 10.1145/3571212

M3 - ???researchoutput.researchoutputtypes.contributiontojournal.article???

AN - SCOPUS:85146547366

SN - 2475-1421

VL - 7

SP - 544

EP - 572

JO - Proceedings of the ACM on Programming Languages

JF - Proceedings of the ACM on Programming Languages

ER -