Xinyu Wang
Assistant Professor
Computer Science and Engineering
University of Michigan, Ann Arbor
Email: xwangsd@umich.edu
Office: 4620 Beyster
Twitter: @xwangsd
[Research] [Teaching] [Publications] [Students] [Service] [CV]

### What's new?!

- I'm looking for PhD students and postdocs!
- Prospectives students: take a look at this link.

I am a tenure-track assistant professor in the Electrical Engineering and Computer Science Department at the University of Michigan.
My research interests are generally in the areas of programming languages, formal methods, software engineering, and artificial intelligence.
Previously I was a researcher at Microsoft. I obtained my Ph.D. from the University of Texas at Austin.

## Research

It's pretty clear that program synthesis will become a fundamental capability in future computing. My work aims to contribute to this vision, by developing program synthesis techniques that are scalable, efficient, reliable, interactive, usable, interpretable, robust, etc.
The particular approach I've been taking to realize this vision is largely problem-driven, by synergistically combining (1) insights from the problem domain and (2) techniques from the areas of formal methods, programming languages, as well as machine learning (including LLMs) and human-centered computing.
The goal is that, by better solving hard problems from important domains, we can also develop new insights around code generation that can generalize to and benefit other domains.
Here are some projects that we have been working on lately...

- Database Query Optimization
  Publications: VeriEQL (OOPSLA 2024), SlabCity (VLDB 2023)
  TL;DR: We've been developing synthesis-aided query optimization techniques that can optimize a significant larger class of database queries, including complex analytical queries. This also requires designing more powerful program reasoning techniques (including synthesis, verification, testing) for queries, especially those complex ones. The goal is to eventually accelerate queries in a provably sound way.
- Process Automation
  Publications: Arborist (POPL 2024), MIWA (UIST 2023), DiLogics (UIST 2023), WebRobot (PLDI 2022), SemanticOn (UIST 2022), WebQA (PLDI 2021)
  TL;DR: We've been developing new programming-by-demonstration algorithms and interaction mechanisms that enable non-experts to easily "write" web automation programs (e.g., to automate tasks like data scraping, data entry, etc.) by simply showing how to perform the task in a web browser. The goal is to eventually enable automation of tasks that involve interactions across applications, without manual coding.
- End-User Programming
  Publications: Faery (AST 2023), NL2Viz (FSE 2022), INTENT (UIST 2022), Regae (UIST 2020), Regel (PLDI 2020), Relish (OOPSLA 2018), Blaze (POPL 2018), Dace (OOPSLA 2017), FIDEX (OOPSLA 2016)
  TL;DR: We've been developing programming-by-example frameworks that are generally applicable to various end-user programming tasks (such as regular-expression authoring, data wrangling, data visualization), as well as their interfaces, such that non-programmers can "program without coding" by simply providing high-level specifications in different modalities (such as input-output examples, natural-language descriptions).

## Teaching

- EECS 481. Software Engineering [Winter 2024]
- EECS 598. Intelligent Programming Systems [Fall 2023]
- EECS 498. Intelligent Programming Systems [Fall 2023]
- EECS 481. Software Engineering [Winter 2023]
- EECS 481. Software Engineering [Fall 2022]
- EECS 481. Software Engineering [Winter 2022]
- EECS 598. Intelligent Programming Systems [Fall 2021]
- EECS 498. Intelligent Programming Systems [Fall 2021]
- EECS 203. Discrete Mathematics [Winter 2021]
- EECS 598. Program Synthesis: Techniques and Applications [Fall 2020]

## Publications

VeriEQL: Bounded Equivalence Verification for Complex SQL Queries with Integrity Constraints [pdf] Yang He*, Pinhan Zhao*, Xinyu Wang, Yuepeng Wang OOPSLA 2024
Efficient Bottom-Up Synthesis for Programs with Local Variables [pdf] Xiang Li*, Xiangyu Zhou*, Rui Dong, Yihong Zhang, Xinyu Wang POPL 2024
Data-Driven Insight Synthesis [pdf] Junjie Xing, Xinyu Wang, H. V. Jagdish VLDB 2024
SlabCity: Whole-Query Optimization using Program Synthesis [pdf] Rui Dong*, Jie Liu*, Yuxuan Zhu, Cong Yan, Barzan Mozafari, Xinyu Wang VLDB 2023
Simplifying Cloud Management with Cloudless Computing [pdf] Yiming Qiu, Patrick Tser Jern Kon, Jiarong Xing, Yibo Huang, Hongyi Liu, Xinyu Wang, Peng Huang, Mosharaf Chowdhury, Ang Chen HotNets 2023
MIWA: Mixed-Initiative Web Automation for Better User Control and Confidence [pdf] Weihao Chen, Xiaoyu Liu, Jiacheng Zhang, Ian Iong Lam, Zhicheng Huang, Rui Dong, Xinyu Wang, Tianyi Zhang UIST 2023
DiLogics: Creating Web Automation Programs with Diverse Logics [pdf][demo] Kevin Pu, Jim Yang, Angel Yuan, Minyi Ma, Rui Dong, Xinyu Wang, Yan Chen, Tovi Grossman UIST 2023
Fast and Reliable Program Synthesis via User Interaction [pdf] Yanju Chen, Chenglong Wang, Xinyu Wang, Osbert Bastani, Yu Feng ASE 2023
SemanticOn: Specifying Content-Based Semantic Conditions for Web Automation Programs [pdf][demo] Kevin Pu, Rainey Fu, Rui Dong, Xinyu Wang, Yan Chen, Tovi Grossman Best Paper Honorable Mention Award UIST 2022
INTENT: Interactive Tensor Transformation Synthesis [pdf] [code] Zhanhui Zhou*, Man To Tang*, Qiping Pan*, Shangyin Tan, Xinyu Wang, Tianyi Zhang UIST 2022
NL2Viz: Natural Language to Visualization via Constrained Syntax-Guided Synthesis [pdf] Zhengkai Wu, Vu Le, Ashish Tiwari, Sumit Gulwani, Arjun Radhakrishna, Ivan Radicek, Gustavo Soares, Xinyu Wang, Zhenwen Li, Tao Xie FSE 2022
WebRobot: Web Robotic Process Automation using Interactive Programming-by-Demonstration [pdf] Rui Dong, Zhicheng Huang, Ian Iong Lam, Yan Chen, Xinyu Wang PLDI 2022
Web Question Answering with Neurosymbolic Program Synthesis [pdf] [code] Jocelyn Chen, Aaron Lamoreaux, Xinyu Wang, Greg Durrett, Osbert Bastani, Isil Dillig PLDI 2021
Synthesizing Data Structure Refinements from Integrity Constraints [pdf] Shankara Pailoor, Yuepeng Wang, Xinyu Wang, Isil Dillig PLDI 2021
Interpretable Program Synthesis [pdf][code] Tianyi Zhang, Zhiyang Chen, Yuanli Zhu, Priyan Vaithilingam, Xinyu Wang, Elena Glassman CHI 2021
Automated Policy Synthesis for System Call Sandboxing [pdf] ACM SIGPLAN Distinguished Paper Award Shankara Pailoor, Xinyu Wang, Hovav Shacham, Isil Dillig OOPSLA 2020
Sketch-Driven Regular Expression Generation from Natural Language and Examples [pdf][code] Xi Ye, Qiaochu Chen, Xinyu Wang, Isil Dillig, Greg Durrett TACL 2020
Interactive Program Synthesis by Augmented Examples [pdf][code] Tianyi Zhang, London Lowmanstone, Xinyu Wang, Elena Glassman UIST 2020
Multi-Modal Synthesis of Regular Expressions [pdf][code] Qiaochu Chen, Xinyu Wang, Xi Ye, Greg Durrett, Isil Dillig PLDI 2020
An Efficient Programming-by-Example Framework [pdf] Xinyu Wang PhD dissertation 2019
Relational Program Synthesis [pdf] Yuepeng Wang, Xinyu Wang, Isil Dillig OOPSLA 2018
Learning Abstractions for Program Synthesis [pdf] Xinyu Wang, Greg Anderson, Isil Dillig, Ken McMillan CAV 2018
Automated Migration of Hierarchical Data to Relational Tables using Programming-by-Example [pdf][code] Navid Yaghmazadeh, Xinyu Wang, Isil Dillig VLDB 2018
Program Synthesis using Abstraction Refinement [pdf] Xinyu Wang, Isil Dillig, Rishabh Singh POPL 2018
Synthesis of Data Completion Scripts using Finite Tree Automata [pdf] Xinyu Wang, Isil Dillig, Rishabh Singh OOPSLA 2017
FIDEX: Filtering Spreadsheet Data using Examples [pdf] Xinyu Wang, Sumit Gulwani, Rishabh Singh OOPSLA 2016
EXPLORER : Query- and Demand-Driven Exploration of Interprocedural Control Flow Properties [pdf] Yu Feng, Xinyu Wang, Isil Dillig, Calvin Lin OOPSLA 2015
Bottom-up Context-Sensitive Pointer Analysis for Java [pdf] Yu Feng, Xinyu Wang, Isil Dillig, Thomas Dillig APLAS 2015

## Students

Pinhan Zhao (PhD student, 2023-)
Xiangyu Zhou (PhD student, 2022-)
Rui Dong (PhD student, 2021-)

## Service

- 2024: PLDI (web co-chair)
- 2023: PLDI (AEC co-chair), OOPSLA (ERC)
- 2022: PLDI (AEC co-chair and PC), OOPSLA (PC)
- 2021: PLDI (PC)
- 2020: CAV (AEC co-chair and PC)