Condensation graph (source code)

= Condensation graph

Contract each <strongly connected component> of a <directed graph> to one <vertex>, retaining <edges> between different components. A <directed cycle> between contracted <vertices> would make those components mutually reachable, contradicting their distinctness; thus the <condensation graph> is a <Directed acyclic graph>. Parallel <edges> can be retained by <algorithms> that count them consistently.