Classically, the __range__ of a [[function]] $f$ with [[domain]] $A$ is the [[set]] $\{f(x) \;|\; x \in A\}$ (whose existence, in [[material set theory]], is given by the [[axiom of replacement]]). As we came to realise that a function should be given with a [[codomain]] (which is automatic in [[structural set theory]]), the term 'range' generalised in two ways: * as the [[codomain]] itself, so that the earlier terminology is then preserved only for [[surjections]]; * as the [[image]] $$ \{y \colon B \;|\; \exists x\colon A,\; y = f(x)\} $$ (whose existence, in axiomatic set theory, is given by the much weaker axiom of [[bounded separation]]) of $f\colon A \to B$. The former generalisation was historically common (and is sometimes still used) in [[groupoid]] theory; the latter is what we usually mean today. Note that the axiom of replacement is still needed for a function (such as a [[family of sets]]) whose codomain is a [[proper class]], to prove that its image is small when its domain is small. [[!redirects range]] [[!redirects ranges]] [[!redirects range of a function]] [[!redirects ranges of functions]]