Saltar al contenido

¿Cómo definir el factorial de una matriz?

Te recomendamos que revises esta solución en un ambiente controlado antes de pasarlo a producción, saludos.

Solución:

Para cualquier función holomorfa $ G $, podemos definir una función matricial correspondiente $ tilde G $ a través de (una versión formal de) la fórmula integral de Cauchy: establecemos
$$ tilde G (B): = frac 1 2 pi i oint_C G (z) (z I – B) ^ – 1 , dz, $$
dónde $ C $ es una curva (arbitraria) en sentido antihorario que encierra (una vez cada uno) los valores propios de la matriz (cuadrada) $ B $. Tenga en cuenta que la condición en $ C $ significa que las restricciones en el dominio de $ G $ determinar restricciones en el dominio de $ tilde G $.

Entonces, podríamos darle sentido al factorial de una matriz si tuviéramos una función holomórfica que se restringiera a la función factorial $ n mapsto n! $ en enteros no negativos. Afortunadamente, existe una función de este tipo: la función $$ F: z mapsto Gamma (z + 1), $$ dónde $ Gamma $ denota la función Gamma, satisface $ F (n) = n! $ para enteros no negativos $ n $. (Hay un sentido en el que $ F $ es la mejor función posible que extiende la función factorial, pero observe que el objetivo de ese enlace realmente solo analiza la función Gamma real, que nuestro $ Gamma $ preferentemente se extiende.) Por lo tanto, podemos definir factorial de una matriz (cuadrada) $ B $ sustituyendo la segunda ecuación de visualización anterior en la primera:
$$ color # df0000 boxed B! : = tilde F (B) = frac 1 2 pi i oint_C Gamma (z + 1) (z I – B) ^ – 1 , dz. $$

La fórmula integral de Cauchy (escalar) muestra que esta formulación tiene la propiedad obviamente deseable de que para matrices escalares recupera el factorial habitual, o más precisamente, que $ pmatrix n! = pmatrix n! $ (para enteros no negativos $ n $).

Alternativamente, se podría definir una función matricial $ tilde G $ (y en particular definir $ B! $) evaluando formalmente la serie de potencias $ sum_ i = 0 ^ infty a_k (z – z_0) ^ k $ por $ G $ sobre algún punto $ z_0 $, es decir, declarando $ tilde G (B): = sum_ i = 0 ^ infty a_k (B – z_0 I) ^ k $, pero en general esta definición es más restrictiva que la definición de la fórmula integral de Cauchy, simplemente porque la serie de potencias no necesita converger en todas partes (donde sí converge, converge al valor dado por la fórmula integral). De hecho, no podemos usar una serie de potencias para $ F $ para evaluar $ A! $ directamente para nuestro particular $ A $: La función $ F $ tiene un poste en el segmento de línea en $ Bbb C $ con puntos finales los valores propios de $ A $, por lo que no hay ningún disco abierto en el dominio de $ F $ que contiene todos los valores propios de $ A $, y por lo tanto no hay un punto base $ z_0 $ para lo cual la serie para $ tilde F $ converge en $ A $.

Podemos definir $ tilde G $ de otra manera, que coincide apropiadamente con las definiciones anteriores, pero que es más susceptible de cálculo explícito: si $ B $ es diagonalizable, por lo que podemos descomponer $$ B = P pmatrix lambda_1 & & \ & ddots & \ & & lambda_n P ^ – 1, $$
para valores propios $ lambda_a $ de $ B $ y algo de matriz $ P $, definimos
$$ tilde G (B): = P pmatrix G ( lambda_1) & & \ & ddots & \ & & G ( lambda_n) P ^ – 1. $$ De hecho, al sustituir y reorganizar, podemos ver que esto coincide, al menos formalmente, con la caracterización de series de poder. Existe una fórmula similar pero más complicada para no diagonalizable $ B $ que no escribiré aquí pero que se da en el artículo de Wikipedia Función de matriz.

Ejemplo La matriz dada $ A $ tiene valores propios distintos $ lambda _ pm = 1 pm sqrt 6 $, por lo que se puede diagonalizar como $$ P pmatrix 1 – sqrt 6 & 0 \ 0 & 1 + sqrt 6 P ^ – 1; $$ de hecho, podemos tomar $$ P = pmatrix tfrac 1 2 & tfrac 1 2 \ – frac 1 sqrt 6 & frac 1 sqrt 6 . $$

Ahora, $ F ( lambda _ pm) = Gamma ( lambda _ pm + 1) = Gamma (2 pm sqrt 6), $
y poniendo todo esto junto da que
begin align * pmatrix 1 & 3 \ 2 & 1! = bar F (A) & = P pmatrix F ( lambda_-) & 0 \ 0 & F ( lambda_ +) P ^ – 1 \ & = pmatrix tfrac 1 2 & tfrac 1 2 \ – frac 1 sqrt 6 & frac 1 sqrt 6 pmatrix Gamma (2 – sqrt 6) & 0 \ 0 & Gamma (2 + sqrt 6) pmatrix 1 & – frac sqrt 3 sqrt 2 \ 1 & frac sqrt 3 sqrt 2. end align *
Multiplicar esto da
$$ color # df0000 boxed pmatrix 1 & 3 \ 2 & 1! = pmatrix frac 1 2 alpha_ + & frac sqrt 3 2 sqrt 2 alpha_- \ frac 1 sqrt 6 alpha_- & frac 1 2 alpha_ +, $$
dónde $$ color # df0000 alpha _ pm = Gamma (2 + sqrt 6) pm Gamma (2 – sqrt 6). $$

Quizás no sea muy esclarecedor, pero $ A! $ tiene valor numérico
$$ pmatrix 1 & 3 \ 2 & 1! approx pmatrix 3.62744 y 8.84231 \ 5.89488 y 3.62744. $$

Para llevar a cabo estos cálculos, se puede utilizar el sistema integrado de Maple. MatrixFunction rutina (requiere la LinearAlgebra package) para escribir una función que calcule el factorial de cualquier matriz:

MatrixFactorial := X -> LinearAlgebra:-MatrixFunction(X, GAMMA(z + 1), z);

Evaluar, por ejemplo, $ A! $, entonces solo necesitamos ejecutar lo siguiente:

A := Matrix([[1, 3], [2, 1]]);
MatrixFactorial(A);

(Nota: ejecutar este código devuelve una expresión para $ A! $ diferente al anterior: Se puede ver que sus valores coinciden usando la fórmula de reflexión $ -z Gamma (z) Gamma (-z) = frac pi sin pi z. $ Podemos simplificar aún más la expresión usando la identidad $ Gamma (z + 1) = z Gamma (z) $ ampliando la identidad factorial $ (n + 1)! = (n + 1) cdot n! $ escribir $ Gamma (2 pm sqrt 6) = (6 pm sqrt 6) Gamma ( pm sqrt 6) $ y así escribir las entradas como expresiones algebraicas en $ pi $, $ sin ( pi sqrt 6) $, y $ Gamma ( sqrt 6) $ solo. Se puede obligar a Maple a realizar estas sustituciones ejecutando simplify(map(expand, %)); inmediatamente después de ejecutar el código anterior.) Para calcular el valor numérico, solo necesitamos ejecutar evalf(%); inmediatamente después del código anterior.

Por cierto, no necesitamos tener eso $ det B neq 0 $ para definir $ B! $. De hecho, procediendo como arriba encontramos que el factorial de la matriz cero (ya diagonal) es la matriz identidad: $$ 0! = pmatrix Gamma (1) & 0 \ 0 & Gamma (1) = I. $$ Del mismo modo, el uso de la fórmula para matrices no diagonalizables mencionadas anteriormente junto con una identidad especial da que el factorial de la $ 2 veces 2 $ Bloque de Jordan de valor propio $ 0 $ es, algo divertido,
$$ pmatrix 0 & 1 \ 0 & 0! = pmatrix 1 & – gamma \ 0 & 1, $$ dónde $ gamma $ es la constante de Euler-Mascheroni.

La función gamma es analítica. Utilice la serie de potencias de la misma.

EDITAR: ya hecho: algunas propiedades de las funciones de matriz Gamma y Beta (tal vez con muro de pago).

No tengo suficientes puntos de reputación para comentar la respuesta de Travis, pero su resultado numérico es incorrecto.

Usando Julia obtengo

A = [1 3;2 1]
EVD = eigfact(A)
V = EVD[:vectors]
g = gamma(EVD[:values])
gammaA = V * diagm(g) * inv(V)
factA = A * gammaA

 3.62744  8.84231
 5.89488  3.62744

Siempre que cond (V) no sea demasiado terrible, he encontrado que el procedimiento anterior es una forma práctica de evaluar funciones matriciales arbitrarias.

Sección de Reseñas y Valoraciones

Tienes la opción de respaldar nuestro trabajo fijando un comentario y dejando una valoración te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *