Algebraic Semantics for C++11 Memory Model

Lili Xiao, Huibiao Zhu, Mengda He, Shengchao Qin

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The C++11 standard introduced a language level weak memory model (i.e., the C++11 memory model) to improve the performance of the execution of C/C++ programs. Algebra is well-suited for direct use by engineers in symbolic calculation of parameters. It is a challenge to investigate the algebraic semantics for the C++11 memory model. Inspired by the promising semantics, in this paper, we explore the algebraic laws for the C++11 memory model, including a set of sequential and parallel expansion laws. We introduce the concept of guarded choice, and every program under the C++11 memory model can be converted into the head normal form of guarded choice. In addition, the proposed algebraic laws are implemented in the rewriting engine Maude.

Original languageEnglish
Title of host publication2022 IEEE 46th Annual Computers, Software, and Applications Conference
Subtitle of host publicationProceedings
EditorsHong Va Leong, Sahra Sedigh Sarvestani, Yuuichi Teranishi, Alfredo Cuzzocrea, Hiroki Kashiwazaki, Dave Towey, Ji-Jiang Yang, Hossain Shahriar
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages1513-1518
Number of pages6
ISBN (Electronic)9781665488105
DOIs
Publication statusPublished - 10 Aug 2022
Event46th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2022 - Virtual, Online, United States
Duration: 27 Jun 20221 Jul 2022

Publication series

NameProceedings - 2022 IEEE 46th Annual Computers, Software, and Applications Conference, COMPSAC 2022

Conference

Conference46th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2022
Abbreviated titleCOMPSAC
Country/TerritoryUnited States
CityVirtual, Online
Period27/06/221/07/22

Bibliographical note

Funding Information:
In the future, we will continue our work on the C++11 memory model. We would like to investigate the semantics linking theories of this memory model. Acknowledgements. This work was partly supported by the National Key Research and Development Program of China (Grant No. 2018YFB2101300), the National Natural Science Foundation of China (Grant Nos. 61872145, 62032024), Shanghai Trusted Industry Internet Software Collaborative Innovation Center, and the Dean’s Fund of Shanghai Key Laboratory of Trustworthy Computing (East China Normal University).

Publisher Copyright:
© 2022 IEEE.

Fingerprint

Dive into the research topics of 'Algebraic Semantics for C++11 Memory Model'. Together they form a unique fingerprint.

Cite this