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 (previously called egg-smol), 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 egg-smol users, as well as possible future directions for development.
翻译:E-graph已发展成为一种多功能数据结构,通过等式饱和等技术在综合、优化及验证领域具有广泛应用。本文介绍了实验性egglog库(原名egg-smol)的Python绑定,旨在将e-graph的优势引入Python生态体系。该绑定提供了高层级、符合Python风格的应用编程接口,为Python用户构建了可访问且熟悉的交互界面。通过将e-graph技术与Python集成,我们期望能够促进科学计算和机器学习社区跨领域协作与创新。本文探讨了为Python用户和现有egg-smol用户使用Python绑定的优势,并展望了未来潜在的发展方向。