Qual è la complessità per verificare se una matrice è diagonale?


13

Data una matrice A con voci razionali. Qual è la complessità per verificare che A sia diagonale?n×nUNUN

Sospetto che ciò possa essere fatto in P, ma non conosco alcun riferimento. Tuttavia, una domanda più interessante è: esiste qualche classe di complessità migliore per catturare questo problema?

Qualsiasi consiglio / commento è il benvenuto! Grazie.


Computando e fattorizzando il polinomio caratteristico, è possibile verificare in tempo polinomiale se la matrice è diagonale. Non conosco limiti migliori per questo problema.
Bruno,

7
@Bruno stai assumendo che una matrice sia diagonale se ha autovalori distinti? Questo non è vero, è una condizione sufficiente ma non necessaria. Una matrice di identità è un controesempio.
Tyson Williams,

@TysonWilliams: stavo assumendo il fatto equivalente che una matrice è diagonale se il suo polinomio caratteristico è un prodotto di distinti fattori lineari. Certo, l'equivalenza non vale per il polinomio caratteristico ma per il polinomio minimo ...
Bruno

4
Per compensare il mio errore, ecco un riferimento per un algoritmo temporale polinomiale per calcolare il polinomio minimo, dal quale puoi facilmente ottenere (o estrarre) un algoritmo per il controllo della diagonalizzazione: sul calcolo di polinomi minimi, vettori ciclici e forme di frobenius , di Daniel Augot e Paul Camion.
Bruno,

3
Puoi calcolare la forma canonica giordana di una matrice razionale in tempo polinomiale: worldscientific.com/doi/abs/10.1142/S0129054194000165
Robin Kothari,

Risposte:


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.