stutter bisimulation
{{Short description|Relationship between transition systems}}
In theoretical computer science, a stutter bisimulation is a relationship between two transition systems, abstract machines that model computation. It is defined coinductively and generalizes the idea of bisimulations. A bisimulation matches up the states of a machine such that transitions correspond; a stutter bisimulation allows transitions to be matched to finite path fragments.Principles of Model Checking (pages 536–580), by Christel Baier and Joost-Pieter Katoen, The MIT Press, Cambridge, Massachusetts.
Definition
In Principles of Model Checking, Baier and Katoen define a stutter bisimulation for a single transition system and later adapt it to a relation on two transition systems. A stutter bisimulation for is a binary relation R on S such that for all (s1,s2) in R:
- have the same labels
- If is a valid transition and then there exists a finite path fragment () such that each pair is in R and is in R
- If is a valid transition and is not then there exists a finite path fragment () such that each pair is in R and is in R
Generalizations
A generalization, the divergent stutter bisimulation, can be used to simplify the state space of a system with the tradeoff that statements using the linear temporal logic operator "next" may change truth value.{{cite journal|title=Divergent stutter bisimulation abstraction for controller synthesis with linear temporal logic specifications|journal=Automatica|volume=130|year=2021|doi=10.1016/j.automatica.2021.109723|hdl=10289/14366|hdl-access=free |last1=Mohajerani |first1=Sahar |last2=Malik |first2=Robi |last3=Wintenberg |first3=Andrew |last4=Lafortune |first4=Stéphane |last5=Ozay |first5=Necmiye }} A robust stutter bisimulation allows uncertainty over transitions in the system.{{cite journal|title=Robust stutter bisimulation for abstraction and controller synthesis with disturbance|journal=Automatica|volume=160|year=2024|doi=10.1016/j.automatica.2023.111394|doi-access=free |last1=Krook |first1=Jonas |last2=Malik |first2=Robi |last3=Mohajerani |first3=Sahar |last4=Fabian |first4=Martin |hdl=10289/16942 |hdl-access=free }}