util.transitive_closure()