~/talk

Bridging Syntax and Semantics of Lean Expressions in E-Graphs

Talkat EGRAPHS 2024 · on Monday, 2024-06-24· [compilers-and-language-design]
github:goens
slides:none on file

Prototype proof automation encodes Lean expressions into egg and uses equality saturation (egg backend) to synthesize explanations that Lean then checks, bridging Lean’s definitional equality (α/β/η/delta) and syntactic e-graphs. Techniques include pregenerated equations for type-class reductions, normalizing/eliminating lets, and runtime dynamic rewrites to perform β/η reductions and to reject invalid binder matches; de Bruijn indices are used and slotted e-graphs are evaluated as an alternative. The prototype runs on real list-reverse proofs, reduces tedious rewrite sequences to a few lemmas, and is available as lean-egg on GitHub.

AI-written summary · about

  1. 0:00Bridging Lean and e-graphs
  2. 2:03Motivation for theorem provers
  3. 4:50Tediousness in Lean proofs
  4. 7:19Equality saturation tactics
  5. 9:47Encoding Lean expressions
  6. 12:37Definitional equality in Lean
  7. 17:42Definitional vs syntactic equality
  8. 19:30Binder problems in e-graphs
  9. 23:02Invalid rewrite matching
  10. 24:47Egg tactic for automation
  11. 26:11Conclusion and future
~/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.