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)