Definition cardinal (x: T.t V) : nat := List.length (T.elements x).

(* Specifications: *)
Theorem cardinal_remove: forall x m y, T.get x m = Some y -> (cardinal (T.remove x m) < cardinal m)%nat.
Theorem cardinal_set: forall x m y, T.get x m = None -> (cardinal m < cardinal (T.set x y m))%nat.
Theorem cardinal_remove: forall x m y, T.get x m = Some y -> (cardinal (T.remove x m) < cardinal m)%nat.
Theorem cardinal_set: forall x m y, T.get x m = None -> (cardinal m < cardinal (T.set x y m))%nat.