Abstract: Programming has started to become an essential skill for an increasing number of people, including novices without formal programming background. As a result, there is an increasing need for technology that can provide basic programming support to such non-expert computer end-users. Program synthesis, as a technique for automatically generating programs from high-level specifications, has been used to automate real-world programming tasks in a number of application domains (such as spreadsheet programming and data science) that non-expert users struggle with. However, developing specialized synthesizers for these domains is notoriously hard.
In this talk, I will describe a unified program synthesis framework that can be applied broadly to automating tasks across different application domains. This framework is also efficient and achieves orders of magnitude improvement in terms of synthesis speed compared to existing techniques. In particular, I have used this framework to build synthesizers for three different application domains and achieved up to 450x speed-up compared to state-of-the-art synthesis techniques. Host: Martin Rinard.
Bio: Xinyu Wang is a PhD candidate at UT Austin advised by Isil Dillig. He works at the intersection of programming languages, software engineering and formal methods. He is interested in developing foundational program synthesis techniques that are applicable to automating real-world programming tasks.