Yao Li (李垚), Ph.D.
Tenure-track Assistant Professor
Portland State University
I am a tenure-track assistant professor at Portland State University.
I obtained my Ph.D. in computer and information science from the University of Pennsylvania in 2022, under the guidance of Stephanie Weirich.
You can call me Yao. My preferred pronoun is he/him or they/them.
Research Group
Student researchers and alumni in my group.
Current Ph.D. Students
- Ian Kariniemi
- Yiming Lin
- Grant VanDomelen
- Nicholas Coltharp
I am currently at capacity and not taking new Ph.D. students.
Past Students
- Laura Israel (Ph.D. student at Univ. of Konstanz)
Teaching
CS 669: Scholarship Skills
Winter, 2026
CS 457/557: Functional Programming
Fall, 2025
CS 358: Principles of Programming Languages
Spring, 2025
CS 457/557: Functional Programming
Fall, 2024
CS 457/557: Functional Programming
Winter, 2024
CS 457/557: Functional Programming
Winter, 2023
Publications
-
Don't Sweat Interaction Trees: Proof-Guided Local Variable Lifting for Interaction Trees
-
Unifying Hindsight and Foresight: Lazy Cost Analysis as Functional Logic Programming
-
The Memorist Tale: Every Thunk Every Cost All At Once
-
SymCode: A Neurosymbolic Approach to Mathematical Reasoning via Verifiable Code Generation
-
A Case Study on the Effectiveness of LLMs in Verification with Proof Assistants
-
Freer Arrows and Why You Need Them in Haskell
-
Story of Your Lazy Function’s Life: A Bidirectional Demand Semantics for Mechanized Cost Analysis of Lazy Programs
-
Mechanized Reasoning about "how" Using Functional Programs and Embeddings
-
Program adverbs and Tlön embeddings
-
Reasoning about the garden of forking paths
-
Verifying an HTTP Key-Value Server with Interaction Trees and VST
-
Ready, Set, Verify! Applying hs-to-coq to real-world Haskell code
-
Verified Transformations and Hoare Logic: Beautiful Proofs for Ugly Assembly Language
-
A scala based framework for developing acceleration systems with FPGAs
-
From C to interaction trees: specifying, verifying, and testing a networked server
-
Ready, set, verify! applying hs-to-coq to real-world Haskell code (experience report)
-
Scala Based FPGA Design Flow (Abstract Only)
-
AutoBench: Finding Workloads That You Need Using Pluggable Hybrid Analyses
-
ScalaHDL: Express and test hardware designs in a Scala DSL
Drafts
-
The Memorist Tale: Every Thunk Every Cost All At Once (Extended Version)
-
Parkour: Parallel Library-Level Choreographic Programming
-
Embracing a mechanized formalization gap
Talks
-
-
Reasoning about Laziness is Reasoning about Future: Alternative Semantics to Lazy Evaluation
Harvard PL Seminar, virtual talk
-
"Shallower" Embeddings for Mechanized Reasoning
PurPL (Purdue Programming Languages Group) Seminar, West Lafayette, IN
-
The Expression Problem and Theorem Proving (Discussion)
Workshop on the Implementation of Type Systems (WITS), co-located with POPL, Philadelphia, PA
Effect-Oblivious Equivalence
Workshop on Principles of Secure Compilation (PriSC), co-located with POPL, Philadelphia, PA
-
Reasoning about the Garden of Forking Paths
- POPV seminar at Boston University (Longer Version, Invited Talk)
- The ACM SIGPLAN International Conference on Functional Programming (ICFP), virtual talk
- The ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity (SPLASH), Chicago, IL
-
Embracing a Mechanized Formalization Gap: Interactive reasoning for Haskell at scale
Haskell Implementors' Workshop (HIW), co-located with ICFP, virtual talk
-
The Science of Deep Specification
NSF Expeditions in Computing - 10 Years of Transforming Science and Society, Washington, DC
-
Dependent Types in Scala
Philly Area Scala Enthusiasts Meetup (PHASE), Philadelphia, PA
Scala-Forklift: Type-Safe Data Migration Tool for Slick, Git and Beyond
Comcast Scala By the Schuyllkill Conference, Philadelphia, PA
Service & Awards
Academic Service
- Program Committee
- CPP'27 Haskell'26 TyDe'25 POPL'25 CoqPL'25 PLDI'24 TFP'24 POPL'24 SRC PLDI'23 PLDI'23 SRC
- External Reviewer
- Automated Software Engineering (Journal) CPP'26 OOPSLA'25 JFP CONCUR'23 ESOP'23 ECOOP'23 WoLLIC'23
- Organizing Committee
- PLDI'25 (Publicity Co-Chair) PLDI'24 (Publicity Co-Chair) SPLASH'22 (Student Volunteer Co-Chair)
- Artifact Evaluation Committee
- ECOOP'23 POPL'22 ICFP'21 POPL'21
- Session Chair
- PLDI'23 SPLASH'21
- Mentor
- DeepSpec REU'21 (UPenn) Google Summer of Code (Scala) 2016
Honors & Awards
- 2022 ICFP Distinguished Paper Award
- 2018 Google Open Source Peer Bonus (for Scala Forklift)
- 2016 Outstanding Graduate of Shanghai Jiao Tong University
- 2014 China National Scholarship
- 2013 Outstanding Graduate of Shanghai Jiao Tong University
- 2012 China National Scholarship
- 2012 Most Popular Collegiate Innovation Projects of SJTU
- 2011 1st Prize in 4th Intel Cup National Collegiate Software Innovation Contest