(pp. 1–8)
Factorizaci´
on de rango completo y aplicaciones
R. Cant´
o
1, B. Ricarte
1, A.M. Urbano
11 Institut de Matem`atica Multidisciplinar, Universidad Polit´ecnica de Valencia, E-46022 Valencia. E-mails: rcanto@mat.upv.es, bearibe@mat.upv.es, amurbano@mat.upv.es.
Palabras clave: Factorizaci´on de rango completo, factorizaci´on de Cholesky, factorizaci´on thin QR, forma de Jordan.
Resumen
En este trabajo se estudian algunas aplicaciones de la factorizaci´on de rango com-pleto tales como la factorizaci´on de Cholesky de una matriz sim´etrica no invertible, la factorizaci´on thin QR de matrices rectangulares y el c´alculo de valores y vectores propios de una matriz singular.
1.
Introducci´
on
Dada una matriz A ∈ Rn×m con rank(A) = r, una factorizaci´on de la forma A = F G,
donde F ∈ Rn×r, G ∈ Rr×m y rank(F ) = rank(G) = r, se conoce como descomposici´on
de rango completo de la matriz A. Notar que, si A = F G es una factorizaci´on de rango completo, entonces cualquier otra factorizaci´on de este tipo puede obtenerse de la forma A = (F M−1)(M G) donde M ∈ Rr×r es una matriz invertible. Si exigimos que la matriz
G est´e en forma escalonada reducida superior unitaria entonces la factorizaci´on obtenida es ´unica.
Utilizando la descomposici´on de rango completo de una matriz, extendemos algunos re-sultados conocidos para matrices invertibles o con rango completo por columnas a matrices rectangulares que no tienen rango completo. Concretamente, obtenemos la factorizaci´on de Cholesky de rango completo de matrices singulares ATA, cuya aplicaci´on a matrices
totalmente positivas (TP) o estrictamente totalmente positivas (STP) permite afirmar que el factor triangular inferior de Cholesky L es TP o ∆STP.
Por otra parte, es conocido que la factorizaci´on QR es, entre otras cosas, un camino alternativo para resolver sistemas de ecuaciones lineales, ya que por ser Q ortogonal re-solver el sistema Ax = b es equivalente a rere-solver el sistema Rx = QTb, el cual es mucho
thin QR factorization y prueban que es ´unica. Esta nueva factorizaci´on permite reducir el tama˜no de las matrices Q y R, y, como consecuencia, reducir el tama˜no del sistema a resolver. Nosotros vamos a extender dicho concepto a matrices rectangulares pero sin rango m´aximo por columnas. La aplicaci´on a matrices TP y STP permite asegurar que la matriz R de esta factorizaci´on es TP o STP.
Dada una matriz cuadrada singular podemos, a partir del Teorema de Flanders [3], obtener sus valores propios, vectores propios y forma de Jordan, reduciendo el orden de la matriz mediante factorizaciones de rango completo.
2.
Factorizaci´
on de Cholesky
Toda matriz sim´etrica, definida positiva A ∈ Rn×n admite una ´unica factorizaci´on
de Cholesky A = LLT, donde L ∈ Rn×n es triangular inferior con diagonal principal positiva. Si A es semidefinida positiva existe una matriz de permutaci´on P tal que P A admite factorizaci´on de Cholesky y, en este caso, es f´acil comprobar que en general dicha descomposici´on no es ´unica. Cuando la matriz semidefinida positiva A tiene rango igual a r y la forma escalonada superior unitaria de sus r primeras filas linealmente independientes puede obtenerse sin intercambio de filas aplicando [1, Theorem 1] se deduce que A tiene una ´
unica factorizaci´on de Cholesky, que puede obtenerse aplicando el m´etodo de quasi-Gauss [1].
Cuando la matriz A es rectangular se obtiene la factorizaci´on de Cholesky de ATA.
Si A tiene rango completo por columnas, entonces ATA es sim´etrica definida positiva, en otro caso es sim´etrica semidefinida positiva y, como indica el siguiente resultado, tiene una ´
unica factorizaci´on de Cholesky de rango completo.
Teorema 1 Sea A ∈ Rn×m una matriz tal que rank(A) = r. Entonces, ATA admite una ´unica factorizaci´on de Cholesky de rango completo ATA = LLT, donde L ∈ Rm×r es una
matriz en forma escalonada inferior, con entradas principales positivas y rango completo por columnas.
Nota 1 El Teorema 1 nos permite afirmar que la factorizaci´on de Cholesky de rango completo de ATA puede obtenerse aplicando el algoritmo de quasi-Gauss sin intercambio
de filas. En general, no sucede lo mismo cuando se intenta aplicar el algoritmo de quasi-Neville.
Nota 2 Cuando la matriz A ∈ Rn×m con rango r es TP, entonces ATA tambi´en es TP y en este caso se verifica
1. El factor triangular inferior LA de la factorizaci´on de Cholesky de rango completo
de ATA es TP [2].
2. Como el ´ındice de la matriz ATA es igual a 1, la inversa de grupo y la inversa de
Drazin coinciden. En este caso dicha inversa viene dada por la matriz sim´etrica con rango r siguiente: (ATA)D = LA ¡ LTA(ATA)LA ¢−1 LTA= LA ¡ LTALA ¢−2 LTA
donde LA es el factor triangular inferior de Cholesky. Como LA es TP entonces,
¡ LT
ALA
¢−2
3.
Factorizaci´
on Thin QR de matrices rectangulares
Dada una matriz A ∈ Rn×m con rango completo por columnas Golub y Van Loan [4]
definen la factorizaci´on thin QR de A como la ´unica factorizaci´on de la forma A = Q1R1
donde Q1 ∈ Rn×m tiene columnas ortonormales y R1 ∈ Rm×m es triangular superior con
las entradas de la diagonal principal positivas. En [4, Theorem 5.2.2.] prueban que esta factorizaci´on es ´unica y, adem´as, R1 = LT donde L es el factor triangular inferior de la
factorizaci´on de Cholesky de ATA. Usando la factorizaci´on de rango completo el siguiente teorema extiende la factorizaci´on thin QR a matrices rectangulares sin rango completo. Teorema 2 Sea A ∈ Rn×m una matriz tal que rank(A) = r. Entonces, existe una matriz Q1 ∈ Rn×r con columnas ortonormales y una matriz escalonada superior R1∈ Rr×m con
la entrada principal de cada fila positiva, tal que A = Q1R1. Adem´as, RT1 es el factor
escalonado inferior de Cholesky de ATA.
Demostraci´on: Aplicando el algoritmo de quasi-Gauss [1] a la matriz A obtenemos la factorizaci´on de rango completo A = F U , donde F ∈ Rn×r tiene rango completo por columnas y U ∈ Rr×m es una matriz escalonada reducida superior unitaria con rango
completo por filas.
Como F ∈ Rn×r tiene rango completo por columnas admite una ´unica factorizaci´on thin QR, F = Q1FR1F donde Q1F ∈ Rn×r tiene columnas ortonormales y R1F ∈ Rr×r es
triangular superior con entradas diagonales positivas. Por tanto, A = F U = Q1FR1FU = Q1F(R1FU ) = Q1R1
donde Q1= Q1F ∈ Rn×r y R1 = R1FU ∈ Rr×m est´a en forma escalonada superior con la
entrada principal en cada fila positiva. Adem´as, como ATA = (Q
1R1)T(Q1R1) = RT1R1, tenemos que R1 = LT es el factor
escalonado superior de Cholesky de ATA. ¤
Nota 3 Observar que la matriz de rango completo R1 es ´unica y como consecuencia se deduce que Q1 es tambi´en ´unica. Esta factorizaci´on se conoce como factorizaci´on thin QR
de una matriz A ∈ Rn×m con rank(A) = r.
Nota 4 Si A es TP, teniendo en cuenta la Nota 2 podemos asegurar que R1 es tambi´en
TP. Cuando A es totalmente no positiva se obtiene un resultado an´alogo por ser ATA TP.
4.
Forma de Jordan
Sea A ∈ Rn×n una matriz con rank(A) = r < n, y sea A = F U una factorizaci´on
de rango completo tal que F ∈ Rn×r, U ∈ Rr×n y rank(F ) = rank(U ) = r. A partir del
Teorema de Flanders [3] tenemos el siguiente resultado,
Proposici´on 1 Sea A ∈ Rn×n una matriz tal que rank(A) = r < n y sea A = F U
una factorizaci´on de rango completo tal que F ∈ Rn×r, U ∈ Rr×n, ambas con rango r.
Consideremos la matriz A2 = U F ∈ Rr×r. Entonces, A y A
2 tienen los mismos divisores
elementales asociados a los valores propios no nulos. Adem´as, si s1 ≥ s2 ≥ · · · ≥ sp
(s0
1 ≥ s02 ≥ · · · ≥ s0p) son los tama˜nos de los bloques de Jordan asociados al valor propio
cero en A (A2), entonces si− s0
Nota 5 Como rank(A2) = rank(A
2), si A2 es singular podemos volver a aplicar la
Pro-posici´on 1 y obtener la matriz A3 tal que rank(A3) = rank(A22) = rank(A3). Por tanto,
dada una matriz A ∈ Rn×n que verifica
rank(A) = r > rank(A2) = r2> · · · > rank(Aw) = rw = rank(Aj), ∀j > w
aplicando la Proposition 1 w-veces obtenemos una sucesi´on de matrices A2, A3, . . . , Aw,
Aw+1tales que rank(Ai) = rank(Ai) = ri, i = 2, 3, . . . , w + 1 con Aw+1invertible. A partir
de la estructura de Jordan de esta ´ultima matriz obtenemos la estructura de Jordan de la matriz A asociada a los valores propios no nulos. Adem´as, teniendo en cuenta los rangos de las matrices A2, A3, . . . , Aw, Aw+1 obtenemos la estructura de Jordan de A asociada
al valor propio nulo.
Ejemplo 1 Consideremos la matriz A ∈ R8×8con rank(A) = 6
A = 2 1 −2 1 −2 1 2 1 1 5 −3 −1 1 1 1 −5 −2 1 2 1 2 1 −2 1 3 −1 −1 5 −1 −5 −1 1 −2 1 2 1 2 1 −2 1 1 1 1 −5 1 5 −3 −1 2 1 −2 1 −2 1 2 1 −1 −5 −1 1 3 −1 −1 5 .
Esta matriz admite la siguiente factorizaci´on de rango completo
A = 2 1 −2 1 −2 1 1 5 −3 −1 1 1 −2 1 2 1 2 1 3 −1 −1 5 −1 −5 −2 1 2 1 2 1 1 1 1 −5 1 5 2 1 −2 1 −2 1 −1 −5 −1 1 3 −1 1 0 0 0 0 0 −1 0 0 1 0 0 0 0 0 −1 0 0 1 0 0 0 −1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 −1 0 0 0 0 0 0 1 0 1 = F U.
La matriz A2 = U F tiene rank(A2) = rank(A2) = 4 y puede ser factorizada de la forma
A2= U F = 0 0 0 0 2 10 −2 −2 −4 0 0 4 2 −6 6 2 −4 0 0 4 0 −4 −4 4 1 0 −1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 −1 0 0 0 0 1 0 = FA2UA2.
La matriz A3 = UA2FA2 con rank(A3) = rank(A22) = rank(A3) = 3 puede factorizarse de
Finalmente A4 = UA3FA3 = 82 10 −20 0 2 −2 10 .
La matriz A4 es invertible siendo sus valores propios λ1 = 12 y λ2 = 8 con
multi-plicidades algebraicas m(λ1) = 1 y m(λ2) = 2. Aplicando la Proposici´on 1 tenemos que
los valores propios de A son λ1 = 12, λ2 = 8 y λ3 = 0, con multiplicidades algebraicas m(λ1) = 1, m(λ2) = 2 y m(λ3) = 5.
Como rank(A) = 6, rank(A2) = rank(A
2) = 4, rank(A3) = rank(A3) = 3 y rank(A4) =
rank(A4) = 3, tenemos que dim(ker(A)) = 2, dim(ker(A2)) = 4 y dim(ker(A3)) = 5. Por
tanto, los tama˜nos de los bloques de Jordan asociados al valor propio λ3 = 0 son 3 y 2,
siendo su estructura de Jordan JA= diag (J3(0), J2(0), J1(12), J2(8)).
Conocidos los valores propios de la matriz A vamos a ver ahora c´omo obtener las cade-nas de Jordan asociadas a dichos valores propios. Supongamos que s1≥ s2 ≥ . . . ≥ sp ≥ 1 son los tama˜nos de los bloques de Jordan asociados al valor propio cero. Consideremos la factorizaci´on de rango completo A = F U y la matriz A2 = U F ∈ Rr×r. Distinguiremos
dos casos:
(a) rank(A2) = rank(A) = r
En este caso la matriz A2 es invertible y A no tiene vectores propios generalizados
asociados con el valor propio λ = 0. Los vectores propios de A asociados a dicho valor propio son las soluciones no nulas del sistema U x = 0. Con las soluciones obtenidas podemos formar las columnas de la matriz V , de manera que AV = O ∈ Rn×(n−r).
Para los valores propios no nulos se verifica el siguiente resultado,
Proposici´on 2 Si {vr, vr−1, . . . , v2, v1} es una cadena de Jordan de la matriz A2 asociada
al valor propio no nulo λ, entonces {F vr, F vr−1, . . . , F v2, F v1} es una cadena de Jordan
de A asociada al mismo valor propio.
Demostraci´on: Por la Proposici´on 1 la estructura de Jordan de A2 y A asociada a los
valores propios no nulos es la misma. Como {vr, vr−1, . . . , v2, v1} es una cadena de Jordan
de A2 asociada al valor propio λ tenemos
A2vj = (U F )vj = vj−1+ λvj, j = r, r − 1, . . . , 2,
A2v1 = (U F )v1= λv1.
Multiplicando por F
F A2vj = F (U F )vj = (F U )(F vj) = F vj−1+ λ(F vj), j = r, r − 1, . . . , 2, F A2v1 = F (U F )v1 = (F U )(F v1) = λ(F v1).
Puesto que F tiene rango completo por columnas los vectores F vj, j = 1, 2, . . . , r, son
li-nealmente independientes. Por tanto, {F vr, F vr−1, . . . , F v2, F v1} es una cadena de Jordan
de A asociada al valor propio λ. ¤
Si las columnas de Q ∈ Rr×r son los vectores y vectores propios generalizados de A2
entonces las columnas de la matriz F Q ∈ Rn×r son los correspondientes vectores y vectores
propios generalizados de A asociados a los valores propios no nulos, esto es A2 = QJtQ−1 → U F = QJtQ−1 → U F Q = QJt
Con V y F Q construimos la matriz S = [V F Q] ∈ Rn×n. Dicha matriz verifica que
S−1AS = J A.
(b) rank(A2) < rank(A) = r
En este caso hay vectores propios y vectores propios generalizados asociados al valor propio λ = 0. Supongamos que A2 tiene q bloques de Jordan de tama˜no s1− 1 ≥ s2− 1 ≥
· · · ≥ sq− 1 ≥ 1 asociados a dicho valor propio. Por la Proposici´on 1 A tiene al menos q
bloques de Jordan de tama˜no s1 ≥ s2 ≥ · · · ≥ sq ≥ 2 asociados al mismo valor propio. El
siguiente resultado proporciona la relaci´on que existe entre dichas cadenas de Jordan. Proposici´on 3 Sea visi−1, visi−2, . . . , vi2, vi1 una cadena de Jordan de A2de longitud si−1 asociada al valor propio nulo. Entonces, existe un vector no nulo visi tal que {visi, F visi−1,
F visi−2, . . . , F vi2, F vi1} es una cadena de Jordan de A de longitud si asociada al valor
propio nulo.
Demostraci´on: Como visi−1, visi−2, . . . , vi2, vi1 es una cadena de Jordan de A2 asociada
al valor propio nulo tenemos que ½ A2vij = vij−1, j = si− 1, si− 2, . . . , 3, 2, A2vi1 = 0. Por tanto A2vij = U F vij = vij−1 =⇒ (F U )(F vij) = F vij−1, j = si− 1, si− 2, . . . , 2, A2vi1 = U F vi1 = 0 =⇒ (F U )(F vi1) = 0.
Como F tiene rango completo por columnas y vij 6= 0 entonces, F vij 6= 0 para j =
si− 1, si− 2, . . . , 2, 1. Como consecuencia {F visi−1, F visi−2, . . . , F vi2, F vi1} es una cadena
de Jordan de A, de longitud si−1 asociada al valor propio cero. Para extender esta cadena
a una cadena de Jordan de longitud si necesitamos un vector x 6= 0, x ∈ ker(Asi) pero
x 6∈ ker(Asi−1), esto es x ∈ ker(Asi) ∼ ker(Asi−1) y tal que Ax = F v
isi−1.
De nuevo, como F tiene rango completo por columnas tenemos que
Ax = F U x = F visi−1 =⇒ F (U x − visi−1) = 0 =⇒ U x = visi−1.
Dicho sistema tiene soluci´on ya que U tiene rango completo por filas. Supongamos que x = visi una soluci´on, esto es U visi = visi−1. Obviamente visi ∈ ker(Asi) ∼ ker(Asi−1), ya
que en otro caso Asi−1v isi = 0 =⇒ (F U )(F U ) · · · (F U )(F U )visi = 0 =⇒ F Asi−2 2 U visi = 0 =⇒ F As2i−2visi−1 = 0 =⇒ Asi−2 2 visi−1 = 0,
lo cual es absurdo puesto que visi−1 ∈ ker(As2i−1) ∼ ker(As2i−2). Por tanto, el conjunto de
vectores {visi, F visi−1, F visi−2, . . . , F vi2, F vi1} es una cadena de Jordan de A de longitud
El siguiente diagrama describe el resultado del teorema anterior:
ker(Asi) ∼ ker(Asi−1) → v
isi
↓ ker(Asi−1
2 ) ∼ ker(As2i−2) → visi−1 ker(Asi−1) ∼ ker(Asi−2) → F visi−1
↓ ↓
ker(Asi−2
2 ) ∼ ker(As2i−3) → visi−2 ker(Asi−2) ∼ ker(Asi−3) → F visi−2
↓ ↓
..
. =⇒ ...
↓ ↓
ker(A2
2) ∼ ker(A2) → vi2 ker(A2) ∼ ker(A) → F vi2
↓ ↓
ker(A2) → vi1 ker(A) → F vi1
Por tanto, todas las cadenas de Jordan de A2 asociadas al valor propio cero pueden
ser extendidas a cadenas de Jordan de A asociadas al mismo valor propio.
Si p = q, esto es, si el n´umero de cadenas de Jordan asociadas al valor propio cero de las matrices A2 y A es el mismo, aplicando la Proposici´on 3 a cada cadena de A2 obtenemos
la correspondiente cadena de Jordan de A. Si p > q, adem´as de esas cadenas de Jordan, necesitamos p − q vectores propios m´as, los cuales son las soluciones no nulas del siste-ma U x = 0 linealmente independientes con los q vectores propios {F v11, F v21, . . . , F vq1}
obtenidos.
Para los valores propios no nulos procedemos como en el caso anterior.
Ejemplo 2 Consideremos la matriz A ∈ R8×8 del ejemplo 1. Sabemos que A tiene dos
bloques de Jordan de tama˜no 3 y 2 asociados al valor propio λ3 = 0, un bloque de Jordan
de tama˜no 1 asociado a λ1 = 12 y un bloque de Jordan de tama˜no 2 asociado a λ2= 8.
Para obtener los vectores propios asociados a los valores propios no nulos empezamos con la matriz A4.
1. Para λ1= 12 tenemos
EA4(12) = Env{t = (0, 1, −1)} → EA3(12) = Env{FA3t} → EA2(12) = Env{FA2FA3t} → EA(12) = Env{F FA2FA3t}
Por tanto, simplificando tenemos que EA(12) = Env{(0, 1, 0, −1, 0, 1, 0, −1)}.
2. Para λ2= 8 la matriz A4 tiene la siguiente cadena de Jordan de longitud 2,
ker((8I − A4)2) ∼ ker(8I − A4) → r2= (1, 1, 1)
↓
ker(8I − A4) → r1= (0, −2, −2)
La correspondiente cadena de Jordan de A asociada con dicho valor propio es ker((8I − A)2) ∼ ker(8I − A) → F FA2FA3r2
↓ ker(8I − A) → F FA2FA3r1
simplificando tenemos (2, 7, −2, 7, −2, −7, 2, −7) ∈ ker((8I − A)2) ∼ ker(8I − A) y
Para obtener las cadenas de Jordan asociadas al valor propio nulo hemos de tener en cuenta que asociadas a dicho valor propio A3 tiene s´olo una cadena de Jordan de longitud
1, A2 tiene dos cadenas de Jordan de longitudes 2 y 1, y A tiene dos cadenas de Jordan
de longitudes 3 y 2. Por la Proposici´on 3 tenemos
ker(A22) ∼ ker(A2) → r2 ↓ ker(A3) → z1 ker(A2) → r1= FA2z1 s1 y para A ker(A3) ∼ ker(A2) → v 3 ↓ ker(A2) ∼ ker(A) → v 2= F r2 u2 ↓ ↓ ker(A) → v1= F r1 u1 = F s1
Primero, resolviendo el sistema A3x = 0 obtenemos que z1 = (1, 0, 0, 1) y aplicando la Proposici´on 3
r1 = FA2z1 = (0, 0, 0, 4, 0, 4) y v1 = F r1 = (8, 0, 8, 0, 8, 0, 8, 0)
De nuevo por la Proposici´on 3 sabemos que el vector r2 es una soluci´on del sistema
UA2x = z1. Por tanto,
r2 = (2, 0, 1, 1, 1, 1) → v2 = F r2 = (2, 0, 2, 4, 2, 4, 2, 0)
El vector propio s1 es una soluci´on no nula del sistema UA2x = 0, de manera que los
vectores {s1, r1} sean linealmente independientes. Tomando
s1= (1, 0, 1, 0, 0, 0) → u1 = F s1 = (0, −2, 0, 2, 0, 2, 0, −2)
Finalmente, los vectores v3 y u2 son soluciones de los sistemas
UAx = r2 → v3 = x = (3, 1, 2, 0, 2, 0, 1, 1)
UAx = s1 → u2 = x = (2, 1, 2, −1, 1, −1, 1, 1)
Agradecimientos
Trabajo financiado por el proyecto DGI MTM2007-64477 y por el proyecto de incen-tivaci´on de la investigaci´on de la Universidad Polit´ecnica de Valencia.
Referencias
[1] R. Cant´o, B. Ricarte and A. M. Urbano, Full rank factorization and Flanders theorem, Sometido. [2] R. Cant´o, B. Ricarte and A. M. Urbano, Characterization of rectangular TP and STP matrices,
Sometido.
[3] H. Flanders, Elementary divisors of AB and BA, Proceedings of the American Mathematical Society, 2, 6 (1951), 871–874.