compute_inter_2e<bool>(*space1, *space2) now returns shared_ptr<return_type>