Definition FiniteT_nat_cardinal (X:Type) (H:FiniteT X) : nat :=
proj1_sig (constructive_definite_description _
(FiniteT_has_nat_cardinal X H)).

Lemma injection_preserves_cardinal: forall (X Y:Type)
(f:X->Y) (n:nat) (S:Ensemble X), cardinal _ S n ->
injective f -> cardinal _ (Im S f) n.