← Nieuwste papers
💻 computer science

Runtime Verification: Monitoring, Knowledge, and Uncertainty (Lecture Notes)

Deze collegeaantekeningen presenteren de automata-theoretische, tijdslogische en epistemische grondslagen van runtime-verificatie, waarbij specificatieformalismen, diagnose, opaciteit en monitorbaarheid aan bod komen om uit te leggen hoe offline-analyse monitoren construeert voor deels waarneembare systemen, terwijl ook de uitdagingen van getimede extensies in real-time omgevingen worden aangepakt.

Oorspronkelijke auteurs: Benedikt Bollig

Gepubliceerd 2026-04-30
📖 6 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Benedikt Bollig

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 uit te vinden of een mysterieuze machine correct werkt. Je kunt niet naar binnen kijken (het is een "black box") en je kunt hem niet stoppen om uit elkaar te halen. Je kunt alleen kijken wat eruit komt: een stroom lichtsignalen, geluiden of datapunten.

Dit is de wereld van Runtime Verification. In plaats van te proberen elke mogelijke actie die de machine zou kunnen uitvoeren, te voorspellen voordat hij start (wat vergelijkbaar is met het proberen van elke mogelijke route in een doolhof te mappen voordat je het binnenkomt), observeert runtime verification de machine tijdens het draaien en geeft een alarm als er iets mis wordt gezien.

Deze lezingenserie van Benedikt Bollig onderzoekt hoe dit gedaan kan worden wanneer je te maken hebt met onzekerheid. Misschien verbergt de machine sommige van zijn acties, of misschien weet je niet precies hoe hij werkt. De notities gebruiken een speciale vorm van logica (genaamd "epistemic logic" of kennislogica) om exact bij te houden wat de waarnemer weet en wat hij niet weet op elk willekeurig moment.

Hier is een uiteenzetting van de belangrijkste ideeën met behulp van alledaagse analogieën:

1. De Drie Niveaus van het Kennen van de Machine

Het artikel beschrijft drie manieren waarop we met een systeem kunnen interageren:

  • White Box: Je hebt de blauwdrukken. Je weet precies hoe elke tandwiel draait. Dit is alsof je de handleiding hebt en de motor openstaat. Je kunt controleren of de machine zal werken voordat je hem zelfs maar aanzet (Model Checking).
  • Gray Box: Je hebt een schetsmatige handleiding. Er staat "misschien gebeurt dit, misschien gebeurt dat". Er zijn gaten. Je kunt niet 100% zeker zijn wat er zal gebeuren, dus je moet het zien draaien om zeker te zijn.
  • Black Box: Je hebt helemaal geen handleiding. Je ziet alleen de output. Je moet raden wat er binnenin gebeurt op basis van wat je ziet.

2. De Drie Hoofdspellen: Diagnose, Opaciteit en Monitoring

Het artikel behandelt drie verschillende problemen als variaties van hetzelfde spel: "Wat kan ik afleiden uit wat ik zie?"

Diagnose: De Detective

  • Het Doel: Je wilt weten of een specifiek slecht ding (een "fout") is gebeurd.
  • De Analogie: Stel je een beveiliger voor die een bankkluis bewaakt. De kluis heeft een stil alarm (de fout) dat niemand hoort. De beveiliger ziet alleen mensen in- en uitlopen.
    • Als een persoon binnenkomt, weet de beveiliger niet of ze iets hebben gestolen.
    • Maar als de beveiliger ziet dat een persoon met een zak goud wegloopt, weet hij zeker dat de diefstal heeft plaatsgevonden.
    • Diagnose is het vermogen om te zeggen: "Ik ben 100% zeker dat de diefstal heeft plaatsgevonden", zelfs als je de diefstal zelf niet hebt gezien, alleen de nasleep. Het artikel vraagt: Kan de beveiliger dit uiteindelijk altijd uitzoeken?

Opaciteit: De Spion

  • Het Doel: Je wilt een geheim verbergen. Je wilt ervoor zorgen dat de waarnemer nooit weet of het geheim heeft plaatsgevonden.
  • De Analogie: Stel je een spion voor die probeert een geheim bericht in een kamer te smokkelen. De waarnemer houdt de deur in de gaten.
    • Als de spion binnenkomt, ziet de waarnemer "Iemand is binnengekomen".
    • Als een normaal persoon binnenkomt, ziet de waarnemer ook "Iemand is binnengekomen".
    • Opaciteit is de kunst om de binnenkomst van de spion exact te laten lijken op de binnenkomst van een normaal persoon. Als de waarnemer het verschil nooit kan vertellen, is het geheim "opake" (verborgen). Het artikel vraagt: Is het mogelijk om een systeem te ontwerpen waarbij het geheim van de spion altijd verborgen blijft?

Monitoring: De Verkeersagent

  • Het Doel: Een oordeel vellen over het gedrag van het systeem terwijl het gebeurt.
  • De Analogie: Een verkeersagent die een auto observeert.
    • Oordeel "Waar": De auto rijdt perfect. De agent weet dat hij nooit zal crashen.
    • Oordeel "Onwaar": De auto is zojuist door rood gereden. De agent weet dat hij de regels heeft overtreden.
    • Oordeel "?": De auto rijdt momenteel normaal, maar hij zou over 5 seconden door rood kunnen rijden. De agent weet het nog niet.
    • Het artikel onderzoekt wanneer een agent kan stoppen met het zeggen van "?" en kan beginnen met het zeggen van "Waar" of "Onwaar". Soms kun je, hoe lang je ook kijkt, nooit zeker zijn (het oordeel blijft "?").

3. Het "Kennis"-Probleem

De kern van het artikel is dat onzekerheid de belangrijkste vijand is.

  • Als je een lichtflits ziet, weet je dan of het "Fout" betekent of gewoon "Systeemcontrole"?
  • Het artikel gebruikt Epistemic Logic (de logica van kennis) om dit in kaart te brengen. Het behandelt het hoofd van de waarnemer als een kaart.
    • Als de kaart slechts één mogelijke route toont, weet de waarnemer de waarheid.
    • Als de kaart twee routes toont (één met een fout, één zonder), is de waarnemer onzeker.

4. De Twist: Tijd Verandert Alles

Het laatste hoofdstuk voegt Tijd toe aan de mix. Stel je voor dat de machine niet alleen dingen doet, maar ze doet op specifieke snelheden.

  • Zonder Tijd: Als je lang genoeg wacht, kun je misschien de waarheid achterhalen.
  • Met Tijd: De dingen worden rommelig.
    • Diagnose: Je moet misschien weten dat een fout binnen 5 seconden is gebeurd. Als het systeem traag is, kun je het venster missen om zeker te zijn.
    • Opaciteit: Het verbergen van een geheim wordt moeilijker als de timing van gebeurtenissen het verraadt.
    • Het Grote Slechte Nieuws: Het artikel onthult een angstaanjagende limiet. In de wereld van de tijd, als je probeert het "kijken naar de klok" te combineren met "uitzoeken wat de waarnemer weet", breekt de wiskunde. Het wordt onbeslisbaar. Dit betekent dat er geen algoritme bestaat dat je altijd kan vertellen of een getimed systeem veilig of opake is. Het is als proberen een puzzel op te lossen waarbij de stukken van vorm veranderen terwijl je ernaar kijkt.

Samenvatting

Dit artikel is een gids voor het bouwen van "slimme waarnemers" voor complexe systemen.

  1. Het leert ons hoe we Diagnostische Systemen (detectives) en Monitoren (verkeersagenten) kunnen bouwen die werken, zelfs als ze niet alles kunnen zien.
  2. Het toont aan dat Diagnose (fouten vinden) en Opaciteit (geheimen verbergen) twee kanten van dezelfde medaille zijn.
  3. Het bewijst dat terwijl we deze puzzels voor eenvoudige systemen kunnen oplossen, het toevoegen van Tijd sommige ervan onmogelijk maakt om perfect op te lossen.

De ultieme les is dat we in een wereld met gedeeltelijke informatie niet altijd direct de waarheid kunnen weten. We moeten slim zijn over wat we kunnen weten, wanneer we het kunnen weten, en wanneer we moeten accepteren dat we het nooit zullen weten.

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 →