Suponha que recebamos uma matriz e deixe . Quão rápido podemos calcular a potência dessa matriz?
A próxima melhor coisa em comparação com a computação de produtos é utilizar a exponenciação rápida, que requer produtos da matriz .
Para matrizes diagonalizáveis, a decomposição de autovalor pode ser usada. É generalização natural, decomposição na Jordânia, é instável sob pertubação e, portanto, não conta (afaik).
A exponenciação da matriz no caso geral pode ser acelerada?
A rápida exponenciação sugere que uma variação dessa pergunta também é útil:
O quadrado de uma matriz geral ser calculado mais rapidamente do que por algoritmos de multiplicação de matriz conhecidos?
Respostas:
Como você observa, o cálculo de pode ser feito em vezes o número de operações para multiplicação de matrizes em matrizes. A resposta para sua segunda pergunta é não, pelo menos para a complexidade assintótica - o quadrado da matriz e a multiplicação da matriz têm uma complexidade aritmética / tempo equivalente (até fatores constantes). Reduzir o quadrado à multiplicação de matrizes é óbvio. Para reduzir a multiplicação de quadratura, suponha que desejamos calcular o produto de e . Forme a matriz com a estrutura de bloco: O ( log m ) N × N A B 2 n × 2 n CUMAm O ( logm) N× N UMA B 2 n × 2 n C
Ou seja, tem uma matriz todos os zeros no quadrante superior esquerdo e no quadrante inferior direito. Observe que contém no quadrante superior esquerdo.n × n C 2 A ⋅ BC n × n C2 A ⋅ B
fonte