Egg-smol Python: A Pythonic Library for E-graphs
E-graphs have emerged as a versatile data structure with applications in synthesis, optimization, and verification through techniques such as equality saturation. This paper introduces Python bindings for the experimental egglog library, which aims to bring the benefits of e-graphs to the Python ecosystem. The bindings offer a high-level, Pythonic API providing an accessible and familiar interface for Python users. By integrating e-graph techniques with Python, we hope to enable collaboration and innovation across various domains in the scientific computing and machine learning communities. We discuss the advantages of using Python bindings for both Python and existing egglog users, as well as possible future directions for development.
I am interested in how programming language theory can help enable open-source communities to be more resilient and collaborative ecosystems.
In particular, I am a part of the open-source Python data science community and am curious how tools to write DSLs can us work better together and grow.
Currently, I am exploring how a library to declaratively specify e-graphs in Python could support this inter-library collaboration.
Sun 18 JunDisplayed time zone: Eastern Time (US & Canada) change
09:00 - 11:00 | |||
09:40 20mTalk | Automating Constraint-Aware Datapath Optimization using E-Graphs EGRAPHS Samuel Coward Imperial College London, UK / Intel Corporation, George A. Constantinides Imperial College London, UK, Theo Drane Intel Corporation, USA Pre-print File Attached | ||
10:00 20mTalk | egglog In Practice: Automatically Improving Floating-point Error EGRAPHS | ||
10:20 20mTalk | Optimizing Stateful Dataflow with Local Rewrites EGRAPHS Shadaj Laddad University of California at Berkeley, Conor Power University of California at Berkeley, Tyler Hou University of California, Berkeley, Alvin Cheung University of California at Berkeley, Joseph M. Hellerstein University of California, Berkeley Pre-print File Attached | ||
10:40 20mTalk | Egg-smol Python: A Pythonic Library for E-graphs EGRAPHS Link to publication Pre-print |