Studio Confronta LLM e Metodi Basati su Regole per la Verifica Automatica di Programmi C
Un'indagine empirica ha recentemente esaminato vari metodi per la creazione automatica di annotazioni ACSL nei programmi C, fondamentali per lo sviluppo di software verificabile. Lo studio ha confrontato uno script Python basato su regole con il plugin RTE di Frama-C e tre grandi modelli linguistici: DeepSeek-V3.2, GPT-5.2 e OLMo 3.1 32B Instruct. Concentrandosi sulla generazione di annotazioni one-shot, la ricerca ha valutato l'efficacia di queste tecniche nelle attività di verifica. Le annotazioni generate da un sottoinsieme filtrato del benchmark CASP sono state valutate utilizzando il plugin WP di Frama-C insieme a diversi risolutori SMT. L'analisi si è focalizzata sui tassi di successo delle dimostrazioni, sui timeout dei risolutori e sulle durate di elaborazione interna. I risultati hanno rivelato che le strategie basate su regole hanno mostrato un'affidabilità maggiore per il successo della verifica, mentre i metodi basati su LLM hanno mostrato prestazioni incoerenti. Questa ricerca è dettagliata nel documento arXiv:2602.13851v3, classificato come tipo replace-cross su arXiv.
Fatti principali
- Lo studio ha valutato la generazione automatica di annotazioni ACSL per programmi C.
- Ha confrontato uno script Python basato su regole, il plugin RTE di Frama-C e tre LLM.
- Gli LLM testati erano DeepSeek-V3.2, GPT-5.2 e OLMo 3.1 32B Instruct.
- La ricerca si è concentrata sulla generazione di annotazioni one-shot per attività di verifica.
- La valutazione ha utilizzato un sottoinsieme filtrato del benchmark CASP.
- Le annotazioni sono state valutate tramite il plugin WP di Frama-C con più risolutori SMT.
- Le metriche includevano tassi di successo delle dimostrazioni, timeout dei risolutori e tempo di elaborazione interno.
- Gli approcci basati su regole si sono dimostrati più affidabili per il successo della verifica rispetto ai metodi basati su LLM.
Entità
Istituzioni
- arXiv