Streaming transducers for algorithmic verification of single-pass list-processing programs

R Alur, P Černý - Proceedings of the 38th annual ACM SIGPLAN …, 2011 - dl.acm.org
We introduce streaming data string transducers that map input data strings to output data
strings in a single left-to-right pass in linear time. Data strings are (unbounded) sequences of …

Quantitative synthesis for concurrent programs

P Černý, K Chatterjee, TA Henzinger… - … Aided Verification: 23rd …, 2011 - Springer
We present an algorithmic method for the quantitative, performance-aware synthesis of
concurrent programs. The input consists of a nondeterministic partial program and of a …

[PDF][PDF] ReLoC reloaded: A mechanized relational logic for fine-grained concurrency and logical atomicity

D Frumin, R Krebbers… - Logical Methods in …, 2021 - lmcs.episciences.org
We present a new version of ReLoC: a relational separation logic for proving refinements of
programs with higher-order state, fine-grained concurrency, polymorphism and recursive …

An integrated specification and verification technique for highly concurrent data structures

PA Abdulla, F Haziza, L Holík, B Jonsson… - International Journal on …, 2017 - Springer
We present a technique for automatically verifying safety properties of concurrent programs,
in particular programs that rely on subtle dependencies of local states of different threads …

Verifying concurrent search structure templates

S Krishna, N Patel, D Shasha, T Wies - Proceedings of the 41st ACM …, 2020 - dl.acm.org
Concurrent separation logics have had great success reasoning about concurrent data
structures. This success stems from their application of modularity on multiple levels, leading …

How to prove algorithms linearisable

G Schellhorn, H Wehrheim, J Derrick - … CAV 2012, Berkeley, CA, USA, July …, 2012 - Springer
Linearisability is the standard correctness criterion for concurrent data structures. In this
paper, we present a sound and complete proof technique for linearisability based on …

A sound and complete proof technique for linearizability of concurrent data structures

G Schellhorn, J Derrick, H Wehrheim - ACM Transactions on …, 2014 - dl.acm.org
Efficient implementations of data structures such as queues, stacks or hash-tables allow for
concurrent access by many processes at the same time. To increase concurrency, these …

Nondeterministic streaming string transducers

R Alur, JV Deshmukh - International Colloquium on Automata, Languages …, 2011 - Springer
We introduce nondeterministic streaming string transducers (nssts)–a new computational
model that can implement MSO-definable relations between strings. An nsst makes a single …

Verifying linearisability with potential linearisation points

J Derrick, G Schellhorn, H Wehrheim - … Limerick, Ireland, June 20-24, 2011 …, 2011 - Springer
Linearisability is the key correctness criterion for concurrent implementations of data
structures shared by multiple processes. In this paper we present a proof of linearisability of …

Testing for linearizability

G Lowe - Concurrency and Computation: Practice and …, 2017 - Wiley Online Library
Linearizability is a well established correctness condition for concurrent datatypes.
Informally, a concurrent datatype is linearizable if operation calls appear to have an effect …