Towards Autoformalization of LLM-generated Outputs for Requirement Verification
Gupte, S
Autoformalization, the process of translating informal statements into formal logic, has gained renewed interest with the emergence of powerful Large Language Models (LLMs). While LLMs show promise in generating structured outputs from natural language (NL), such as Gherkin Scenarios from NL feature requirements, there's currently no formal method to verify if these outputs are accurate. This paper takes a preliminary step toward addressing this gap by exploring the use of a simple LLM-based autoformalizer to verify LLM-generated outputs against a small set of natural language requirements. We conducted two distinct experiments. In the first one, the autoformalizer successfully identified that two differently-worded NL requirements were logically equivalent, demonstrating the pipeline's potential for consistency checks. In the second, the autoformalizer was used to identify a logical inconsistency between a given NL requirement and an LLM-generated output, highlighting its utility as a formal verification tool. Our findings, while limited, suggest that autoformalization holds significant potential for ensuring the fidelity and logical consistency of LLM-generated outputs, laying a crucial foundation for future, more extensive studies into this novel application.
academic
Vers l'Autoformalization des Sorties Générées par LLM pour la Vérification des Exigences
Cet article explore la faisabilité d'utiliser des techniques d'autoformalization pour vérifier l'exactitude des sorties générées par les grands modèles de langage (LLM). Avec le potentiel démontré par les LLM dans la conversion des exigences en langage naturel en sorties structurées (comme les scénarios Gherkin), la vérification formelle de l'exactitude de ces sorties devient une question cruciale. L'équipe de recherche a mené deux séries d'expériences : la première a identifié avec succès l'équivalence logique entre deux exigences en langage naturel formulées différemment ; la deuxième a identifié les incohérences logiques entre les sorties générées par LLM et les exigences originales. Bien que la portée de la recherche soit limitée, les résultats démontrent un potentiel significatif de l'autoformalization pour assurer la fidélité et la cohérence logique des sorties générées par LLM.
Avec la prolifération des applications LLM, particulièrement dans les tâches d'ingénierie telles que la génération automatique de scénarios de test, existe un défi clé : l'absence de méthodes formelles pour vérifier que les sorties générées par LLM reflètent fidèlement les exigences originales en langage naturel. Par exemple, après la génération d'un scénario Gherkin à partir d'une exigence telle que « Lorsque la vitesse du véhicule ≥ 10 et la ceinture de sécurité n'est pas attachée, activer l'alerte de ceinture de sécurité », il est impossible de garantir l'exactitude logique du contenu généré.
Dans les domaines critiques pour la sécurité, tels que l'ingénierie automobile, la vérification des exigences est cruciale. Une conversion incorrecte des exigences peut entraîner :
Des cas de test incomplets ou erronés
Un comportement du système non conforme aux attentes
Méthodes formelles traditionnelles : principalement appliquées à la preuve de théorèmes mathématiques, manquent d'applications spécifiques à la vérification des exigences d'ingénierie
Méthodes d'évaluation des LLM : dépendent de l'inspection manuelle ou de méthodes heuristiques, manquent de vérification logique rigoureuse
Recherche en autoformalization : se concentrent principalement sur la construction de jeux de données et l'entraînement de modèles, peu d'applications en ingénierie pratique
Cet article propose d'appliquer les techniques d'autoformalization à un nouveau scénario : la vérification des sorties générées par LLM. En convertissant à la fois les exigences en langage naturel et les sorties générées par LLM en représentations logiques formelles (Lean 4), il utilise des vérificateurs de théorèmes pour valider l'équivalence logique.
Proposition du premier pipeline d'autoformalization dédié à la vérification des sorties générées par LLM : convertit les exigences en langage naturel et les sorties LLM en représentations formalisées Lean 4, et vérifie la cohérence logique par la preuve d'équivalence biconditionnelle
Validation de deux scénarios d'application concrets :
Identification de l'équivalence logique entre des exigences en langage naturel formulées différemment
Détection d'incohérences logiques entre les sorties générées par LLM et les exigences originales
Identification des défis techniques clés :
Nécessité et difficulté d'automatisation de l'ancrage des variables (variable grounding)
Impact du non-déterminisme des LLM sur la formalisation
Traitement de l'ambiguïté du langage naturel
Proposition de directions de recherche futures : établit les fondations pour construire un cadre fiable de vérification des sorties LLM
Innovation d'application interdisciplinaire : première application des techniques d'autoformalization du domaine de la preuve de théorèmes mathématiques à la vérification des exigences d'ingénierie logicielle
Utilisation LLM à deux niveaux :
Premier niveau : traduction de formalisation (LN → Lean)
Deuxième niveau : preuve de théorème (vérification d'équivalence)
Mécanisme de vérification basé sur l'échec : utilise l'échec du vérificateur de théorème comme indicateur d'incohérence logique, constituant une méthode de vérification négative innovante
Identification de l'ancrage des variables : met explicitement en avant que l'ancrage des variables est une étape indispensable du pipeline d'autoformalization, ce qui n'a pas été suffisamment souligné dans les recherches antérieures
R1 et R2 ont été convertis avec succès en propositions Lean (figures 3, 4)
Les mappages de variables ont été établis manuellement :
vehicle_speed_avg ≡ mean_vehicle_speed
seatbelt_active ≡ seatbelt_plugged_in
Résultats de Vérification (figure 5) :
✅ Compilation Lean réussie
✅ Preuve du théorème req1_eq_req2 réussie
Conclusion : R1 et R2 sont logiquement équivalents
Signification : Démontre que le pipeline peut identifier les exigences sémantiquement identiques mais formulées différemment, facilitant la vérification de la cohérence des exigences.
G3 introduit des variables non mentionnées dans R3
Structure logique plus complexe (contenant 4 exemples de scénarios)
Résultats de Vérification (figure 8) :
❌ Compilation du code Lean échouée ou preuve échouée
Conclusion : G3 est logiquement incohérent avec R3
Signification : Détecte avec succès le problème de « sur-génération » des sorties LLM — ajout de conditions de contrainte non présentes dans l'exigence originale.
La formalisation dépend de l'interprétabilité : le non-déterminisme des LLM entraîne que la même exigence peut produire différentes formalisations, toutes « raisonnables »
L'ancrage des variables est un goulot d'étranglement :
Étape la plus chronophage
Nécessite des connaissances spécialisées du domaine
Actuellement réalisable uniquement manuellement
Le contexte du système est crucial : l'absence de définition explicite du système (comme un dictionnaire de données) entraîne des incohérences de formalisation
La vérification négative est efficace : l'échec de la preuve peut efficacement indiquer une incohérence logique
Résolution de problèmes mathématiques : mathématiques du secondaire au premier cycle
Vérification de code : vérification de la correction des programmes
Biomédical : vérification de faits
Contribution de cet article : première application de l'autoformalization à la vérification des exigences d'ingénierie et à la vérification des sorties LLM, ouvrant une nouvelle direction de recherche.
Vérification de Faisabilité : le pipeline d'autoformalization peut efficacement vérifier la cohérence logique entre les sorties générées par LLM et les exigences originales
Valeur d'Application Double :
Vérification de la cohérence des exigences (identification des exigences équivalentes)
Contrôle de qualité des sorties LLM (détection des erreurs logiques)
Preuve de Concept : bien que l'échantillon soit limité, démontre avec succès le potentiel d'application des techniques de preuve de théorème à l'ingénierie logicielle
Weng et al. (2025) : Autoformalization in the era of large language models: A survey - littérature de synthèse
Wu et al. (2022) : Autoformalization with large language models - travail fondamental
Ren et al. (2025) : DeepSeek-Prover-v2 - modèle central utilisé dans cet article
Jiang et al. (2022) : Draft, sketch, and prove - méthode de décomposition de sous-objectifs
de Moura & Ullrich (2021) : The Lean 4 theorem prover - langage de formalisation
Évaluation Globale : Ceci est un article de preuve de concept de nature exploratoire qui propose une nouvelle direction de recherche précieuse, mais avec une vérification expérimentale gravement insuffisante. En tant que prépublication et recherche préliminaire, il réussit à identifier les problèmes clés et à fournir un chemin technique viable, mais il reste loin d'une solution mature. La valeur principale de l'article réside dans la définition du problème et l'orientation de la direction, plutôt que dans les percées technologiques. Les travaux ultérieurs sont recommandés pour se concentrer sur la résolution de l'automatisation de l'ancrage des variables et de l'évaluation à grande échelle.