2017
DOI: 10.1007/978-3-319-52234-0_21
|View full text |Cite
|
Sign up to set email alerts
|

Precise Thread-Modular Abstract Interpretation of Concurrent Programs Using Relational Interference Abstractions

Abstract: Abstract. We present a static analysis by abstract interpretation of numeric properties in multi-threaded programs. The analysis is sound (assuming a sequentially consistent memory), parameterized by a choice of abstract domains and, in order to scale up, it is modular, in that it iterates over each thread individually (possibly several times) instead of iterating over their product. We build on previous work that formalized rely-guarantee verification methods as a concrete, fixpoint-based semantics, and then … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
19
0

Year Published

2017
2017
2023
2023

Publication Types

Select...
6

Relationship

1
5

Authors

Journals

citations
Cited by 13 publications
(19 citation statements)
references
References 29 publications
0
19
0
Order By: Relevance
“…De et al [11] propose the sync-CFG and value-set analysis for race-free programs, while Mukherjee et al [21] extend the framework to region and relational analyses. Gotsman et al [12] and Miné et al [18,19] define relational shape/value analyses for concurrent programs that exploit race-freedom and lock invariants respectively. All these works are for classical lock-based synchronization while we target interrupt-driven programs.…”
Section: Related Workmentioning
confidence: 99%
“…De et al [11] propose the sync-CFG and value-set analysis for race-free programs, while Mukherjee et al [21] extend the framework to region and relational analyses. Gotsman et al [12] and Miné et al [18,19] define relational shape/value analyses for concurrent programs that exploit race-freedom and lock invariants respectively. All these works are for classical lock-based synchronization while we target interrupt-driven programs.…”
Section: Related Workmentioning
confidence: 99%
“…This graph has a size which is exponential in the number of threads and linear in each thread size: it does not scale up. Thread-modular analyses have been designed to alleviate this combinatorial explosion [8,10,[15][16][17]. Amongst them, we use the formal system of interferences, that has been proposed by Miné [15] to analyse each thread in isolation, generating the effects it can have on the execution of other threads, and taking into account the effects generated by these other threads.…”
Section: Interferences: Thread-modular Abstract Interpretationmentioning
confidence: 99%
“…They are non-relational (in particular, there is no relation between the old value of a variable and its new value in an interference) and flow insensitive. To alleviate this problem, previous works [15,16] introduced relational interferences, that model sets of possible state transitions caused by thread instructions between pairs of program points, i.e., they model the effect of the thread in a fully relational and flow-sensitive way, which is more precise and more costly, while still being amenable to classic abstraction techniques. For instance, in the program of Figure 2, one such interference would be "When x is equal to 1, and Thread 1 is not in its critical section, Thread 0 can write 0 in x; and by doing so it will go from label l1 to label l2".…”
Section: Interferences: Thread-modular Abstract Interpretationmentioning
confidence: 99%
See 1 more Smart Citation
“…We address the interleaving explosion using the unfolding as an algorithmic approach to compute a flow and path-sensitive thread interference analysis. A recent approach [20] uses relational domains and trace partitioning to recover precision in thread modular analysis but requires manual annotations to guide the partitioning and does not scale with the number of global variables. The analysis in [8] is not as precise as our approach (confirmed by experiments with Duet on a simpler version of our benchmarks) as it employs an abstraction for unbounded parallelism.…”
Section: Related Workmentioning
confidence: 99%