let splitting_cardinal_less_than ~split_non_enumerable m n =
    match m with
    | Top _ -> raise Not_less_than
    | Map m ->
        M.fold
          (fun _base v card ->
            card +
              (V.splitting_cardinal_less_than ~split_non_enumerable
              v  (n-card) ))
          m
          0