Every Path Goes Through

Which description of the dominator tree of a flow graph rooted at ss is correct?

A

It links each vertex to its immediate dominator, the closest vertex through which every ss-to-vv path passes. A single DFS with low-link values builds it in O(n+m)O(n+m), and the subtree of vv is exactly the set of vertices that become unreachable once vv is removed.

B

It links each vertex to its immediate dominator, the closest vertex through which every ss-to-vv path passes. Lengauer-Tarjan builds it in O(m α(n,m))O(m,\alpha(n,m)), and the subtree of vv is exactly the set of vertices that become unreachable once vv is removed.

C

It links each vertex to its parent in a BFS tree from ss, the closest vertex from which vv was discovered. Lengauer-Tarjan builds it in O(m α(n,m))O(m,\alpha(n,m)), and the subtree of vv is exactly the set of vertices that become unreachable once vv is removed.

D

It is the block-cut tree of the underlying undirected graph, linking each vertex to its nearest articulation point. Lengauer-Tarjan builds it in O(m α(n,m))O(m,\alpha(n,m)), and the subtree of vv is exactly the set of vertices that become unreachable once vv is removed.