k-Bisimulation: A Bisimulation for Measuring the Dissimilarity Between Processes
- Cite this paper as:
- De Ruvo G., Lettieri G., Martino D., Santone A., Vaglini G. (2016) k-Bisimulation: A Bisimulation for Measuring the Dissimilarity Between Processes. In: Braga C., Ölveczky P. (eds) Formal Aspects of Component Software. Lecture Notes in Computer Science, vol 9539. Springer, Cham
We propose to use bisimulation to quantify dissimilarity between processes: in this case we speak of k-bisimulation. Two processes p and q, whose semantics is given through transition systems, are k-bisimilar if they differ from at most k moves, where k is a natural number. Roughly speaking, the k-bisimulation captures the extension of the dissimilarity between p and q when they are neither strong nor weak equivalent. The importance of the formal concept of k-bisimulation can be seen in several application fields, such as clone detection, process mining, business-IT alignment. We propose several heuristics in order to efficiently check such a bisimulation. The approach can be applied to different specification languages (CCS, LOTOS, CSP) provided that the language semantics is based on the notion of transition system. We have implemented a prototype tool and we have conducted experiments on well-known systems for a proof of concept of our methodology.