Lune

OOPSLA2020顶会

Formulog: Datalog for SMT-based static analysis

Aaron Bembenek, Michael Greenberg, Stephen Chong

2020年份
26被引次数
15顶会引用

摘要

Satisfiability modulo theories (SMT) solving has become a critical part of many static analyses, including symbolic execution, refinement type checking, and model checking. We propose Formulog, a domain-specific language that makes it possible to write a range of SMT-based static analyses in a way that is both close to their formal specifications and amenable to high-level optimizations and efficient evaluation.

Formulog extends the logic programming language Datalog with a first-order functional language and mechanisms for representing and reasoning about SMT formulas; a novel type system supports the construction of expressive formulas, while ensuring that neither normal evaluation nor SMT solving goes wrong. Our case studies demonstrate that a range of SMT-based analyses can naturally and concisely be encoded in Formulog, and that Ð thanks to this encoding Ð high-level Datalog-style optimizations can be automatically and advantageously applied to these analyses.

CCS Concepts: • Software and its engineering → Automated static analysis; Domain specific languages; Constraint and logic languages.

问问这篇 Paper

智能体会读完全文。

Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。

可以从这些问题问起

智能体调用

Luneget_paper_fulltext

在 Lune 里问

免费开始,无需绑卡

lune papers fulltext 92af62a7-2f77-4165-8a04-a9cda8371eb2

引用它的顶会 Paper15

问问它们各自怎么用它

它引用的顶会 Paper3

相关 Paper

黄昏的海面,两侧是细线勾勒的悬崖