← Nieuwste papers
💻 computer science

Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agents

Dit artikel pleit voor intentie-formalisatie als de cruciale oplossing om de kloof tussen informele gebruikerswensen en AI-genererde code te overbruggen, en schetst een onderzoeksagenda die kunstmatige intelligentie, programmeertalen en mens-computerinteractie combineert om betrouwbare software te garanderen.

Oorspronkelijke auteurs: Shuvendu K. Lahiri

Gepubliceerd 2026-03-19
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Shuvendu K. Lahiri

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

🤖 De "Vibe Coding" Valstrik: Waarom AI-code niet altijd klopt

Stel je voor dat je een chef-kok hebt die razendsnel kan koken. Je zegt tegen hem: "Maak een gerecht met aardappels en tomaten."
De chef komt met een bordje. Het ziet er prachtig uit, het ruikt goed, en het lijkt op wat je besteld hebt. Maar wacht eens... je wilde een salade, en de chef heeft friet gemaakt. Of misschien wilde je de aardappels geschild, maar hij heeft ze met schil gebruikt.

Dit is precies wat er gebeurt met AI-programmeurs (zoals GitHub Copilot of Claude). Ze kunnen code schrijven die er perfect uitziet ("vibe coding"), maar ze begrijpen niet altijd wat je echt bedoelt. Ze raden op basis van patronen, net als de chef die denkt dat jij friet wilt omdat dat populair is.

Het artikel van Shuvendu K. Lahiri noemt dit het "Intent Gap" (het intentie-gat). Het is de afstand tussen wat jij in je hoofd hebt en wat de computer doet.

🛠️ De Oplossing: "Intent Formalisatie" (De Duidelijke Receptkaart)

De auteur stelt voor dat we niet moeten proberen de AI slimmer te maken, maar dat we onze bestellingen duidelijker moeten maken. Hij noemt dit Intent Formalisatie.

In plaats van alleen te zeggen "Maak een gerecht," geven we de AI een duidelijk, controleerbaar recept (een specificatie) voordat hij begint te koken.

Stel je dit voor als een spectrum van hoe strikt je wilt zijn:

  1. De Lichte Versie (Tests):

    • Vergelijking: Je zegt tegen de chef: "Als ik aardappels en tomaten krijg, moet het eruitzien als dit voorbeeld op de foto."
    • In de praktijk: Je geeft de AI een paar voorbeelden (testen). Als de code die de AI maakt niet klopt met jouw voorbeeld, weet je direct dat het fout is. Dit is goedkoop en snel.
  2. De Strikte Versie (Contracten):

    • Vergelijking: Je geeft de chef een contract: "Geen aardappels met schil, en er mogen geen uien in zitten. Als er een ui in zit, gooi je het bord weg."
    • In de praktijk: De AI schrijft regels (assertions) die de code tijdens het draaien controleert. Als de code een fout maakt, stopt hij direct.
  3. De Perfecte Versie (Formele Bewijzen & DSL's):

    • Vergelijking: Je geeft de chef een wiskundig bewijs dat het gerecht onmogelijk fout kan zijn, en de keuken is zo gebouwd dat hij alleen het juiste gerecht kan maken.
    • In de praktijk: De AI schrijft code in een speciale taal die wiskundig bewijst dat het klopt. De computer genereert dan de code die 100% veilig is.

🎯 Het Grote Probleem: Wie controleert het Recept?

Hier zit de hak in de tak. Als de AI een recept schrijft, hoe weet je dan of dat recept goed is?

  • Bij code kun je het testen.
  • Maar bij het recept zelf (de specificatie) heb je geen "god" die zegt of het klopt. Alleen jij (de gebruiker) weet wat je wilt.

De auteur zegt: "We hebben slimme meetinstrumenten nodig."
Stel je voor dat je een AI-recept laat maken en een andere AI (een 'recept-checker') zegt: "Dit recept is goed, want het werkt op 100 voorbeelden, maar het slaagt niet als je een rare groente toevoegt." Zo kunnen we de kwaliteit van de instructies meten zonder dat de mens elke seconde hoeft te kijken.

🚀 Wat hebben we al bereikt? (De Proefjes)

Het artikel laat zien dat dit werkt in de praktijk:

  • Betere foutopsporing: AI kan nu regels schrijven die echte bugs vinden die mensen eerder over het hoofd zagen.
  • Interactief werken: Er zijn systemen (zoals TiCoder) die zeggen: "Ik heb twee opties. Optie A doet X, Optie B doet Y. Welke wil jij?" Door de gebruiker één keer te vragen, wordt de code veel betrouwbaarder.
  • Van tekst naar bewezen code: Er zijn al systemen die een losse tekst (zoals een RFC-document) omzetten in een volledig bewezen, veilig computerprogramma.

🔮 De Toekomst: Wat moeten we nog doen?

We staan nog in de kinderschoenen. De auteur noemt een paar uitdagingen voor de komende jaren:

  • Van proefjes naar de echte wereld: Tot nu toe werkt het goed op kleine puzzels. Hoe werkt het bij enorme, complexe systemen met duizenden onderdelen?
  • Veranderingen: Als je bestaande code wilt aanpassen, hoe vertaal je dan "maak het sneller" naar een strikt recept zonder de rest te breken?
  • Mensen-AI samenwerking: Hoe maken we het voor mensen makkelijk om deze regels te schrijven? We moeten een nieuwe manier vinden om met de AI te praten, niet als een programmeur, maar als een manager die duidelijke instructies geeft.

💡 Conclusie in één zin

AI kan tegenwoordig code schrijven alsof het niets, maar om die code veilig en betrouwbaar te maken, moeten we stoppen met gokken en beginnen met het maken van duidelijke, controleerbare instructies (specificaties). Als we dat doen, wordt software niet alleen meer, maar ook beter.

Kortom: Geef de AI geen vaag idee, geef haar een onmiskenbaar recept. Dan kun je vertrouwen op wat ze kookt.

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 →