English
Related papers

Related papers: E-Graphs as a Persistent Compiler Abstraction

200 papers

With recent algorithmic improvements and easy-to-use libraries, equality saturation is being picked up for hardware design, program synthesis, theorem proving, program optimization, and more. Existing work on using equality saturation for…

Programming Languages · Computer Science 2025-05-16 Jules Merckx , Alexandre Lopoukhine , Samuel Coward , Jianyi Cheng , Bjorn De Sutter , Tobias Grosser

Optimizations in a traditional compiler are applied sequentially, with each optimization destructively modifying the program to produce a transformed program that is then passed to the next optimization. We present a new approach for…

Programming Languages · Computer Science 2015-07-01 Ross Tate , Michael Stepp , Zachary Tatlock , Sorin Lerner

Modern equality saturation systems excel at expression-level rewrites by exploring large spaces of equivalent programs without suffering from the phase-ordering problem. How- ever, these systems struggle to represent equivalence directly…

Programming Languages · Computer Science 2026-05-28 Guillermo Garcia

An e-graph efficiently represents a congruence relation over many expressions. Although they were originally developed in the late 1970s for use in automated theorem provers, a more recent technique known as equality saturation repurposes…

Programming Languages · Computer Science 2021-01-08 Max Willsey , Chandrakana Nandi , Yisu Remy Wang , Oliver Flatt , Zachary Tatlock , Pavel Panchekha

Equality saturation (EqSat) is a powerful optimization paradigm that compactly represents many equivalent programs in an e-graph and delays commitment until extraction selects a lowest-cost program. Making EqSat effective, therefore,…

Artificial Intelligence · Computer Science 2026-04-21 Chenyun Yin , Youwei Xiao , Yuze Luo , Yuyang Zou , Yun Liang

We introduce the third major version of Metatheory.jl, a Julia library for general-purpose metaprogramming and symbolic computation. Metatheory.jl provides a flexible and performant implementation of e-graphs and Equality Saturation (EqSat)…

Programming Languages · Computer Science 2024-06-04 Alessandro Cheli , Niklas Heim

Equality saturation, a technique for program optimisation and reasoning, has gained attention due to the resurgence of equality graphs (e-graphs). E-graphs represent equivalence classes of terms under rewrite rules, enabling simultaneous…

Logic in Computer Science · Computer Science 2025-05-05 Aleksei Tiurin , Dan R. Ghica , Nick Hu

Compilers are indispensable for transforming code written in high-level languages into performant machine code, but their general-purpose optimizations sometimes fall short. Domain experts might be aware of certain optimizations that the…

Programming Languages · Computer Science 2025-07-15 Jules Merckx , Tim Besard , Bjorn De Sutter

In technology mapping, the quality of the final implementation heavily relies on the circuit structure after technology-independent optimization. Recent studies have introduced equality saturation as a novel optimization approach. However,…

Hardware Architecture · Computer Science 2025-04-22 Chen Chen , Guangyu HU , Cunxi Yu , Yuzhe Ma , Hongce Zhang

In this submission, we explore the use of equality saturation to optimize concurrent computations. A concurrent environment gives rise to new optimization opportunities, like extracting a common concurrent subcomputation. To our knowledge,…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-15 Henrich Lauko , Lukáš Korenčik , Peter Goodman

Equality saturation is a program optimization technique based on non-destructive rewriting and a form of abstract interpretation called e-class analysis. Existing e-class analyses are pessimistic and therefore typically imprecise when…

Programming Languages · Computer Science 2026-04-17 Russel Arbore , Alvin Cheung , Max Willsey

Many compilers, synthesizers, and theorem provers rely on rewrite rules to simplify expressions or prove equivalences. Developing rewrite rules can be difficult: rules may be subtly incorrect, profitable rules are easy to miss, and rulesets…

Programming Languages · Computer Science 2021-08-25 Chandrakana Nandi , Max Willsey , Amy Zhu , Yisu Remy Wang , Brett Saiki , Adam Anderson , Adriana Schulz , Dan Grossman , Zachary Tatlock

Traditional compilers, designed for optimizing low-level code, fall short when dealing with modern, computation-heavy applications like image processing, machine learning, or numerical simulations. Optimizations should understand the…

Programming Languages · Computer Science 2024-11-21 Roland Leißa , Marcel Ulrich , Joachim Meyer , Sebastian Hack

Equality saturation is an emerging technique for program and query optimization developed in the programming language community. It performs term rewriting over an E-graph, a data structure that compactly represents a program space. Despite…

Programming Languages · Computer Science 2025-01-07 Dan Suciu , Yisu Remy Wang , Yihong Zhang

Multi-level intermediate representations (MLIR) show great promise for reducing the cost of building domain-specific compilers by providing a reusable and extensible compiler infrastructure. This work presents TPU-MLIR, an end-to-end…

Programming Languages · Computer Science 2023-02-10 Pengchao Hu , Man Lu , Lei Wang , Guoyue Jiang

Automated standard cell library extension is crucial for maximizing Quality of Results (QoR) in modern VLSI design. We introduce CellE, a novel framework that leverages formal methods to achieve exhaustive discovery of functionally…

Hardware Architecture · Computer Science 2026-03-30 Yi Ren , Yukun Wang , Xiang Meng , Guoyao Cheng , Baokang Peng , Lining Zhang , Yibo Lin , Runsheng Wang , Guangyu Sun

Term Rewriting Systems (TRSs) are used in compilers to simplify and prove expressions. State-of-the-art TRSs in compilers use a greedy algorithm that applies a set of rewriting rules in a predefined order (where some of the rules are not…

Programming Languages · Computer Science 2022-03-01 Smail Kourta , Adel Namani , Fatima Benbouzid-Si Tayeb , Kim Hazelwood , Chris Cummins , Hugh Leather , Riyadh Baghdadi

E-graphs are a data structure that compactly represents equivalent expressions. They are constructed via the repeated application of rewrite rules. Often in practical applications, conditional rewrite rules are crucial, but their…

Data Structures and Algorithms · Computer Science 2023-08-16 Samuel Coward , George A. Constantinides , Theo Drane

The technique of \emph{equality saturation}, which equips graphs with an equivalence relation, has proven effective for program optimisation. We give a categorical semantics to these structures, called \emph{e-graphs}, in terms of Cartesian…

Logic in Computer Science · Computer Science 2025-05-21 Aleksei Tiurin , Chris Barrett , Dan R. Ghica , Nick Hu

This work presents a comprehensive evaluation of neural network graph compilers across heterogeneous hardware platforms, addressing the critical gap between theoretical optimization techniques and practical deployment scenarios. We…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-30 Alireza Furutanpey , Carmen Walser , Philipp Raith , Pantelis A. Frangoudis , Schahram Dustdar
‹ Prev 1 2 3 10 Next ›