fact: Definition fun_restr {U V : Type} (f : U -> V) {A : Ensemble U} {B : Ensemble V} (Hf : fun_codomain A B f) : { x : U | In A x } -> { y : V | In B y } := fun p : { x : U | In A x } => exist (fun y : V => In B y) (f (proj1_sig p)) (Hf (proj1_sig p) (proj2_sig p)).
imports: Coq(ClassicalDescription Ensembles Image ProofIrrelevance) ZornsLemma(EnsemblesImplicit FunctionProperties ImageImplicit) hydras(MoreEpsilonIota)