Note

This is the documentation for the current state of the development branch of rustworkx. The documentation or APIs here can change prior to being released.

rustworkx.graph_transitivity#

graph_transitivity(graph, /)#

Compute the transitivity of an undirected graph.

The transitivity of a graph is defined as:

\[`c=3 \times \frac{\text{number of triangles}}{\text{number of connected triples}}`\]

A “connected triple” means a single vertex with edges running to an unordered pair of others.

This function is multithreaded and will run launch a thread pool with threads equal to the number of CPUs by default. You can tune the number of threads with the RAYON_NUM_THREADS environment variable. For example, setting RAYON_NUM_THREADS=4 would limit the thread pool to 4 threads.

Note

The function implicitly assumes that there are no parallel edges or self loops. It may produce incorrect/unexpected results if the input graph has self loops or parallel edges.

Parameters:

graph (PyGraph) – Graph to be used.

Returns:

Transitivity.

Return type:

float