Knowledge Graphs, the Missing Link in Agentic AI-based Formal Verification
Ce papier propose une base de connaissances centrée sur la vérification qui intègre des représentations intermédiaires structurées issues des spécifications, du RTL et des retours d'outils formels pour guider un flux de travail multi-agents, améliorant ainsi considérablement l'ancrage, la compilabilité et la couverture des assertions SystemVerilog générées par des LLM pour la vérification formelle.
Article original placé dans le domaine public sous CC0 1.0 (http://creativecommons.org/publicdomain/zero/1.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous essayez de construire un château LEGO massif et incroyablement complexe à partir d'un manuel d'instructions écrit. Le manuel est rédigé en anglais courant, mais le château est construit avec des milliers de petites briques spécifiques (la conception matérielle).
Le Problème :
Dans le monde de la conception de puces, les ingénieurs utilisent la « Vérification Formelle » pour prouver mathématiquement que le château ne s'effondrera pas. Pour ce faire, ils écrivent un ensemble de règles strictes appelées Assertions SystemVerilog (SVAs). Ces règles disent des choses comme : « Si le bouton rouge est enfoncé, la porte bleue doit s'ouvrir dans les 3 secondes. »
Traditionnellement, écrire ces règles est un cauchemar. Cela nécessite qu'un humain lise le manuel anglais brouillon, examine la structure LEGO complexe et la traduise en un code parfait et sans erreur. Si le manuel est vague ou si l'humain manque un détail infime concernant une brique spécifique, la règle échoue et tout le processus de vérification s'effondre.
Récemment, l'Intelligence Artificielle (IA) a été utilisée pour écrire ces règles automatiquement. Mais l'IA est souvent confuse. Elle lit le manuel mais ne « voit » pas les briques LEGO, ce qui conduit à des règles grammaticalement incorrectes ou qui n'ont aucun sens pour la conception réelle.
La Solution : Un « Bibliothécaire Numérique » (Le Graphes de Connaissances)
Ce papier propose une nouvelle façon d'aider l'IA. Au lieu de simplement laisser l'IA lire le manuel et deviner, les auteurs ont construit un Graphe de Connaissances (KG).
Pensez au Graphe de Connaissances comme à un bibliothécaire numérique ultra-organisé qui connecte trois choses :
- Les Instructions : Les exigences originales en anglais.
- Le Plan : La conception matérielle réelle (les briques LEGO).
- Le Retour d'information : Les résultats des outils de vérification (par exemple : « Cette règle a échoué car la porte ne s'est pas ouverte assez vite »).
Le bibliothécaire ne se contente pas de stocker ces éléments comme des piles de papier séparées. Il crée un réseau de connexions. Si vous demandez au bibliothécaire une règle spécifique, il extrait instantanément la phrase exacte du manuel, la brique spécifique à laquelle elle se réfère, et toutes les erreurs précédentes survenues avec des règles similaires.
Comment l'Équipe Fonctionne (Le Flux de Travail Multi-Agents)
Les auteurs n'ont pas seulement construit le bibliothécaire ; ils ont engagé une équipe d'« agents » IA spécialisés pour travailler avec lui. Imaginez une équipe de construction où chacun a un travail spécifique :
- L'Architecte (Génération de Propriétés) : Cet agent examine le manuel et les connexions du bibliothécaire pour écrire les règles initiales. Parce que le bibliothécaire fournit le contexte exact, les règles ont beaucoup plus de chances d'être correctes dès le départ.
- La Police Grammaticale (Correction de Syntaxe) : Si les règles contiennent des fautes de frappe ou des erreurs de codage, cet agent les corrige. Il utilise le bibliothécaire pour vérifier si une « brique manquante » est en fait une définition manquante dans le code.
- Le Détective (Correction CEX) : Parfois, une règle échoue parce que la conception est réellement défectueuse, ou parce que la règle était trop stricte. Cet agent examine la « scène de crime » (le rapport d'erreur), vérifie le plan et réécrit la règle pour la rendre plus juste ou corrige le malentendu.
- L'Inspecteur (Amélioration de la Couverture) : Cet agent vérifie s'il existe des parties du château qui n'ont pas encore été testées. Si c'est le cas, il demande au bibliothécaire de nouvelles règles pour tester ces zones spécifiques.
Les Résultats
L'équipe a testé ce système sur sept « châteaux » différents (conceptions de puces), allant de compteurs simples à des systèmes de mémoire complexes.
- Succès : Le système a constamment produit des règles que l'ordinateur pouvait réellement lire et exécuter (code compilable). Il a considérablement réduit le nombre de « fautes de frappe » et d'erreurs de base.
- Couverture : Le système a réussi à vérifier entre 78,5 % et 99,4 % du comportement de la conception, ce qui représente un taux de réussite très élevé.
- La Limite : Bien que le système soit excellent pour corriger les petites erreurs et faire des liens, il éprouve encore des difficultés avec les énigmes les plus complexes. Si une règle nécessite une logique complexe à long terme (comme « si cela se produit aujourd'hui, cela doit affecter cet événement dans trois jours »), l'IA reste parfois bloquée, même avec l'aide du bibliothécaire.
En Résumé
Ce papier présente un système où l'IA ne se contente pas de deviner comment vérifier les puces informatiques. Au lieu de cela, elle utilise une carte structurée (Graphe de Connaissances) pour lier directement les exigences écrites à la conception matérielle et aux résultats des tests. Cela permet à une équipe de spécialistes IA d'écrire, de corriger et d'améliorer les règles de vérification beaucoup plus fiablement qu'auparavant, transformant un jeu de devinettes chaotique en un processus structuré et traçable.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.