IndexedPartition::with_subset(graph.num_of_vertices(), graph.iter_vertices().map(|v| v.index()));
/// algorithm, based on the iterative Tarjan's SCC algorithm from the mCRL2 toolset (Wouter Schols).
let mut partition = IndexedPartition::with_subset(n, graph.iter_vertices().map(|v| v.index()));
// If w is not on stack, then (v, w) is an edge pointing to an SCC already found and must be ignored