PLDI 2025
Mon 16 - Fri 20 June 2025 Seoul, South Korea

Come and learn about program optimization with egglog! egglog is a state-of-the-art program optimization framework that combines the best of equality saturation (EqSat) and Datalog. Since the original paper in PLDI 2023, egglog has undergone significant development and is now a language and system with a range of powerful features: Datalog-based analysis, scheduling, proofs, visualization, python bindings, plugin systems, and much more!

In this tutorial, we will start with what equality saturation is and the basic syntax and semantics of egglog. Then, we will gradually introduce more advanced topics in egglog like program analysis, scheduling, and proofs. Finally, we will show how the users can customize egglog for their domain-specific applications through egglog’s extensible plugin system. Throughout the tutorial, we will use a simple expression language EXPR for our case study, and at the end of the tutorial we will derive a program optimizer for EXPR.