← Nieuwste papers
💻 computer science

Neuro-Symbolic Software Verification: Hyper-charging Local Language Models with Symbolic Reasoning at Scale

Dit artikel introduceert VerIbmc, een neuro-symbolische pipeline die lokale open-weight taalmodellen combineert met symbolische invariant-synthese en iteratieve verifier-feedback om state-of-the-art loop-invariantgeneratie voor softwareverificatie te bereiken, waarbij een privacy-bewarend en kosteneffectief alternatief wordt geboden voor propriëtaire cloud-gebaseerde tools.

Oorspronkelijke auteurs: Muhammad A. A. Pirzada, Julian Parsert, Weiqi Wang, Konstantin Korovin, Lucas C. Cordeiro

Gepubliceerd 2026-06-16
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Muhammad A. A. Pirzada, Julian Parsert, Weiqi Wang, Konstantin Korovin, Lucas C. Cordeiro

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je voor dat je probeert te bewijzen dat een complexe machine (een computerprogramma) nooit zal breken, ongeacht hoe vaak je hem uitvoert. Het moeilijkste deel van dit bewijs is het begrijpen van de "lussen" van de machine—onderdelen waar hij een taak steeds opnieuw herhaalt. Om te bewijzen dat de machine veilig is, moet je een Loop Invariant vinden.

Denk aan een Loop Invariant als een "veiligheidsregel" die elke keer dat de machine een nieuwe cyclus van zijn lus begint, waar moet zijn. Bijvoorbeeld, als een lus van 10 naar 0 aftelt, kan de veiligheidsregel zijn: "Het getal is altijd tussen 0 en 10." Als je kunt bewijzen dat deze regel waar is bij de start, na elke stap waar blijft en leidt tot een veilige afsluiting, dan is de hele machine bewezen veilig.

Het probleem is dat het automatisch vinden van deze regels ongelooflijk moeilijk is. Het is also Mantels zoeken naar de geheime combinatie van een kluis zonder enige aanwijzingen.

De Oude Manier versus de Nieuwe Manier

De Oude Manier (Symbolische Redenering):
Traditioneel probeerden computers deze regels te vinden met strikte wiskunde en logica. Het is als een superprecieze accountant die elk getal controleert. Het is zeer betrouwbaar, maar traag en loopt vaak vast op complexe, rommelige problemen. Het is als proberen een doolhof op te lossen door elke wand één voor één te controleren.

De "Cloud" Manier (Grote AI-modellen):
Onlangs zijn mensen begonnen met het gebruiken van enorme Artificial Intelligence (AI) modellen om deze regels te raden. Deze AI's zijn als briljante, veelgelezen studenten die miljoenen codevoorbeelden hebben gelezen. Ze kunnen de juiste regel erg snel raden. Echter, om ze te gebruiken, moet je je code meestal naar een gigantische, dure cloudserver sturen (zoals het naar een vreemde sturen van je geheime blauwdrukken). Dit is slecht voor bedrijven die hun code privé willen houden, en het kost veel geld.

De Oplossing: VerIbmc (De Lokale "Super-Helper")

De auteurs van dit artikel hebben een nieuw systeem gebouwd genaamd VerIbmc. Denk aan dit als een lokale werkplaats waar je een slimme AI-assistent kunt gebruiken zonder ooit je gebouw te verlaten.

Zo werkt VerIbmc, gebruikmakend van een eenvoudige analogie:

Stel je voor dat je een moeilijke puzzel probeert op te lossen (de loop invariant).

  1. De Deterministische Detective (Fase 0 & 1): Voordat de AI om hulp wordt gevraagd, stuurt VerIbmc een strikte, logische detective (een tool genaamd ESBMC) om naar de puzzel te kijken. De detective controleert eerst eenvoudige feiten. Als de puzzel makkelijk is, lost de detective het direct op. Als de detective een paar solide aanwijzingen vindt (zoals "het getal is altijd positief"), schrijft hij deze op een whiteboard.
  2. De Lokale AI-Assistent (Fase 2): Als de detective vastloopt, roept hij de Lokale AI-Assistent erbij. Maar hier is de truc: de AI begint niet vanaf nul. De detective overhandigt de AI het whiteboard met de aanwijzingen die hij al heeft gevonden.
  3. De Feedbackloop: De AI raadt een volledige oplossing. De detective controleert deze.
    • Als het fout is, zegt de detective niet alleen "Nee." Ze zeggen: "Dit deel is fout, maar dit andere deel is eigenlijk correct." Ze nemen het correcte deel, schrijven het op het whiteboard en vragen de AI om het opnieuw te proberen, gebruikmakend van de nieuwe aanwijzingen.
    • Dit gebeurt steeds opnieuw totdat de puzzel is opgelost of de tijd op is.

Twee Manieren om te Denken (CoT versus ToT)

Het paper testte ook hoe de AI zou moeten "denken" terwijl hij de puzzel oplost:

  • Chain-of-Thought (CoT): De AI denkt in een rechte lijn, stap voor stap, zoals het schrijven van een enkel verhaal.
  • Tree-of-Thoughts (ToT): De AI vertakt uit, zoals een boom. Hij probeert tegelijkertijd een paar verschillende paden, ziet welk pad veelbelovend lijkt, en richt zijn energie vervolgens op de beste paden. Het paper vond dat voor de sterkere AI-modellen deze vertakkingsmethode geweldig was, maar voor kleinere, zwakkere modellen verspilde het soms tijd.

De Resultaten: Waarom dit Er toe Doet

De onderzoekers hebben dit systeem getest op honderden verschillende programmeerpuzzels met behulp van vijf verschillende "open-weight" AI-modellen (modellen die iedereen kan downloaden en op eigen computers kan draaien).

  • Privacy Eerst: Omdat alles lokaal op een machine draait, verlaat de code nooit de organisatie. Het is alsof je je huiswerk maakt in je eigen kamer in plaats van het aan een vreemde te geven.
  • Kosteneffectief: Je hoeft geen dure vergoedingen te betalen aan grote cloudbedrijven.
  • Prestaties: De beste opstelling (het gebruik van een groot lokaal model genaamd GPT-OSS-120B) loste 86,4% van de problemen op. Dit is beter dan veel traditionele tools en concurrerend met de dure cloud-gebaseerde AI-tools.
  • De "Gratis" Boost: Het systeem ontdekte dat de "Detective"-fase (het symbolische deel) 75 problemen volledig zelf oploste zonder dat er AI nodig was. Voor zwakkere AI-modellen hielpen de aanwijzingen van de detective hen om 35 extra problemen op te lossen vergeleken met wat ze alleen zouden hebben kunnen oplossen.

De Kern van het Verhaal

VerIbmc bewijst dat je geen dure, privacy-schendende cloud-supercomputers nodig hebt om de veiligheid van software te verifiëren. Door een strikte logische detective te combineren met een slimme, lokale AI-assistent die leert van haar fouten, kun je topresultaten behalen op je eigen computer. Het is een manier om softwareverificatie privé, betaalbaar en krachtig te maken.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →