Proof Automation with Large Language Models

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Lu, Minghai, Delaware, Benjamin, Zhang, Tianyi
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866910616322572288
author Lu, Minghai
Delaware, Benjamin
Zhang, Tianyi
author_facet Lu, Minghai
Delaware, Benjamin
Zhang, Tianyi
contents Interactive theorem provers such as Coq are powerful tools to formally guarantee the correctness of software. However, using these tools requires significant manual effort and expertise. While Large Language Models (LLMs) have shown promise in automatically generating informal proofs in natural language, they are less effective at generating formal proofs in interactive theorem provers. In this paper, we conduct a formative study to identify common mistakes made by LLMs when asked to generate formal proofs. By analyzing 520 proof generation errors made by GPT-3.5, we found that GPT-3.5 often identified the correct high-level structure of a proof, but struggled to get the lower-level details correct. Based on this insight, we propose PALM, a novel generate-then-repair approach that first prompts an LLM to generate an initial proof and then leverages targeted symbolic methods to iteratively repair low-level problems. We evaluate PALM on a large dataset that includes more than 10K theorems. Our results show that PALM significantly outperforms other state-of-the-art approaches, successfully proving 76.6% to 180.4% more theorems. Moreover, PALM proves 1270 theorems beyond the reach of existing approaches. We also demonstrate the generalizability of PALM across different LLMs.
format Preprint
id arxiv_https___arxiv_org_abs_2409_14274
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Proof Automation with Large Language Models
Lu, Minghai
Delaware, Benjamin
Zhang, Tianyi
Software Engineering
Artificial Intelligence
Machine Learning
Logic in Computer Science
Programming Languages
D.2.4; I.2.2
Interactive theorem provers such as Coq are powerful tools to formally guarantee the correctness of software. However, using these tools requires significant manual effort and expertise. While Large Language Models (LLMs) have shown promise in automatically generating informal proofs in natural language, they are less effective at generating formal proofs in interactive theorem provers. In this paper, we conduct a formative study to identify common mistakes made by LLMs when asked to generate formal proofs. By analyzing 520 proof generation errors made by GPT-3.5, we found that GPT-3.5 often identified the correct high-level structure of a proof, but struggled to get the lower-level details correct. Based on this insight, we propose PALM, a novel generate-then-repair approach that first prompts an LLM to generate an initial proof and then leverages targeted symbolic methods to iteratively repair low-level problems. We evaluate PALM on a large dataset that includes more than 10K theorems. Our results show that PALM significantly outperforms other state-of-the-art approaches, successfully proving 76.6% to 180.4% more theorems. Moreover, PALM proves 1270 theorems beyond the reach of existing approaches. We also demonstrate the generalizability of PALM across different LLMs.
title Proof Automation with Large Language Models
topic Software Engineering
Artificial Intelligence
Machine Learning
Logic in Computer Science
Programming Languages
D.2.4; I.2.2
url https://arxiv.org/abs/2409.14274