2013
DOI: 10.1007/978-3-642-39799-8_68
|View full text |Cite
|
Sign up to set email alerts
|

Efficient Synthesis for Concurrency by Semantics-Preserving Transformations

Abstract: We develop program synthesis techniques that can help programmers fix concurrency-related bugs. We make two new contributions to synthesis for concurrency, the first improving the efficiency of the synthesized code, and the second improving the efficiency of the synthesis procedure itself. The first contribution is to have the synthesis procedure explore a variety of (sequential) semantics-preserving program transformations. Classically, only one such transformation has been considered, namely, the insertion o… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
5

Citation Types

0
53
0

Year Published

2014
2014
2023
2023

Publication Types

Select...
5
1
1

Relationship

4
3

Authors

Journals

citations
Cited by 29 publications
(53 citation statements)
references
References 16 publications
0
53
0
Order By: Relevance
“…Program synthesis for concurrency aims to mitigate this complexity by synthesizing synchronization code automatically [5,6,9,15]. However, specifying the programmer's intent may be a challenge in itself.…”
Section: Introductionmentioning
confidence: 99%
“…Program synthesis for concurrency aims to mitigate this complexity by synthesizing synchronization code automatically [5,6,9,15]. However, specifying the programmer's intent may be a challenge in itself.…”
Section: Introductionmentioning
confidence: 99%
“…Sets of concurrent traces containing permutations of events from a given concurrent trace are useful for predictive analysis (e.g., [24,34,35,41]) and synchronization synthesis (e.g., [8,9]) of sharedmemory concurrent programs. Most approaches using such trace sets are restricted to specific aspects of reasoning about concurrent programs such as data race detection [24,34], detection of safety violations [35,41] and fixing assertion failures [8,9].…”
Section: Introductionmentioning
confidence: 99%
“…Most approaches using such trace sets are restricted to specific aspects of reasoning about concurrent programs such as data race detection [24,34], detection of safety violations [35,41] and fixing assertion failures [8,9]. Moreover, the representations of trace sets and exploration strategies used in some of these approaches [8,9,35]) underapproximate the target trace sets. In this paper, we present a succinct, complete representation of such concurrent trace sets, which can drive diverse verification, fault localization, repair, and synthesis techniques for concurrent programs.…”
Section: Introductionmentioning
confidence: 99%
See 2 more Smart Citations