Algorithm to find Dominance Frontiers
Predecessors(B) is just the set of direct predecessors of B.  The "fathers", not the more distant ancestors.

Dominance frontier nodes must be join points in the graph, and a node can only be a join point if it has more than one predecessor.