Definition cntabl(U:Type)(C:Ensemble(Ensemble U)):=
exists f:nat->Ensemble U,forall c,C c->exists i:nat,f i=c.

(****************************************************************************** from http://cl.cse.wustl.edu/classes/cse545/lec/sni.v accessed 13 July 2007 ******************************************************************************)
Lemma aaron_stump_cse545(Q:nat->Prop):
(forall n:nat,(forall n':nat,n'<n->Q n')->Q n)->
forall n:nat,forall n':nat,n'<=n->Q n'.