~/talk

Lifting E-Graphs: A Function Isn’t a Constant

Talkat EGRAPHS 2026 · 2026-06-15..06-19· [compilers-and-language-design]
slides:none on file

Proposes encoding α-equivalence by baking thinning bit vectors into e-nodes so terms carry their context; implements fat identifiers (ID plus thinning) and a thinning union-find that composes thinnings on find and peels common lifts on union. Demonstrates lift-pulling smart constructors that recover sharing lost by naive naming, shows E-matching composes thinnings down tree, gives tiny Python combinators for lift composition, and notes permutations are more general but thinnings are simpler and enough for many practical cases.

AI-written summary · about

  1. 0:00Lifting e-graphs introduction
  2. 1:26Named variables problems
  3. 3:53Semantic meaning of sin(x)
  4. 5:17Nameless dimensions
  5. 8:26No sharing between functions
  6. 9:08Introducing lifting and thinnings
  7. 10:53Why thinnings are powerful
  8. 13:37Baking lifting into e-graphs
  9. 16:45Lift pulling smart constructors
  10. 17:49Thinning union-find explained
  11. 19:33Semantics of unioning thinned IDs
  12. 20:55E-matching with thinnings
  13. 23:01Related work and connections
  14. 24:27Q&A on thinning vs permutations
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.