website picture

Hello, I am Ruyi Ji (吉如一). Welcome to my home page.

I am a postdoc at the University of Michigan, working with Prof. Xinyu Wang. I am interseted in program synthesis and all related problems, like program optimization and verification. I am also curious about the potential of these techniques in enhancing LLMs on domain-specific problems. Click here for more about my research.

I received my Ph.D. from Peking University under the supervision of Prof. Zhenjiang Hu and Prof. Yingfei Xiong.

I used to be a contestant in competitive programming. I won the 3rd place, Gold medal in ACM/ICPC World Finals 2018. Now I'm still engaging in relevant activities. I'm the founder and the first president of PKU Student Algorithm Association. Click here for more about our activities.

Here is my cv.

News

  • August 19, 2025 Honored and proud that my PhD thesis has been selected for the 2025 Doctoral Dissertation Incentive Program by the CCF Formal Methods Committee!
  • August 13, 2025 Our paper Tunneling Through the Hill: Multi-Way Intersection for Version-Space Algebras in Program Synthesis has been accepted at OOPSLA25. In this paper, we observe that intersecting multiple VSAs at once can be much more efficient than intersecting VSAs iteratively, thus proposing a novel VSA-intersection algorithm for program synthesis.
  • May 19, 2025 I've successfully defended my thesis! Click here for my PhD thesis.
  • April 1, 2024 Our paper Superfusion: Eliminating Intermediate Data Structures via Inductive Synthesis has been accepted at PLDI24. In this paper, we design an efficient inductive synthesizer for the fusion problem, the automatic elimination of intermediate data structures. Our approach not only significantly outperforms existing approaches on fusion, but also achieves comparable performance to AutoLifter, our previous approach specialized for synthesizing D&C-like algorithms. Try SuFu at our online demo.
  • January 1, 2024 Our paper Decomposition-Based Synthesis for Applying D&C-Like Algorithmic Paradigms has been accepted at TOPLAS. This is actually the first paper I worked on after I began my PhD, and it is finally accepted after three years of struggling. In this paper, we first propose a new type of synthesis tasks, namely lifting problems, to uniformly capture the application of a series of algorithmic paradigms (e.g., divide-and-conquer, incremental computation, and single-pass). Then, we propose an effective decomposition-based synthesizer for lifting problems. Our approach not only overcome the limitation of previous approaches to synthesize algorithms (that is, a strong requirement on the user-provided program) but also achieve a competitive (or even better) performance.