Data-driven lemma synthesis for interactive proofs

Author:

Sivaraman Aishwarya1ORCID,Sanchez-Stern Alex2ORCID,Chen Bretton1ORCID,Lerner Sorin3ORCID,Millstein Todd1ORCID

Affiliation:

1. University of California at Los Angeles, USA

2. University of Massachusetts at Amherst, USA

3. University of California at San Diego, USA

Abstract

Interactive proofs of theorems often require auxiliary helper lemmas to prove the desired theorem. Existing approaches for automatically synthesizing helper lemmas fall into two broad categories. Some approaches are goal-directed, producing lemmas specifically to help a user make progress from a given proof state, but they have limited expressiveness in terms of the lemmas that can be produced. Other approaches are highly expressive, able to generate arbitrary lemmas from a given grammar, but they are completely undirected and hence not amenable to interactive usage. In this paper, we develop an approach to lemma synthesis that is both goal-directed and expressive. The key novelty is a technique for reducing lemma synthesis to a data-driven program synthesis problem, whereby examples for synthesis are generated from the current proof state. We also describe a technique to systematically introduce new variables for lemma synthesis, as well as techniques for filtering and ranking candidate lemmas for presentation to the user. We implement these ideas in a tool called lfind, which can be run as a Coq tactic. In an evaluation on four benchmark suites, lfind produces useful lemmas in 68% of the cases where a human prover used a lemma to make progress. In these cases lfind synthesizes a lemma that either enables a fully automated proof of the original goal or that matches the human-provided lemma.

Funder

National Science Foundation

Defense Advanced Research Projects Agency

Publisher

Association for Computing Machinery (ACM)

Subject

Safety, Risk, Reliability and Quality,Software

Reference59 articles.

1. 1995. Circuits. https://github.com/coq-contribs/circuits 1995. Circuits. https://github.com/coq-contribs/circuits

2. 2003. Coq-of-Ocaml. https://github.com/foobar-land/coq-of-ocaml 2003. Coq-of-Ocaml. https://github.com/foobar-land/coq-of-ocaml

3. Recursive Program Synthesis

4. Learning stateful preconditions modulo a test generator

5. R Aubin. 1976. Mechanising Structural Induction. R Aubin. 1976. Mechanising Structural Induction.

Cited by 3 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. CCLemma: E-Graph Guided Lemma Discovery for Inductive Equational Proofs;Proceedings of the ACM on Programming Languages;2024-08-15

2. Leveraging Large Language Models to Boost Dafny’s Developers Productivity;Proceedings of the 2024 IEEE/ACM 12th International Conference on Formal Methods in Software Engineering (FormaliSE);2024-04-14

3. Complete First-Order Reasoning for Properties of Functional Programs;Proceedings of the ACM on Programming Languages;2023-10-16

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3