An O(mlog n) algorithm for computing stuttering equivalence and branching bisimulation

Onderzoeksoutput: Bijdrage aan tijdschriftTijdschriftartikelAcademicpeer review

31 Citaten (Scopus)
89 Downloads (Pure)


We provide a new algorithm to determine stuttering equivalence with time complexity O(mlog n), where n is the number of states and mis the number of transitions of a Kripke structure. This algorithm can also be used to determine branching bisimulation in O(m(log |Act| + log n)) time, where Act is the set of actions in a labeled transition system. Theoretically, our algorithm substantially improves upon existing algorithms, which all have time complexity of the form O(mn) at best. Moreover, it has better or equal space complexity. Practical results confirm these findings: they show that our algorithm can outperform existing algorithms by several orders of magnitude, especially when the Kripke structures are large. The importance of our algorithm stretches far beyond stuttering equivalence and branching bisimulation. The known O(mn) algorithms were already far more efficient (both in space and time) than most other algorithms to determine behavioral equivalences (including weak bisimulation), and therefore they were often used as an essential preprocessing step. This new algorithm makes this use of stuttering equivalence and branching bisimulation even more attractive.

Originele taal-2Engels
Aantal pagina's34
TijdschriftACM Transactions on Computational Logic
Nummer van het tijdschrift2
StatusGepubliceerd - 1 jun. 2017


Duik in de onderzoeksthema's van 'An O(mlog n) algorithm for computing stuttering equivalence and branching bisimulation'. Samen vormen ze een unieke vingerafdruk.

Citeer dit