paperbot · PL 论文追踪

RSS

Complete First-Order Reasoning for Properties of Functional Programs

OOPSLA 7(OOPSLA2)2023
Adithya Murali, Lucas Peña, Ranjit Jhala, P. Madhusudan

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

Several practical tools for automatically verifying functional programs (e.g., Liquid Haskell and Leon for Scala programs) rely on a heuristic based on unrolling recursive function definitions followed by quantifier-free reasoning using SMT solvers. We uncover foundational theoretical properties of this heuristic, revealing that it can be generalized and formalized as a technique that is in fact complete for reasoning with combined First-Order theories of algebraic datatypes and background theories, where background theories support decidable quantifier-free reasoning. The theory developed in this paper explains the efficacy of these heuristics when they succeed, explain why they fail when they fail, and the precise role that user help plays in making proofs succeed.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot1866,
  title = {Complete First-Order Reasoning for Properties of Functional Programs},
  author = {Adithya Murali and Lucas Peña and Ranjit Jhala and P. Madhusudan},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {7},
  number = {OOPSLA2},
  year = {2023},
  doi = {10.1145/3622835}
}