Parallel changes are becoming increasingly prevalent in the development of large scale software system. To further study the relationship between parallel changes and faults, we h...
Memoization is a well-known optimization technique used to eliminate redundant calls for pure functions. If a call to a function f with argument v yields result r, a subsequent ca...
Lukasz Ziarek, K. C. Sivaramakrishnan, Suresh Jaga...
This paper presents a demand-driven, flow-insensitive analysis algorithm for answering may-alias queries. We formulate the computation of alias queries as a CFL-reachability probl...
We present a polynomial time randomized algorithm for global value numbering. Our algorithm is complete when conditionals are treated as non-deterministic and all operators are tr...
Optimal program slicing determines for a statement S in a program whether or not S affects a specified set of statements, given that all conditionals in are interpreted as non-d...