Meertraps doelredeneringen met ChatGPT

Eenvoudige Weerlegging

In aansluiting op Ervaringen bezwaar maken met ChatGPT o4 nog een aanvulling over complexere onderbouwingen. Het is geen wetenschappelijk diepgaand stuk, maar documentatie van ervaringen tot dusver.

Regelmatig zijn besluiten op een Woo-verzoek met een (gedeeltelijke) weigering relatief duidelijk onrechtmatig. Er is maar een enkele stap nodig om aan te tonen dat het besluit onrechtmatig is en hersteld dient te worden. Dergelijke redeneringen kan ChatGPT over het algemeen wel vlot en nauwkeurig vinden. Het is enkel betreurenswaardig dat je dan gauw weer een half jaar verder bent vooraleer herstel plaatsvindt.

Meertraps Bewijsketen

Op dit moment (juli 2025) lijkt het niet mogelijk om meertraps doelredeneringen te vinden via ChatGPT. Je kunt bijvoorbeeld niet in 1x een antwoord krijgen op een vraag zoals:

Hier heb je een berg beleidsdocumenten, de toepasselijke wetten, eventueel aanvullende stukken over de zaak en een besluit.
Geef een lijst van alle logisch en juridisch correcte redeneringen in een of meer stappen die aantonen dat het besluit onrechtmatig is.
Hou geen rekening met volgorde van wetten; zet elke logische redenering die onrechtmatigheid aantoont in de lijst. Ik bepaal daarna zelf wat meest steekhoudend is.

Meer informatie over pogingen om te komen tot deductieve redeneringen in het recht (mogelijk meer common law-georienteerd) is te vinden in:

https://arxiv.org/pdf/2404.09868

Waarom kan ChatGPT dit mogelijk niet?

Het is niet met zekerheid te bepalen. Maar een aantal mogelijke redenen zijn niet geheel denkbeeldig.

Een eerste mogelijke (niet-onderbouwde) oorzaak zou kunnen zijn dat deze huidige beperking van ChatGPT misschien voortkomt uit het feit dat de documenten waarop getraind is een groot aantal eenvoudige of beperkte onderbouwingen bevatten, terwijl er veel meer verschillende unieke meertraps onderbouwingen zijn. Het lijkt er ook op dat ChatGPT beter is in het onderkennen van logische fouten of paden als de logica zich dicht bij elkaar bevindt, bijvoorbeeld op een enkele pagina van een uitspraak.

Een tweede mogelijkheid is dat ChatGPT zich momenteel hier verre van houdt omdat (net zoals bij schaakcomputers) het aantal mogelijke zetten snel explodeert als het oplossingsalgoritme paden niet snel diskwalificeert als onrealistisch. Er lijkt geen expliciete bereikbaarheidsgraaf (“reachability graph”) geconstrueerd te worden. Dat is misschien ook niet realistisch; het is ook pas sinds een jaar mogelijk om enigszins fatsoenlijk wiskundige formules en logica toe te passen.

Waarschuwing

Allereerst een waarschuwing. De meest voorkomende wiskundige logica’s en juridische logicasystemen kunnen incidenteel tot andere uitkomsten leiden, ook al streven ze het zelfde doel van waarheidsvinding na. Wiskundige logica is meestal strikt en helder gedefinieerd met een beperkt aantal axioma’s. Juridische (bestuurs)logica kent vage begrippen en beleidsvrijheid (“goede ruimtelijke ordening”, Dukkiaanse ordening), belangenafweging (“goed functioneren van de Staat”), fijnkorrelige afwijzing (niet zwart of wit), axioma’s uit ECLI*-jurisprudentie van hogere of lagere rechtbanken die niet wiskundig steekhoudend zijn, en vage en normen van buiten het stelsel zoals fair play of VN-handvest.

ChatGPT volgt meestal de vage juridische logica uit zichzelf, maar wees je er bewust van dat de software ook wel eens totaal foute deducties kan opstellen of paden vergeten door te strikte interpretatie.

Hoe kom je dan tot een meertraps bewijsketen?

Er zijn twee opties. Voor mij werkt het het beste om voor jezelf een beperkt aantal (hypothetische) routes te bedenken bestaande uit meerdere bewijsstappen. ChatGPT kan je bij elke stap helpen om de kracht en geloofwaardigheid van de stappen en de hele route te onderzoeken.

Harken

Het helpt als je vooraf al weet wat je doelconclusie moet zijn; deze aanpak lijkt op HARKen. Harken mag hier wel; in wetenschappelijk onderzoek is het ronduit problematisch, maar hier zijn we in retrospectief mogelijke bewijsstructuren aan het opbouwen.

Voorbeeld van een doelconclusie:

Dit besluit is onrechtmatig wegens ontbreken milieu-informatie die er moet zijn.

Laad eerst de documenten in een chat met duidelijke identifiers zoals een type document letter (W is wet, E is email, B is besluit) plus volgnummer. Een aantal hypothetische routes zijn dan:

  • Route 1: W1 wetgeving zegt … → E1 e-mail zegt … → B1 besluit zegt …
  • Route n: W1 wetgeving zegt … → E1 e-mail zegt … → B1 besluit zegt …

Na het motiveren van een stap kun je ChatGPT vragen stellen zoals:

We hebben nu een onderbouwing dat FEIT op route n een geldige juridische conclusie is. Op basis van welke rechtsgronden kan onderbouwd worden dat dan ook VOLGEND_FEIT geldt? Of mis ik tussenstappen en waar zou ik dan aan kunnen denken?

Toets daarna per tussenstap de gevoeligheid zoals met:

  • Welke jurisprudentie ondersteunt deze stap? [Merk op: ECLI’s zijn vaak totale sprookjes, zorgvuldig nalezen en volgen]
  • Welke jurisprudentie spreekt deze stap tegen?
  • Welke tegenargumenten zijn te verwachten bij deze tussenstap en hoe pareer ik deze nu al?
  • Hoe waarschijnlijk is het dat een bestuursrechter dit betoog volgt als het door een burger in zijn schrijfwijze ingebracht wordt? En hoe verhoog ik de acceptatiegraad?

Alternatief: grammatica’s

Een alternatief voor een kleine groep van relatief simpele problemen is ChatGPT te voeden met de basisdocumenten en een grammatica te laten opstellen en die vervolgens om te zetten in een gerichte graaf:

Stel een grammatica op voor de logische afleidingen in dit document. Maak hiervan een tekstbestand dat je later kunt gebruiken om een gerichte bereikbaarheidsgraaf op te stellen.

Het advies ECLI:NL:RVS:2025:3096 van Wattel over Woo artikel 5.2 lid 3 leidt tot de volgende grammatica:

# Grammatica: Woo Artikel 5.2 Interpretatie en Toepassing

# Niet-terminale symbolen
<start> ::= <beoordelingsschema>
<beoordelingsschema> ::= <vraag1> <vraag2> <vraag3> <tenzij>
<vraag1> ::= "Bevat het document persoonlijke beleidsopvattingen?" -> <ja_of_nee>
<vraag2> ::= "Is het document opgesteld ten behoeve van formele bestuurlijke besluitvorming?" -> <ja_of_nee>
<vraag3> ::= "Is de informatie herleidbaar tot personen?" -> <ja_of_nee>
<tenzij> ::= "Is openbaarmaking onevenredig schadelijk voor het intern beraad?" -> <ja_of_nee>

<ja_of_nee> ::= "ja" | "nee"

# Afleidingsregels (regels gebaseerd op juridische logica)
<regel1> ::= "Als nee op <vraag1>, dan openbaar maken (tenzij andere gronden in art. 5.1 Woo)."
<regel2> ::= "Als ja op <vraag1> en nee op <vraag2>, dan geen verplichting tot verstrekking."
<regel3> ::= "Als ja op <vraag1> en ja op <vraag2> en nee op <tenzij>, dan verplichting tot verstrekking in niet-herleidbare vorm."
<regel4> ::= "Als ja op <vraag1> en ja op <vraag2> en ja op <tenzij>, dan afweging nodig volgens art. 5.1(5) Woo."
<regel5> ::= "Objectieve gegevens zijn geen persoonlijke beleidsopvattingen."
<regel6> ::= "‘Formele bestuurlijke besluitvorming’ is ruimer dan art. 1:3 Awb."

# Semantische labels
<persoonlijke-beleidsopvatting> ::= "ambtelijk advies" | "visie" | "standpunt" | "overweging"
<objectieve-inhoud> ::= "feit" | "prognose" | "beleidsalternatief" | "effect"
<weigeringsgrond> ::= "intern beraad" | "belangenafweging" | "procespositie" | "persoonlijke schade ambtenaar"

# Slotregel
<conclusie> ::= "Verstrekking afhankelijk van resultaat afleidingsboom gebaseerd op bovengenoemde regels."

Vervolgens vraag je om de grammatica om te zetten in een graaf, waarbij de routes tussen start en doelconclusie afwijkend gekleurd worden. Een voorbeeld van een dergelijke gerichte bereikbaarheidsgraaf opgesteld door ChatGPT is op basis van het Wattel-advies:

Deze alternatieve aanpak werkt enkel voor heel eenvoudige grammatica’s met maximaal enkele tientallen stappen. Los van semantische beoordelingen kun je dit ook per document of hoofdstuk doen om zo beter zicht te krijgen op de logica. De Nederlandse wetteksten zijn over het algemeen niet al te complex; hierarchisch dieper dan drie niveau’s na bepaling van de gecombineerde voorwaarden heb ik zelden gezien.

Deze grammatica kan gebruikt worden om ook strategisch vooraf de keuze te maken om openbaarmaking informatie weigerbaar te maken:

Gebruik dit advies van Wattel. Ik wil informatie weigeren op basis van artikel 5.2 lid 3 als men het document opvraagt. Hoe zorg ik er voor dat ik dit kan weigeren?

Hier volgt dan een mooie checklist uit met ChatGPT:

  • Document moet een fbb-stuk zijn.
  • Benoem concrete persoonlijke beleidsopvattingen.
  • Voer een belangenafweging uit - geen standaardzinnen.
  • Specificeer de onevenredigheid.
  • Verwijs naar precedenten of beleidslijnen.

Wat maakt dan dat ChatGPT nu wel een bewijsketen kan maken?

Het eerst opstellen van de grammatica (voor een gerichte graaf of een matrix) verwijdert dubbelzinnigheid inherent aanwezig bij juridische logica uit het document. De redeneerlijn is daarna een wiskundig probleem geworden, dat eenvoudig wiskundig oplosbaar is.

Om deze reden kan deze alternatieve benadering het opstellen van een bewijsketen soms ondersteunen.

Helaas kan het verwijderen van dubbelzinnigheid leiden tot een grammatica die qua juridische logica niet steekhoudend is omdat de ambiguiteit nodig blijft in de beslisketen.

Een recente aanvulling is:

wat lijkt te reflecteren op:

  • Daniel Kahneman, Thinking, Fast and Slow, ISBN 9780374533557 (staat ook als [42] in bibliografie paper)
  • Bas Erlings, Het Spel van de Populist, ISBN 9789021344331

Paper “Hierarchical Reasoning Model” door Guan Wang, Jin Li, Yuhao Sun, Xing Chen, Changling Liu, Yue Wu, Meng Lu, Sen Song, Yasin Abbasi Yadkori van Sapient Intelligence, Singapore:

https://arxiv.org/pdf/2506.21734

Voor liefhebbers van leren leren en denken (metacognitie) kwam deze bron nog binnen van een lezing van Richard Feynman qua natuurkunde aanleren in Brazilie:

https://calteches.library.caltech.edu/46/2/LatinAmerica.htm

En aanleren: