paperbot · PL 论文追踪

全部论文 待读 收藏

P2 A metaprogramming framework for formal verification

面向形式验证的元编程框架
ICFP 1(ICFP)2017匹配度 4/10 · 论文介绍 Lean 中面向形式验证的元编程框架,属于定理证明与证明工程的基础设施,与用户关注的“LLM/Agent 改进形式化验证”只有间接关联;未涉及 LLM/Agent、静态分析、浮点程序分析或贝叶斯程序分析。引用 101 inbox
Gabriel Ebner, Sebastian Ullrich, Jared Roesch, Jeremy Avigad, Leonardo de Moura
dblp: 2026-09-10crossref: 2026-09-10

AI 速览

一句话:在 Lean 中实现面向形式验证的元编程框架,通过反射对象级表达式支持高效编写 tactic 与自动化。

交互式定理证明器通常需要用户编写策略与自动化,但直接扩展证明器内部结构往往困难且性能受限。本文介绍 Lean 中实际采用的元编程框架:它在依赖类型理论的对象语言之上提供访问 Lean 内部数据结构与过程的 API,并支持将对象层表达式反射到元语言,从而让用户以统一方式编写元程序。作者用性能证据表明该实现高效,并展示该框架不仅能便捷地编写小规模交互式 tactic,还足以支撑更实质的自动化开发。

问题
如何让交互式定理证明器用户方便、灵活且高效地编写从交互式 tactic 到大型自动化例程的元程序。
方法
在 Lean 的对象语言上增加内部结构与过程 API,并提供对象级表达式到元语言的反射机制。
评估
通过实现性能证据以及编写小规模交互式 tactic 和较复杂自动化的案例来评估。
原文摘要(Abstract)

We describe the metaprogramming framework currently used in Lean, an interactive theorem prover based on dependent type theory. This framework extends Lean's object language with an API to some of Lean's internal structures and procedures, and provides ways of reflecting object-level expressions into the metalanguage. We provide evidence to show that our implementation is performant, and that it provides a convenient and flexible way of writing not only small-scale interactive tactics, but also more substantial kinds of automation.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@article{EbnerURAM17,
  title = {A metaprogramming framework for formal verification},
  author = {Gabriel Ebner and Sebastian Ullrich and Jared Roesch and Jeremy Avigad and Leonardo de Moura},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {1},
  number = {ICFP},
  year = {2017},
  doi = {10.1145/3110278}
}