datalog专题

数据库应用-Datalog

Relational Algebra 数据库系统中引入的relational algebra并不多,大部分可由多个基本的operation结合而来 minimal Relational algebra: Ω=π,σ,⋈,β,∪,− \Omega=\pi ,\sigma,\bowtie,\beta,\cup,- 安全访问(sichere Anfragen) 所谓安全访问,就是指无论在何种数据

【论文研读】Better Together:Unifying Datalog and Equality Saturation

最近研究ReassociatePass整的头大,翻两篇Datalog的论文看看。 今天看的一篇是比较新的文章,23年4月贴到arxiv上的。 本文的主要贡献是提出了egglog,将Datalog和Eqsat结合起来,继承了Datalog的efficient incremental execution, cooperating analysis and lattice 目录 Introducti

Datalog 否定逻辑规则

在编写Datalog程序中,常常需要使用到比较逻辑,我目前遇到了两种,记录如下: 对某个relation的否定 例如目前我有一个relation表示一个操作符是否是可交换的——canExchange(op : Oper),我想对不可交换的操作符进行检查和处理,那么我可以在rule中添加一条!canExchange(OP)。将会匹配到不可交换的操作符然后进行推理。 对某个Value进行否定

【论文复现】Furthering Datalog in the pursuit of program analysis

本文是对同名论文中GVN相关部分的代码进行复现,该论文的研读可以看笔者主页。 Souffle安装 Souffle是一个Datalog引擎,可以执行Datalog程序,支持将Datalog程序转换为C++程序。 在站内有该引擎的安装教程。但是其中的git链接已经失效,我将新的git链接贴在下面: git clone https://github.com/souffle-lang/souffle