is_transitive now bases on BFSeach