Salvato in:
Dettagli Bibliografici
Autori principali: Mukherjee, Prasita, Delaware, Benjamin
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:https://arxiv.org/abs/2410.14835
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866912658059427840
author Mukherjee, Prasita
Delaware, Benjamin
author_facet Mukherjee, Prasita
Delaware, Benjamin
contents We present \synver{}, a novel synthesis and verification framework for C programs, that deploys a Large Language Model (LLM) to search for a candidate program that satisfies the given specification. Our key idea is to impose syntactic and semantic biases on programs generated by LLMs, such that the synthesized program is more amenable to automated verification. Based on this idea, we propose a novel specification-verification tool, built on top of Verified Software Toolchain, that help automate the process. Our experiments on a diverse set of benchmarks drawn from the deductive program synthesis community, shows that this approach is scalable and extensible. The benchmarks constitute of specifications comprising of basic coding examples, Separation Logic based assertions, and API specifications.
format Preprint
id arxiv_https___arxiv_org_abs_2410_14835
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Towards Automated Verification of LLM-Synthesized C Programs
Mukherjee, Prasita
Delaware, Benjamin
Programming Languages
We present \synver{}, a novel synthesis and verification framework for C programs, that deploys a Large Language Model (LLM) to search for a candidate program that satisfies the given specification. Our key idea is to impose syntactic and semantic biases on programs generated by LLMs, such that the synthesized program is more amenable to automated verification. Based on this idea, we propose a novel specification-verification tool, built on top of Verified Software Toolchain, that help automate the process. Our experiments on a diverse set of benchmarks drawn from the deductive program synthesis community, shows that this approach is scalable and extensible. The benchmarks constitute of specifications comprising of basic coding examples, Separation Logic based assertions, and API specifications.
title Towards Automated Verification of LLM-Synthesized C Programs
topic Programming Languages
url https://arxiv.org/abs/2410.14835