¿Qué es una función? De manera informal, es un proceso, o una asignación, a partir de un conjunto de entrada a un conjunto de salida. No es sólo el proceso o tarea que forma una función, pero la especificación de la entrada y la salida es parte de lo que es. Formalmente, una función es una triple $(A,B,f)$ donde $A,B$ son conjuntos y $f\subseteq A\times B$ es un subconjunto del producto cartesiano, es decir, una relación de $A$ $to$ $B$. En cambio, si uno quería ver la función de $(A,B,f)$ equivalente a $(A,Im(f),f)$ entonces uno necesita agregar una condición a otra muy limpio definición. Así, a la fuerza el codominio a ser el rango realidad de las cargas de la definición, en lugar de simplificar las cosas. Esa es una razón para no forzar tales cosas.
Otra razón es que así uno no tiene problemas para hablar acerca de la composición cuando es obvio que uno debe ser capaz de hablar acerca de la composición (en realidad, esta es una categoría teórica de razonamiento). Supongamos que $f:A\to B$$g:B\to C$. Si quiero saber si la composición de la $g\circ f$ existe no me importa lo que el rango real de las funciones. Sólo una mirada, como el dominio de $g$ e la (ta ta ta taaaaaa) codominio de $f$. En otras palabras, si el tipo de entrada de $g$ coincide con el tipo de salida de $f$, entonces la composición se define.
Si hemos insistido en que codominio=rango, entonces la condición anterior tendrá que ser reemplazado por "el rango de $f$ está contenida en el dominio de $g$". Y ahora voy a entrar en un poco de jerga técnica de la categoría de teoría. La resultante de la categoría de forzar el codominio=rango será la categoría de la $Set_{Surj}$ de los conjuntos y surjections. Es perfectamente legítimo categoría, pero tiene mucho menos agradable de propiedades cuando se compara a $Set$, la categoría de conjuntos y todas las funciones. Por ejemplo, el conjunto vacío se caracteriza en $Set$ como un objeto inicial (es decir, no es precisamente una función de a cualquier otro conjunto dado) y es de doble únicos, que son de la terminal. Este no es el caso en $Set_{Surj}$. La inconexión de la unión de dos (o más) conjuntos es un ejemplo de una categoría de producto en $Set$, y es el doble del producto cartesiano. Distintos sindicatos no son co-productos en $Set_{Surj}$. Muchas otras de las buenas propiedades de $Set$ se perderán en caso de pasar a $Set_{Surj}$.
En particular, muchos muy conveniente inyecciones ya no será permitida si requerimos que todas las funciones de surjective. Por ejemplo, es muy conveniente para ser capaz de hablar de las funciones de $f_y:\mathbb R \to \mathbb R^2$, dado por $f(x)=(x,y)$, o varias curvas en el plano de ser parametrizadas por alguna función $\gamma:[a,b]\to \mathbb R^2$.