Di Wang

Di Wang

Doctoral Student in CS

Carnegie Mellon University


I am a fourth-year doctoral student in computer science at Carnegie Mellon University. I am advised by Prof. Jan Hoffmann. I am broadly interested in programming languages and software engineering, especially probabilistic programming, type systems, static resource analysis, and program synthesis. Currently, I am working on language-level integrations for Bayesian inference and probabilistic programming systems.

I completed my undergraduate at Peking University, China where I worked with Prof. Yingfei Xiong on summarization techniques to analyze programs sharing big libraries.

Here is my Curriculum Vitae.


Recent Publications

(2020). Liquid Resource Types. In ICFP.

Preprint Talk

(2020). Raising Expectations: Automating Expected Cost Analysis with Types. In ICFP.

Preprint Talk

(2019). Resource-Guided Program Synthesis. In PLDI.

Preprint TR Slides

(2017). Conditional Dyck-CFL Reachability Analysis for Complete and Efficient Library Summarization. In ESOP.

Preprint Artifact

Recent Posts

Using FFT to Speed Up DP

Problem link: Counting Road Networks | HackerRank. You are supposed to count the number of connected undirected labeled graphs with $n$ vertices. Algorithms with $O(n \log^2 n)$ time complexity are preferable.

Nondeterministic Interpretation

Suppose you have a toy specification with built-in nondeterminism, and you want to generate answers with respect to the specification: type exp = EInt of int | EPair of exp * exp | ENdet of exp * exp type ans = VInt of int | VPair of ans * ans For example, from the following specification


  • GHC 9003, 4902 Forbes Ave, Pittsburgh, PA 15217