Here's my honest feedback: I stopped reading after the author started driving into implementation details without explaining what the purpose of an e-graph is. We got the what, but not the why.
Yea, sorry. I appreciate the feedback. Exactly what Jtsummers said, this is not really a standalone post. I did a bit better motivating the egraph in the first post.
https://docs.rs/egg/0.6.0/egg/tutorials/_01_background/index...
The 'e' stands for 'equivalence'.
https://www.philipzucker.com/egraph-1/
https://www.philipzucker.com/egraph-2/
https://www.youtube.com/watch?v=ap29SzDAzP0
Seems to be useful in term-rewriting applications.