let split k m = match m with | Top (t,_) -> if Top_Param.is_included (Top_Param.inject_singleton k) t then V.top, m else V.bottom, m | Map m -> find_or_bottom k m, Map (M.remove k m)