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