SHF: Medium: Next Generation Equality Saturation by way of Datalog
SHF: Medium: Next Generation Equality Saturation by way of Datalog
批准号:
2312195
负责人:
Zachary Tatlock
金额:
$80.0万
依托单位:
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2023
资助国家:
美国
项目状态:
未结题
起止时间:
2023-10-01 至 2026-09-30
中文摘要
所有编程技术(包括优化编译器、查询优化器、定理证明器和模型检查器)面临的一个共同挑战是推理“术语等价性”的能力--即当一个程序与另一个程序等价时。优化编译器寻求用另一个执行速度更快的等价序列替换一个指令序列。结构化查询语言(SQL)查询优化器从查询计划开始,以最低的成本搜索等价的计划,而定理证明者需要推断表达式之间的等价性来证明数学公式。检验两个表达式的等价性是计算机科学中的基本问题之一。该项目的创新之处是通过使用一种称为相等饱和的技术,建立了一个检查等价性的新框架。与将一个项重写为一个新项并忘记旧项不同,相等饱和将所有等价项保持在单一、紧凑的表示形式中。该项目的影响是开发了检查等价性的新技术,这将通过提高编译器、查询优化器和定理证明者的推理和优化表达式的能力来影响他们。相等饱和依赖于使用E-Graph对一组表达式的紧凑表示,其中等价的表达式被分组到E-Class中,单个运算符由E-Nodes表示。该方法的核心是在一组指定的规则和相等的情况下对给定表达式的闭包进行定点计算。该项目将推进三大攻坚战。第一个推力是使用Datalog规则扩展相等饱和度。该项目利用了DataLog是一种也基于固定点语义的查询语言的事实,并构建了一个新的框架,允许以统一的方式将DataLog规则与等式断言相结合。在第二个推力中,本项目对确保平等饱和终止的条件进行了理论研究。重写社区、Chase社区和树自动机社区已经在不同的方面独立研究了这个问题,本项目将这些理论结果应用到相等饱和。最后,在第三个推力中,该项目创造了新的相等饱和优化技术,以提高其性能。这些优化将受到数据库查询优化技术的启发,如最坏情况下的最优连接、半朴素评估和多查询优化。该奖项反映了NSF的法定使命,并通过使用基金会的智力优势和更广泛的影响审查标准进行评估,被认为值得支持。
英文摘要
A common challenge faced by all programming technology, including optimizing compilers, query optimizers, theorem provers, and model checkers, is the ability to reason about "term equivalence" -- that is, when one program is equivalent to another. Optimizing compilers seek to replace one sequence of instructions with another equivalent sequence that executes faster. Structured Query Language (SQL) query optimizers start from a query plan and search for an equivalent plan with lowest cost, and theorem provers need to infer equivalences between expressions to prove mathematical equations. Checking the equivalence of two expressions is one of the fundamental problems in computer science. The project's novelties are building a new framework for checking equivalence, by using a technique called equality saturation. Instead of rewriting a term to a new one and forgetting the old one, equality saturation keeps all equivalent terms in a single, compact representation. The project's impacts are developing new technology for checking equivalence that will impact compilers, query optimizers, and theorem provers, by improving their ability to reason about, and to optimize expressions.Equality saturation relies on a compact representation of a set of expressions using an E-Graph, where equivalent expressions are grouped into E-Classes, and individual operators are represented by E-Nodes. At the core of the approach is a fixpoint computation of the closure of a given expression under a specified set of rules and under equality. The project pursues three thrusts. The first thrust extends equality saturation with Datalog rules. The project exploits the fact that datalog is a query language that is also based on a fixpoint semantics, and builds a novel framework that allows datalog rules to be combined with equality assertions, in a unified way. In the second thrust the project conducts a theoretical investigation of the conditions that ensure termination of equality saturation. This problem has been studied independently under various aspects by the term rewriting community, the chase community, and the tree automata community; this project adapts those theoretical results to equality saturation. Finally, in the third thrust, the project creates new optimization techniques for equality saturation in order to improve its performance. These optimizations will be inspired by database query optimization techniques, such as worst-case optimal joins, semi-naive evaluation, and multiquery optimization.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
CCRI: New: Incubating egg: Developing a Scalable, Cohesive Equality Saturation Ecosystem and Community
-
批准号:2232339
-
项目类别:Standard Grant
-
资助金额:$199.91万
-
财政年份:2023
-
负责人:Zachary Tatlock
-
依托单位:
CAREER: Verifying Distributed System Implementations
-
批准号:1749570
-
项目类别:Continuing Grant
-
资助金额:$55.0万
-
财政年份:2018
-
负责人:Zachary Tatlock
-
依托单位:
FMitF: A Framework for Synthesis of Efficient, Reliable, and Secure Operating System Components
-
批准号:1836724
-
项目类别:Standard Grant
-
资助金额:$98.0万
-
财政年份:2018
-
负责人:Zachary Tatlock
-
依托单位:
SHF: Small: Programming Languages Foundations for 3D-Printing
-
批准号:1813166
-
项目类别:Standard Grant
-
资助金额:$50.0万
-
财政年份:2018
-
负责人:Zachary Tatlock
-
依托单位:
海外基金