Categorical E-Graphs for Lambda Calculi
It addresses the bottleneck of handling bindings in e-graphs for program optimisation and reasoning in lambda calculi.
The paper extends equality saturation to lambda calculi with variable binding by developing a categorical framework using closed symmetric monoidal categories and hierarchical hypergraphs, proving equivalence between term rewriting and double-pushout rewriting.
Equality saturation, a technique for program optimisation and reasoning, has gained attention due to the resurgence of equality graphs (e-graphs). E-graphs represent equivalence classes of terms under rewrite rules, enabling simultaneous rewriting across a family of terms. However, they struggle in domains like $λ$-calculus that involve variable binding, due to a lack of native support for bindings. Building on recent work interpreting e-graphs categorically as morphisms in semilattice-enriched symmetric monoidal categories, we extend this framework to closed symmetric monoidal categories to handle bindings. We provide a concrete combinatorial representation using hierarchical hypergraphs and introduce a corresponding double-pushout (DPO) rewriting mechanism. Finally, we establish the equivalence of term rewriting and DPO rewriting, with the key property that the combinatorial representation absorbs the equations of the symmetric monoidal category.