An integrated specification and verification technique for highly concurrent data structures for highly concurrent data structures
Identifikátory výsledku
Kód výsledku v IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F00216305%3A26230%2F17%3APU126456" target="_blank" >RIV/00216305:26230/17:PU126456 - isvavai.cz</a>
Výsledek na webu
<a href="https://link.springer.com/article/10.1007/s10009-016-0415-4" target="_blank" >https://link.springer.com/article/10.1007/s10009-016-0415-4</a>
DOI - Digital Object Identifier
<a href="http://dx.doi.org/10.1007/s10009-016-0415-4" target="_blank" >10.1007/s10009-016-0415-4</a>
Alternativní jazyky
Jazyk výsledku
angličtina
Název v původním jazyce
An integrated specification and verification technique for highly concurrent data structures for highly concurrent data structures
Popis výsledku v původním jazyce
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, such as lock-free implementations of stacks and queues in an environment without garbage collection. Our technique addresses the joint challenges of infinite-state specifications, an unbounded number of threads, and an unbounded heap managed by explicit memory allocation. Our technique builds on the automata-theoretic approach to model checking, in which a specification is given by an automaton that observes the execution of a program and accepts executions that violate the intended specification. We extend this approach by allowing specifications to be given by a class of infinite-state automata. We show how such automata can be used to specify queues, stacks, and other data structures, by extending a data-independence argument. For verification, we develop a shape analysis, which tracks correlations between pairs of threads, and a novel abstraction to make the analysis practical. We have implemented our method and used it to verify programs, some of which have not been verified by any other automatic method before.
Název v anglickém jazyce
An integrated specification and verification technique for highly concurrent data structures for highly concurrent data structures
Popis výsledku anglicky
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, such as lock-free implementations of stacks and queues in an environment without garbage collection. Our technique addresses the joint challenges of infinite-state specifications, an unbounded number of threads, and an unbounded heap managed by explicit memory allocation. Our technique builds on the automata-theoretic approach to model checking, in which a specification is given by an automaton that observes the execution of a program and accepts executions that violate the intended specification. We extend this approach by allowing specifications to be given by a class of infinite-state automata. We show how such automata can be used to specify queues, stacks, and other data structures, by extending a data-independence argument. For verification, we develop a shape analysis, which tracks correlations between pairs of threads, and a novel abstraction to make the analysis practical. We have implemented our method and used it to verify programs, some of which have not been verified by any other automatic method before.
Klasifikace
Druh
J<sub>imp</sub> - Článek v periodiku v databázi Web of Science
CEP obor
—
OECD FORD obor
10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)
Návaznosti výsledku
Projekt
Výsledek vznikl pri realizaci vícero projektů. Více informací v záložce Projekty.
Návaznosti
P - Projekt vyzkumu a vyvoje financovany z verejnych zdroju (s odkazem do CEP)
Ostatní
Rok uplatnění
2017
Kód důvěrnosti údajů
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Údaje specifické pro druh výsledku
Název periodika
International Journal on Software Tools for Technology Transfer
ISSN
1433-2779
e-ISSN
1433-2787
Svazek periodika
5
Číslo periodika v rámci svazku
19
Stát vydavatele periodika
DE - Spolková republika Německo
Počet stran výsledku
15
Strana od-do
549-563
Kód UT WoS článku
000409295800004
EID výsledku v databázi Scopus
2-s2.0-84961203222