Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleJune 2014
Atomicity refinement for verified compilation
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPage 27https://doi.org/10.1145/2594291.2594346We consider the verified compilation of high-level managed languages like Java or C# whose intermediate representations provide support for shared-memory synchronization and automatic memory management. In this environment, the interactions between ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Specialization slicing
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPage 167https://doi.org/10.1145/2594291.2594345In this paper, we investigate opportunities to be gained from broadening the definition of program slicing. A major inspiration for our work comes from the field of partial evaluation, in which a wide repertoire of techniques have been developed for ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Tracelet-based code search in executables
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 349–360https://doi.org/10.1145/2594291.2594343We address the problem of code search in executables. Given a function in binary form and a large code base, our goal is to statically find similar functions in the code base. Towards this end, we present a novel technique for computing similarity ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Automating formal proofs for reactive systems
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 452–462https://doi.org/10.1145/2594291.2594338Implementing systems in proof assistants like Coq and proving their correctness in full formal detail has consistently demonstrated promise for making extremely strong guarantees about critical software, ranging from compilers and operating systems to ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Test-driven repair of data races in structured parallel programs
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 15–25https://doi.org/10.1145/2594291.2594335A common workflow for developing parallel software is as follows: 1) start with a sequential program, 2) identify subcomputations that should be converted to parallel tasks, 3) insert synchronization to achieve the same semantics as the sequential ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 -
- research-articleJune 2014
Race detection for event-driven mobile applications
- Chun-Hung Hsiao,
- Jie Yu,
- Satish Narayanasamy,
- Ziyun Kong,
- Cristiano L. Pereira,
- Gilles A. Pokam,
- Peter M. Chen,
- Jason Flinn
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 326–336https://doi.org/10.1145/2594291.2594330Mobile systems commonly support an event-based model of concurrent programming. This model, used in popular platforms such as Android, naturally supports mobile devices that have a rich array of sensors and user input modalities. Unfortunately, most ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Compositional solution space quantification for probabilistic software analysis
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 123–132https://doi.org/10.1145/2594291.2594329Probabilistic software analysis aims at quantifying how likely a target event is to occur during program execution. Current approaches rely on symbolic execution to identify the conditions to reach the target event and try to quantify the fraction of ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Hybrid top-down and bottom-up interprocedural analysis
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 249–258https://doi.org/10.1145/2594291.2594328Interprocedural static analyses are broadly classified into top-down and bottom-up, depending upon how they compute, instantiate, and reuse procedure summaries. Both kinds of analyses are challenging to scale: top-down analyses are hindered by ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
On abstraction refinement for program analyses in Datalog
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 239–248https://doi.org/10.1145/2594291.2594327A central task for a program analysis concerns how to efficiently find a program abstraction that keeps only information relevant for proving properties of interest. We present a new approach for finding such abstractions for program analyses written in ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Verification modulo versions: towards usable verification
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 294–304https://doi.org/10.1145/2594291.2594326We introduce Verification Modulo Versions (VMV), a new static analysis technique for reducing the number of alarms reported by static verifiers while providing sound semantic guarantees. First, VMV extracts semantic environment conditions from a base ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Natural proofs for data structure manipulation in C using separation logic
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 440–451https://doi.org/10.1145/2594291.2594325The natural proof technique for heap verification developed by Qiu et al. [32] provides a platform for powerful sound reasoning for specifications written in a dialect of separation logic called Dryad. Natural proofs are proof tactics that enable ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Adapton: composable, demand-driven incremental computation
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 156–166https://doi.org/10.1145/2594291.2594324Many researchers have proposed programming languages that support incremental computation (IC), which allows programs to be efficiently re-executed after a small change to the input. However, existing implementations of such languages have two important ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Introspective analysis: context-sensitivity, across the board
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 485–495https://doi.org/10.1145/2594291.2594320Context-sensitivity is the primary approach for adding more precision to a points-to analysis, while hopefully also maintaining scalability. An oft-reported problem with context-sensitive analyses, however, is that they are bi-modal: either the analysis ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Selective context-sensitivity guided by impact pre-analysis
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 475–484https://doi.org/10.1145/2594291.2594318We present a method for selectively applying context-sensitivity during interprocedural program analysis. Our method applies context-sensitivity only when and where doing so is likely to improve the precision that matters for resolving given queries. ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
VeriCon: towards verifying controller programs in software-defined networks
- Thomas Ball,
- Nikolaj Bjørner,
- Aaron Gember,
- Shachar Itzhaky,
- Aleksandr Karbyshev,
- Mooly Sagiv,
- Michael Schapira,
- Asaf Valadarsky
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 282–293https://doi.org/10.1145/2594291.2594317Software-defined networking (SDN) is a new paradigm for operating and managing computer networks. SDN enables logically-centralized control over network devices through a "controller" software that operates independently from the network hardware, and ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Persistent pointer information
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 463–474https://doi.org/10.1145/2594291.2594314Pointer information, indispensable for static analysis tools, is expensive to compute and query. We provide a query-efficient persistence technique, Pestrie, to mitigate the costly computation and slow querying of precise pointer information. Leveraging ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Optimal inference of fields in row-polymorphic records
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 100–111https://doi.org/10.1145/2594291.2594313Flexible records are a powerful concept in type systems that form the basis of, for instance, objects in dynamically typed languages. One caveat of using flexible records is that a program may try to access a record field that does not exist. We present ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Race detection for Android applications
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 316–325https://doi.org/10.1145/2594291.2594311Programming environments for smartphones expose a concurrency model that combines multi-threading and asynchronous event-based dispatch. While this enables the development of efficient and feature-rich applications, unforeseen thread interleavings ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Fast: a transducer-based language for tree manipulation
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 384–394https://doi.org/10.1145/2594291.2594309Tree automata and tree transducers are used in a wide range of applications in software engineering, from XML processing to language type-checking. While these formalisms are of immense practical use, they can only model finite alphabets, and since many ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6 - research-articleJune 2014
Slicing probabilistic programs
PLDI '14: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 133–144https://doi.org/10.1145/2594291.2594303Probabilistic programs use familiar notation of programming languages to specify probabilistic models. Suppose we are interested in estimating the distribution of the return expression r of a probabilistic program P. We are interested in slicing the ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 6