TL;DR
This paper introduces a relational join-based e-matching approach that guarantees worst-case optimal runtime, improves efficiency by exploiting pattern structure, and outperforms traditional methods in practice.
Contribution
It presents the first data complexity analysis for e-matching and demonstrates a practical, faster implementation within the egg framework.
Findings
Relational e-matching achieves worst-case optimal runtime.
The new approach is simpler to implement than traditional methods.
Experimental results show significant speed improvements.
Abstract
We present a new approach to e-matching based on relational join; in particular, we apply recent database query execution techniques to guarantee worst-case optimal run time. Compared to the conventional backtracking approach that always searches the e-graph "top down", our new relational e-matching approach can better exploit pattern structure by searching the e-graph according to an optimized query plan. We also establish the first data complexity result for e-matching, bounding run time as a function of the e-graph size and output size. We prototyped and evaluated our technique in the state-of-the-art egg e-graph framework. Compared to a conventional baseline, relational e-matching is simpler to implement and orders of magnitude faster in practice.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
