'Find back edges.  An edge (src, dest) is a back edge if and
only if *dest* dominates *src*.'

def _find_back_edges(self):

    back_edges = set()
    for (src, succs) in self._succs.items():
        back = (self._doms[src] & succs)
        assert (len(back) <= 1)
        back_edges.update(((src, dest) for dest in back))
    self._back_edges = back_edges
