Scalable Semantic Code Search for High-Quality Program Repair
January 25, 2017 at 3:30pm
Bugs in programs remain a pernicious problem. Research techniques in automated program improvement and repair are typically classified as either heuristic—searching over a set of syntactic changes, often drawn from an existing body of code—or semantic—leveraging symbolic analysis or synthesis to construct program-improving changes with respect to an inferred specification. In this talk, I will outline our recent advances in techniques that lie squarely in the middle, drawing on the best of both worlds: We reason about desired program behavior semantically, and use that characterization to scalably identify and adapt pre-existing code to fix bugs automatically. I will particularly emphasize the potential these approaches have to construct high quality patches, tackling a key outstanding challenge in the state-of-the-art in automated patching.
Claire Le Goues is an Assistant Professor in the School of Computer Science at Carnegie Mellon University. She received a Ph.D. in Computer Science from the University of Virginia in 2013. Her research interests span software engineering and programming languages, focusing especially on how to automatically and confidently evolve, debug, and improve real-world software systems. She also directs CMU’s undergraduate program in Software Engineering, and is passionate about the education and training of both software engineering practitioners and researchers, from all backgrounds and walks of life.