My picture

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?!

  • PhD positions available for Fall 2024. Application deadline is Dec. 15. 2023. Email me if you are interested!
  • 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 code generation (also known as 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...

    Teaching

  • 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

    SlabCity: Whole-Query Optimization using Program Synthesis [pdf]
    Rui Dong, Jie Liu, Yuxuan Zhu, Cong Yan, Barzan Mozafari, Xinyu Wang
    Proceedings of the VLDB Endowment (VLDB), 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
    Proceedings of the ACM Symposium on User Interface Software and Technology (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
    Proceedings of the ACM Symposium on User Interface Software and Technology (UIST), 2023

    Fast and Reliable Program Synthesis via User Interaction [pdf]
    Yanju Chen, Chenglong Wang, Xinyu Wang, Osbert Bastani, Yu Feng
    IEEE/ACM International Conference on Automated Software Engineering (ASE), 2023

    WebRobot: Web Robotic Process Automation using Interactive Programming-by-Demonstration [pdf]
    Rui Dong, Zhicheng Huang, Ian Iong Lam, Yan Chen, Xinyu Wang
    Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2022

    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
    Proceedings of the ACM Symposium on User Interface Software and Technology (UIST), 2022

    INTENT: Interactive Tensor Transformation Synthesis [pdf] [code]
    Zhanhui Zhou, Man To Tang, Qiping Pan, Shangyin Tan, Xinyu Wang, Tianyi Zhang
    Proceedings of the ACM Symposium on User Interface Software and Technology (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
    The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE), 2022

    Web Question Answering with Neurosymbolic Program Synthesis [pdf] [code]
    Jocelyn Chen, Aaron Lamoreaux, Xinyu Wang, Greg Durrett, Osbert Bastani, Isil Dillig
    Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2021

    Synthesizing Data Structure Refinements from Integrity Constraints [pdf]
    Shankara Pailoor, Yuepeng Wang, Xinyu Wang, Isil Dillig
    Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2021

    Interpretable Program Synthesis [pdf][code]
    Tianyi Zhang, Zhiyang Chen, Yuanli Zhu, Priyan Vaithilingam, Xinyu Wang, Elena Glassman
    Proceedings of the ACM SIGCHI Conference on Human Factors in Computing Systems (CHI), 2021

    Automated Policy Synthesis for System Call Sandboxing [pdf]
    ACM SIGPLAN Distinguished Paper Award
    Shankara Pailoor, Xinyu Wang, Hovav Shacham, Isil Dillig
    Proceedings of the ACM on Programming Languages (OOPSLA), 2020

    Sketch-Driven Regular Expression Generation from Natural Language and Examples [pdf][code]
    Xi Ye, Qiaochu Chen, Xinyu Wang, Isil Dillig, Greg Durrett

    Transactions of the Association for Computational Linguistics (TACL), 2020

    Interactive Program Synthesis by Augmented Examples [pdf][code]
    Tianyi Zhang, London Lowmanstone, Xinyu Wang, Elena Glassman

    Proceedings of the ACM Symposium on User Interface Software and Technology (UIST), 2020

    Multi-Modal Synthesis of Regular Expressions [pdf][code]
    Qiaochu Chen, Xinyu Wang, Xi Ye, Greg Durrett, Isil Dillig
    Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2020

    An Efficient Programming-by-Example Framework [pdf]
    Xinyu Wang
    Ph.D. dissertation, 2019

    Relational Program Synthesis [pdf]
    Yuepeng Wang, Xinyu Wang, Isil Dillig
    Proceedings of the ACM on Programming Languages (OOPSLA), 2018

    Learning Abstractions for Program Synthesis [pdf]
    Xinyu Wang, Greg Anderson, Isil Dillig, Ken McMillan
    International Conference on Computer Aided Verification (CAV), 2018

    Automated Migration of Hierarchical Data to Relational Tables using Programming-by-Example [pdf][code]
    Navid Yaghmazadeh, Xinyu Wang, Isil Dillig
    Proceedings of the VLDB Endowment (VLDB), 2018

    Program Synthesis using Abstraction Refinement [pdf]
    Xinyu Wang, Isil Dillig, Rishabh Singh
    Proceedings of the ACM on Programming Languages (POPL), 2018

    Synthesis of Data Completion Scripts using Finite Tree Automata [pdf]
    Xinyu Wang, Isil Dillig, Rishabh Singh
    Proceedings of the ACM on Programming Languages (OOPSLA), 2017

    FIDEX: Filtering Spreadsheet Data using Examples [pdf]
    Xinyu Wang, Sumit Gulwani, Rishabh Singh
    Proceedings of the ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2016

    EXPLORER : Query- and Demand-Driven Exploration of Interprocedural Control Flow Properties [pdf]
    Yu Feng, Xinyu Wang, Isil Dillig, Calvin Lin
    Proceedings of the ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2015

    Bottom-up Context-Sensitive Pointer Analysis for Java [pdf]
    Yu Feng, Xinyu Wang, Isil Dillig, Thomas Dillig
    Asian Symposium on Programming Languages and Systems (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)