Rui Dong

I am a Ph.D. candidate in Computer Science and Engineering department at the University of Michigan and I am advised by Prof. Xinyu Wang.

Previously, I received my bachelor's degree with high honors in Computer Science and Mathematics from the University of Michigan.

Email  /  LinkedIn  /  pgp  /  CV

profile photo
  • SlabCity is accepted for VLDB! We will be presenting this paper in Vancouver, Canada this August.

My research interest is in program synthesis. I am interested in building programming systems that utilize program synthesis to solve important problems that require program generation in different domains, including automation, optimization and coding assistance. I am also eager to design fundamental program synthesis algorithms and adapt them to different problems.

I'm actively working on the following two topics:

  • Web Automation
    I use program synthesis techniques to help the users automate their tasks related to web browsers. I proposed an interactive Programming-by-Demonstration framework and a synthesis algorithm using speculation-and-validation (WebRobot) to enable program synthesis to generate programs for users based on their demonstrations. I collaborated with HCI researchers to make the automation interaction robust and user-friendly (MIWA). I also worked with HCI researchers to discover different dimensions and information that the user can interact and provide during the automation process (SemanticOn, DiLogics)
  • Query Optimization
    I use program synthesis techniques to optimize SQL queries in syntax level. Traditional query optimization used rewrite rules, which is incomplete and limited to the quality of the rules and lost many optimization opportunities. I'm discovering an approach of query optimization (SlabCity) that relying on program synthesis, which is to search a better and equivalent query in the entire query space.

(* stands for equal contributions)
Efficient Bottom-Up Synthesis for Programs with Local Variables
Xiang Li*, Xiangyu Zhou*, Rui Dong, Yihong Zhang, Xinyu Wang.
ACM SIGPLAN Symposium on Principles of Programming Languages (POPL), 2024
SlabCity: Whole-Query Optimization using Program Synthesis
Rui Dong*, Jie Liu*, Yuxuan Zhu, Cong Yan, Barzan Mozafari, Xinyu Wang.
International Conference on Very Large Data Bases (VLDB), 2023
MIWA: Mixed-Initiative Web Automation for Better User Control and Confidence
Weihao Chen, Xiaoyu Liu, Jiacheng Zhang, Ian Iong Lam, Zhicheng Huang, Rui Dong, Xinyu Wang, Tianyi Zhang.
ACM Symposium on User Interface Software and Technology (UIST), 2023
DiLogics: Creating Web Automation Programs with Diverse Logics
Kevin Pu, Jim Yang, Angel Yuan, Minyi Ma, Rui Dong, Xinyu Wang, Yan Chen, Tovi Grossman.
ACM Symposium on User Interface Software and Technology (UIST), 2023
[pdf] [demo]
SemanticOn: Specifying Content-Based Semantic Conditions for Web Automation Programs
Kevin Pu, Rainey Fu, Rui Dong, Xinyu Wang, Yan Chen, Tovi Grossman.
Best Paper Honorable Mention Award
ACM Symposium on User Interface Software and Technology (UIST), 2022
[pdf] [preview] [demo]
WebRobot: Web Robotic Process Automation using Interactive Programming-by-Demonstration
Rui Dong, Zhicheng Huang, Ian Iong Lam, Yan Chen, Xinyu Wang.
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2022
[pdf] [slides] [talk]
(PC stands for "Program Committee", AEC stands for "Artifact Evaluation Committee")
  • My girlfriend and I adopted Quanquan (a lovely black-and-white cat) when he was two months old. Check him out here!
- Updated September 2023, template from Jon Barron -