Affiliation:
1. University of Washington, USA
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.
Funder
National Science Foundation
Applications Driving Architectures (ADA) Research Center
Publisher
Association for Computing Machinery (ACM)
Subject
Safety, Risk, Reliability and Quality,Software
Reference28 articles.
1. [n.d.]. Glean System for collecting deriving and querying facts about source code. https://glean.software Accessed: 2021-10-12. [n.d.]. Glean System for collecting deriving and querying facts about source code. https://glean.software Accessed: 2021-10-12.
2. Andreas Amler. 2017. Evaluation of Worst-Case Optimal Join Algorithm. Master’s thesis. Andreas Amler. 2017. Evaluation of Worst-Case Optimal Join Algorithm. Master’s thesis.
3. Porting doop to Soufflé
4. Size Bounds and Query Plans for Relational Joins
Cited by
6 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Flan: An Expressive and Efficient Datalog Compiler for Program Analysis;Proceedings of the ACM on Programming Languages;2024-01-05
2. Reducing Overparameterization of Symbolic Regression Models with Equality Saturation;Proceedings of the Genetic and Evolutionary Computation Conference;2023-07-12
3. Better Together: Unifying Datalog and Equality Saturation;Proceedings of the ACM on Programming Languages;2023-06-06
4. Optimizing Tensor Programs on Flexible Storage;Proceedings of the ACM on Management of Data;2023-05-26
5. Fast Instruction Selection for Fast Digital Signal Processing;Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 4;2023-03-25