https://www.mdu.se/

mdu.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Efficient Linearizability Monitoring
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Uppsala University, Uppsala, Sweden.
Uppsala University, Uppsala, Sweden.
Uppsala University, Uppsala, Sweden.
IIT Bombay, Mumbai, India.
Show others and affiliations
2025 (English)In: Proceedings of the ACM on Programming Languages, E-ISSN 2475-1421, Vol. 9, article id 225Article in journal (Refereed) Published
Abstract [en]

This paper revisits the fundamental problem of monitoring the linearizability of concurrent stacks, queues, sets, and multisets. Given a history of a library implementing one of these abstract data types, the monitoring problem is to answer whether the given history is linearizable. For stacks, queues, and (multi)sets, we present monitoring algorithms with complexities O(n2), O(n logn), and O(n), respectively, where n is the number of operations in the input history. For stacks and queues, our results hold under the standard assumption of data-independence, i.e., the behavior of the library is not sensitive to the actual values stored in the data structure. Past works to solve the same problems have cubic time complexity and (more seriously) have correctness issues: they either (i) lack correctness proofs or (ii) the suggested correctness proofs are erroneous (we present counter-examples), or (iii) have incorrect algorithms. Our improved complexity results rely on substantially different algorithms for which we provide detailed proofs of correctness. We have implemented our stack and queue algorithms in LiMo (Linearizability Monitor). We evaluate LiMo and compare it with the state-of-the-art tool Violin – whose correctness proofs we have found errors in – which checks for linearizability violations. Our experimental evaluation confirms that LiMo outperforms Violin regarding both efficiency and scalability.

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM) , 2025. Vol. 9, article id 225
Keywords [en]
Concurrent Data Structures, Linearizability, Testing, Computational complexity, Linearization, Queueing theory, Abstract data, Correctness proofs, Data independence, Datatypes, Monitoring algorithms, Multi-sets, Standard assumptions, Time complexity, Abstract data types
National Category
Computer and Information Sciences
Identifiers
URN: urn:nbn:se:mdh:diva-72417DOI: 10.1145/3729328ISI: 001638771600001Scopus ID: 2-s2.0-105008274441OAI: oai:DiVA.org:mdh-72417DiVA, id: diva2:1976745
Available from: 2025-06-25 Created: 2025-06-25 Last updated: 2026-04-01Bibliographically approved

Open Access in DiVA

fulltext(2687 kB)3 downloads
File information
File name FULLTEXT01.pdfFile size 2687 kBChecksum SHA-512
3436212888a263b6faab77ef084573be209dafe47f5b923964661c6919e9920c7421a62ee47c412b59ad31af9e4c7fa6e38660ea2e65266b91a7e2b3bb3c8aff
Type fulltextMimetype application/pdf

Other links

Publisher's full textScopus

Authority records

Aziz Abdulla, Parosh

Search in DiVA

By author/editor
Aziz Abdulla, Parosh
By organisation
Embedded Systems
In the same journal
Proceedings of the ACM on Programming Languages
Computer and Information Sciences

Search outside of DiVA

GoogleGoogle Scholar
Total: 3 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 36 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf