Search code examples
pythongraphlibraries

Libraries for finding the Refined Process Structure Tree or Tri-connected components of a graph


I'm trying to replicate a process mining algorithm in Python. One line of the algorithm given requires the generation of a Refined Process Structure Tree (RPST)[1]. From what I can see this basically involves finding the Tri-connected components of the directed multi-graph I currently have. I have found detailed instructions in the reference by Gutwenger et al. [2]. Before I spend time trying to implement these algorithms, does anyone know if there are any Python libraries which have implemented these algorithms already? I have searched through google and found nothing.

Refs: [1] Polyvyanyy, A., Vanhatalo, J., & Völzer, H. (2010, September). Simplified computation and generalization of the refined process structure tree. In International Workshop on Web Services and Formal Methods (pp. 25-41). Springer, Berlin, Heidelberg.

[2] Gutwenger, C., & Mutzel, P. (2000, September). A linear time implementation of SPQR-trees. In International Symposium on Graph Drawing (pp. 77-90). Springer, Berlin, Heidelberg.


Solution

  • Sagemath has the second implemented https://doc.sagemath.org/html/en/reference/graphs/sage/graphs/connectivity.html