# Rango (álgebra lineal)

En álgebra lineal, se define el rango de una aplicación lineal entre dos espacios vectoriales como la dimensión del conjunto imagen.
Frecuentemente la noción se aplica a aplicaciones lineales entre espacios de dimensión finita, lo cual da lugar a la noción de rango de una matriz.

## Espacios de dimensión finita
### Rango de una matriz

El rango de una matriz es el número máximo de columnas (filas respectivamente) que son linealmente independientes. El rango fila y el rango columna siempre son iguales: este número es llamado simplemente rango de $A$ (prueba más abajo). Comúnmente se expresa como $\operatorname {rg} (A)$.
El número de columnas independientes de una matriz $A$ de $m$ filas y $n$ columnas es igual a la dimensión del espacio columna de $A$. También la dimensión del espacio fila determina el rango. El rango de $A$ será, por tanto, un número no negativo, menor o igual que el mínimo entre $m$ y $n$:
   $A\in {\mathcal {M}}_{m\times n}\Rightarrow 0\leq {\text{rg}}(A)\leq \min\{m,n\}$

### Rango de una transformación lineal

El rango es una propiedad no sólo de las matrices sino extensible a las aplicaciones lineales, de las cuales las matrices son una representación una vez fijada una base.
Dada aplicación o transformación lineal:
   $f:\mathbb {K} ^{n}\longrightarrow \mathbb {K} ^{m}$
se define el rango simplemente como la dimensión del conjunto imagen de la aplicación:
   ${\mbox{rg}}\ (f)={\mbox{dim}}({\mbox{Im}}(f))\leq \min\{m,n\}$
Una propiedad muy importante del rango así definido y el rango de matrices definido anteriormente, es que ambos coinciden. Es decir, dada una base arbitraria la aplicación lineal se puede representar mediante esa base en forma de matriz resultando el rango de esa matriz idéntico al rango de la aplicación lineal que representa.
Para establecer más claramente la relación entre el rango de una aplicación lineal y una matriz que represente dicha aplicación lineal, deben fijarse dos bases en cada uno de los dos espacios ${\mathcal {B}}=\{\mathbf {u} _{1},\dots ,\mathbf {u} _{n}\}$ y ${\mathcal {B'}}=\{\mathbf {u'} _{1},\dots ,\mathbf {u'} _{m}\}$, podemos expresar la transformación lineal por una matriz $M(f,{\mathcal {B'}}\leftarrow {\mathcal {B}})=(a_{ij})$ que verifica:
$\mathbf {y} =f(\mathbf {x} )\Longrightarrow {\begin{pmatrix}y_{1}\\\vdots \\y_{m}\end{pmatrix}}={\begin{pmatrix}a_{11}&\dots &a_{1n}\\\vdots &\ddots &\vdots \\a_{m1}&\dots &a_{mn}\end{pmatrix}}{\begin{pmatrix}x_{1}\\\vdots \\x_{n}\end{pmatrix}},$
$\quad \quad \quad {\text{con}}{\begin{pmatrix}y_{1}\\\vdots \\y_{n}\end{pmatrix}}{\text{ y }}{\begin{pmatrix}x_{1}\\\vdots \\x_{n}\end{pmatrix}}{\text{las componentes de }}x{\text{ e }}y{\text{ en las bases }}{\mathcal {B}}{\text{ y }}{\mathcal {B'}}{\text{, respectivamente.}}$
Siendo:
    $f(\mathbf {u} _{i})=a_{i1}\mathbf {u'} _{1}+\dots +a_{im}\mathbf {u'} _{m}\quad \forall i\in \{1,...,n\}$
Como se dijo anteriormente, el rango de $M(f,{\mathcal {B'}}\leftarrow {\mathcal {B}})=(a_{ij})$ coincide con la dimensión de la imagen de $f$.
* Demostración
* Utilizamos la notación $[S]$ para referirnos al espacio generado por el conjunto $S$.
* Por definición, $\operatorname {Im} f=f(E)=f([\mathbf {u} _{1},...,\mathbf {u} _{n}])$. Como $f$ es una aplicación lineal, tenemos que $f([\mathbf {u} _{1},...,\mathbf {u} _{n}])=[f(\mathbf {u} _{1}),...,f(\mathbf {u} _{n})]=\left[{\begin{pmatrix}a_{11}\\\vdots \\a_{n1}\end{pmatrix}},{\begin{pmatrix}a_{12}\\\vdots \\a_{n2}\end{pmatrix}},...,{\begin{pmatrix}a_{1n}\\\vdots \\a_{nn}\end{pmatrix}}\right]$.
* Así, $\operatorname {Im} f=[f(\mathbf {u} _{1}),...,f(\mathbf {u} _{n})]=\left[{\begin{pmatrix}a_{11}\\\vdots \\a_{n1}\end{pmatrix}},...,{\begin{pmatrix}a_{1n}\\\vdots \\a_{nn}\end{pmatrix}}\right]\Rightarrow \operatorname {rg} f=\operatorname {dim} ~\operatorname {Im} f=\operatorname {dim} \left(\left[{\begin{pmatrix}a_{11}\\\vdots \\a_{n1}\end{pmatrix}},...,{\begin{pmatrix}a_{1n}\\\vdots \\a_{nn}\end{pmatrix}}\right]\right)=\operatorname {rg} (M(f,{\mathcal {B'}}\leftarrow {\mathcal {B}}))$
* $\square$

### Cálculo del rango

Dada una matriz su rango puede determinarse sencillamente a partir del cálculo de determinantes. Dada la matriz $\mathbf {A} \in {\mathcal {M}}_{m\times n}$
   $\mathbf {A} ={\begin{pmatrix}a_{11}&\dots &a_{1n}\\\vdots &\ddots &\vdots \\a_{m1}&\dots &a_{mn}\end{pmatrix}}$
se calcula el rango como el máximo entero $r$ tal que existe un menor no nulo de orden r tal que
   ${\begin{vmatrix}a_{i_{1}j_{1}}&\dots &a_{i_{1}j_{r}}\\\vdots &\ddots &\vdots \\a_{i_{r}j_{1}}&\dots &a_{i_{r}j_{r}}\end{vmatrix}}\neq 0,\qquad {\begin{cases}1\leq i_{1}<i_{2}<\dots <i_{r}\leq n\\1\leq j_{1}<j_{2}<\dots <j_{r}\leq m\end{cases}}$
Otra forma de calcular el rango de una matriz es mediante el método de Gauss-Jordan, y será igual al número de filas no nulas de la matriz obtenida al aplicar el método.
Dada una aplicación lineal su rango puede calcularse fácilmente considerando una base cualquiera y determinando el rango de la matriz que representa la aplicación en dicha base, ya que el número obtenido no dependerá de la elección de la base.

### Prueba de que rango columna = rango fila

La prueba es un resultado importante del teorema fundamental del álgebra lineal y es válida para cualquier cuerpo:
Sea $A$ una matriz de tamaño $m\times n$ (con $m$ filas y $n$ columnas). Sea $r$ el rango columna de $A$ y sea $c_{1},...,c_{r}$ una base para el espacio columna de $A$. Pónganse estas como columnas de una matriz $C$ de tamaño $m\times r$. Cada columna de $A$ puede ser expresada como una combinación lineal de $r$ columnas en $C$. Esto significa que hay una matriz $R$ de tamaño $r\times n$ tal que $A=CR$. $R$ es la matriz cuya columna $i$-ésima está formada a partir de los coeficientes que dan la $i$-ésima columna de $A$ como una combinación lineal de las $r$ columnas de $C$. También cada fila de $A$ viene dada por una combinación lineal de las $r$ filas de $R$. Por lo tanto, las filas de $R$ forman un sistema generador del espacio fila de $A$ y, entonces, el rango fila de $A$ no puede exceder $r$. Esto prueba que el rango fila de $A$ es menor o igual que el rango columna de $A$. Este resultado puede ser aplicado a cualquier matriz, así que aplíquese a la matriz transpuesta de $A$. Dado que el rango fila de la transpuesta de $A$ es el rango columna de $A$ y el rango columna de la transpuesta de $A$ es el rango fila de $A$, esto establece la desigualdad inversa y se obtiene la igualdad del rango fila y el rango columna de $A$.

### Aplicaciones

Una útil aplicación de calcular el rango de una matriz es la de determinar el número de soluciones al sistema de ecuaciones lineales, enunciado del Teorema de Rouché–Frobenius. El sistema tiene por lo menos una solución si el rango de la matriz de coeficientes equivale al rango de la matriz aumentada. En ese caso, ésta tiene exactamente una solución si el rango equivale al número de incógnitas; en otro caso, la solución general tiene $k$ parámetros libres, donde $k$ es la diferencia entre el número de incógnitas y el rango.
Una matriz de $n\times n$ es invertible (tiene inversa) si y sólo si su rango es máximo, es decir, igual a $n$.
En teoría de control, el rango de una matriz se puede usar para determinar si un sistema lineal es controlable u observable.

## Espacios de dimensión infinita

En análisis funcional la noción de rango se puede aplicar a aplicaciones lineales entre espacios vectoriales de dimensión infinita. En muchas aplicaciones como la mecánica cuántica, el espacio de dimensión infinita suele ser un espacio de Hilbert separable. El rango de operador definido sobre un espacio de Hilbert usualmente será también infinito, aunque el operador es acotado cuando este rango es finito el operador resulta ser un operador compacto, con propiedades análogas a las aplicaciones lineales sobre espacios de dimensión finita.