(* "cardinal" of a (multi-)set: *)

Fixpoint card(s:set):nat:=
  match s with
     Vs => 0%nat
   | Is s0 x => 
       if exds_dec s0 x then card s0
       else (1 + card s0)%nat
  end.

Lemma exds_card_Ds_inf:forall (s:set)(z:dart), exds s z -> (card (Ds s z) < card s)%nat.