arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2108.11212cs.PL
收藏

Souffle语言中的选择结构

The Choice Construct in the Souffle Language

Xiaowen Hu, Joshua Karp, David Zhao, Abdul Zreika, Xi Wu, Bernhard Scholz

摘要:

Datasheet已经成为解决大规模现实问题的流行实现语言,包括bug查找器,网络分析工具和反汇编器。这些应用程序表达了具有数百个关系和规则的复杂行为,这些关系和规则通常需要对关系中的元组进行非确定性选择以表达工作列表算法。这项工作是一个经验报告,描述了一个选择结构中的数据库引擎Souffle的实施。使用choice构造,我们可以用几行代码来表达工作列表算法,比如生成树。我们强调基于规则的选择,如先前的工作中所描述的,和基于关系的选择介绍了这项工作之间的差异。我们表明,一个选择结构使某些工作表算法计算速度高达10 kx比没有选择结构。

英文摘要:

Datalog has become a popular implementation language for solving large-scale, real-world problems, including bug finders, network analysis tools, and disassemblers. These applications express complex behaviour with hundreds of relations and rules that often require a non-deterministic choice for tuples in relations to express worklist algorithms. This work is an experience report that describes the implementation of a choice construct in the Datalog engine Souffle. With the choice construct, we can express worklist algorithms such as spanning trees in a few lines of code. We highlight the differences between rule-based choice as described in prior work, and relation-based choice introduced by this work. We show that a choice construct enables certain worklist algorithms to be computed up to 10kx faster than having no choice construct.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑