Verifying opacity of a modified PSTM

  • Yucheng Fang
  • , Huibiao Zhu*
  • , Jiaqi Yin
  • *Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Software transactional memory (STM) provides programmers with a high-level programming abstraction for synchronization of parallel processes, allowing blocks of codes that execute in an interleaved manner to be treated as an atomic block. Python Software Transactional Memory (PSTM) is an STM implementation in Python language. Its presentation fills a gap that Python lacks an applicable and reliable software transactional memory. PSTM satisfies the basic transaction properties, however it does not satisfy opacity, which defines conditions for serialising concurrent transaction. To alleviate this issue, we modify the PSTM implementation and present a new PSTM called PSTM-M. Based on PSTM-M, we verify opacity of this implementation. We present the formalization of opacity which is based on the history model of transaction. Further, we explain why PSTM does not satisfy opacity and present a modified PSTM called PSTM-M. Finally, we give a machine-checked proof for the opacity of PSTM-M based on the theorem prover Coq.

Original languageEnglish
Title of host publicationProceedings - 2019 13th International Symposium on Theoretical Aspects of Software Engineering, TASE 2019
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages232-239
Number of pages8
ISBN (Electronic)9781728133423
DOIs
StatePublished - Jul 2019
Event13th International Symposium on Theoretical Aspects of Software Engineering, TASE 2019 - Guilin, China
Duration: 29 Jul 201931 Jul 2019

Publication series

NameProceedings - 2019 13th International Symposium on Theoretical Aspects of Software Engineering, TASE 2019

Conference

Conference13th International Symposium on Theoretical Aspects of Software Engineering, TASE 2019
Country/TerritoryChina
CityGuilin
Period29/07/1931/07/19

Keywords

  • Coq
  • Opacity
  • PSTM
  • STM

Fingerprint

Dive into the research topics of 'Verifying opacity of a modified PSTM'. Together they form a unique fingerprint.

Cite this