Because this function requires collecting edges we should probably put a warning about the performance cost of calling this function and instead prefer functions that satisfy the subgraph which operates on the factorized edge predicate.  

Incidentally, I think @amatsukawa was also looking at variants of subgraph.