A unified program synthesis framework for automating end-user programming tasks

Event Speaker
Xinyu Wang
PhD Candidate, UT Austin
Event Type
Colloquium
Date
Event Location
KEC 1007
Event Description

Programming has started to become an essential skill for an increasing number of people, including novices with no 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 which can be applied broadly to automating tasks across different application domains. The 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.

Speaker Biography

Xinyu Wang is a PhD candidate at UT Austin working at the intersection of programming languages, software engineering and formal methods with Isil Dillig. He is interested in developing foundational program synthesis techniques that are applicable to automating real-world programming tasks.