Interpolation is an important technique in verification and static analysis of programs. In particular, interpolants extracted from proofs of various properties are used in invar...
In software for embedded systems, the frequent use of interrupts for timing, sensing, and I/O processing can cause concurrency faults to occur due to interactions between applicat...
Process-level virtualization is increasingly being used to enhance the security of software applications from reverse engineering and unauthorized modification (called software p...
How-To queries answer fundamental data analysis questions of the form: “How should the input change in order to achieve the desired output”. As a Reverse Data Management probl...
Modularity is a central theme in any scalable program analysis. The core idea in a modular analysis is to build summaries at procedure boundaries, and use the summary of a procedu...
Aws Albarghouthi, Rahul Kumar, Aditya V. Nori, Sri...