IC Colloquium : Program Synthesis: New Strides in an Old Problem

Thumbnail

Event details

Date 26.10.2017
Hour 16:1517:30
Location
Category Conferences - Seminars
By: Swarat Chaudhuri - Rice University
Video of his talk

Abstract:
Program synthesis, the problem of automatically discovering solutions to programming tasks, is a long-standing goal in computer science. The problem is known to be extremely hard, primarily because it requires search through vast, combinatorial spaces of programs. Nevertheless, the last decade has seen a resurgence of interest in this area. New algorithmic techniques, new applications, diligent engineering, and the availability of powerful hardware have contributed to raising hopes for practical program synthesis.

In this talk, I will discuss some of the algorithmic insights that we have identified while working on program synthesis over the last eight years. Specifically, I will show that functional language abstractions and the use of automated deduction can be key to scaling program synthesis. I will demonstrate that data-driven methods -- in particular, statistical learning over large corpora of code -- can speed up searches for programs and enable synthesis from highly
ambiguous specifications of programming tasks. Finally, I will discuss a quantitative extension of program synthesis and show that continuous optimization methods and learning from data can be useful in solving this problem.

Bio:
Swarat Chaudhuri is an Associate Professor of Computer Science at Rice University. His research has two main thrusts: (a) algorithms, based on automated deduction, combinatorial search and optimization, and statistical machine learning, for program analysis and synthesis; and (b) the use of these algorithms in practical tools for increasing programmer productivity. The applications that motivate his work come from a mix of areas, including industrial software engineering, end-user programming, multiagent systems, and robotics and cyber-physical systems.
Swarat received a bachelor's degree in computer science from the Indian Institute of Technology, Kharagpur, in 2001, and a doctoral degree in computer science from the University of Pennsylvania in 2007. From 2008-2011, he was an Assistant Professor at the Pennsylvania State University, University Park. He is a recipient of the National Science Foundation CAREER award and the ACM SIGPLAN John Reynolds Doctoral Dissertation Award. He has served on the committee of many conferences in formal methods and programming languages, and chaired the 2016 Conference on Computer-Aided Verification (CAV).

More information

Practical information

  • General public
  • Free

Contact

  • Host: Viktor Kuncak

Share