Terug naar studenten

Formele methoden & verificatie

Model checking van symbolische transitiesystemen

De formele theorie van model based testing maakt gebruik van Symbolic Transition Systems (STS), een vorm van labeled transition systems (LTS). Voor LTS-modellen heeft de academische wereld model checking-algoritmen ontwikkeld die kunnen controleren of modellen aan bepaalde eigenschappen voldoen. Met deze techniek kan het ontwerp van een systeem worden gevalideerd voordat het wordt gebouwd.

Model checking gebruikt zogenaamde Linear Time Logic (LTL) om eigenschappen uit te drukken die tegen het transitiesysteem worden gecontroleerd. Een LTL-eigenschap is een logische formule die bijvoorbeeld bereikbaarheid of veiligheid kan uitdrukken.

De modellen van Axini gebruiken symbolische transitiesystemen (STS), waarin ook data is opgenomen in de vorm van variabelen, toekenningen en condities. Dit verhoogt de expressiviteit en testkracht van onze modellen, maar maakt het lastig om de bestaande LTS-algoritmen uit de academische wereld toe te passen.

Een andere uitdaging is dat de model checker naadloos in onze tool moet kunnen worden geïntegreerd, zonder afhankelijkheden van componenten die niet in onze stack passen.

Bij Axini hebben we ruime kennis en ervaring in het bouwen van LTS-gebaseerde (zogenaamde explicit state) model checkers. Zo deed Dr. Ir. Machiel van der Bijl zijn promotie in de formele methoden-groep van de Universiteit Twente. We onderhouden contact met diverse onderzoeksgroepen aan universiteiten om je waar nodig te ondersteunen.

Mogelijke onderzoeksvragen

  1. 1

    Mens-leesbare LTL-formules

    Een LTL-formule is voor onze klanten lastig te gebruiken: complexe formules met symbolen die moeilijk aan hun domein te koppelen zijn. Hoe kunnen we LTL-formules op een mens-leesbare manier uitdrukken, zonder dat je een PhD nodig hebt om ze te begrijpen?

  2. 2

    Model checking van STS-modellen

    Hoe kunnen we STS-modellen direct model-checken zonder ze eerst om te zetten naar LTS-modellen?

Recent werk

  • David Hildering (2025) onderzoekt hoe technieken rond model checking, zoals symbolic execution en padanalyse, gebruikt kunnen worden om efficiënt testgevallen te berekenen.
  • Lucas Steehouwer (2022) ontwikkelde een proof-of-concept dat deadlock-vrijheid van Axini-modellen kan verifiëren door modellen te vertalen naar Promela, de invoertaal van de SPIN model checker.

Interesse in dit onderwerp? Neem contact op!

students@axini.com