Synthesizing Mathematical Identities with E-Graphs
Ian Briggs, Pavel Panchekha

TL;DR
This paper introduces an automated method for discovering mathematical identities using e-graphs, significantly reducing manual effort and enabling faster, more accurate function implementations.
Contribution
It presents a novel two-phase pipeline combining synthesis with e-graphs and deduplication via integer linear programming to automatically find core mathematical identities.
Findings
Generated 7215 candidate identities from 61 benchmarks
Reduced candidates to 125 core identities through deduplication
Demonstrated effectiveness in automating identity discovery
Abstract
Identities compactly describe properties of a mathematical expression and can be leveraged into faster and more accurate function implementations. However, identities must currently be discovered manually, which requires a lot of expertise. We propose a two-phase synthesis and deduplication pipeline that discovers these identities automatically. In the synthesis step, a set of rewrite rules is composed, using an e-graph, to discover candidate identities. However, most of these candidates are duplicates, which a secondary deduplication step discards using integer linear programming and another e-graph. Applied to a set of 61 benchmarks, the synthesis phase generates 7215 candidate identities which the deduplication phase then reduces down to 125 core identities.
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMathematics, Computing, and Information Processing · Logic, programming, and type systems · Natural Language Processing Techniques
