In matematica, nel campo dell'algebra lineare, il prodotto di Kronecker, indicato con , è un'operazione tra due matrici di dimensioni arbitrarie, sempre applicabile, al contrario dell'altra più usuale moltiplicazione di matrici.
Definizione
Se A è una matrice m×n e B è una matrice p×q, allora il loro prodotto di Kronecker è una matrice mp×nq definita a blocchi nel modo seguente:
Cioè, esplicitando ogni termine:
Notare che questo prodotto non è un'estensione della sopra citata moltiplicazione "righe per colonne", in quanto la moltiplicazione tra una matrice 3×2 e una 2×3 produce una matrice 6×6, e non una 3×3.
Esempio
Proprietà
Bilinearità e associatività
Il prodotto di Kronecker è un caso speciale di prodotto tensoriale, dunque è bilineare e associativo:
- (se B e C hanno la stessa dimensione)
- (se A e B hanno la stessa dimensione)
- (k scalare)
Questo prodotto non è commutativo, tuttavia e sono equivalenti per permutazione, cioè esistono matrici di permutazione P e Q tali che . Se A e B sono quadrate, allora sono simili per permutazione, cioè vale che P = QT
Prodotto misto
Se A, B, C e D sono matrici tali che esiste il prodotto righe per colonne tra A e C e tra B e D, allora esiste anche e vale che
- .
Ne segue che è invertibile se e solo se lo sono A e B e l'inversa è data da
Spettro
Siano A e B quadrate di ordine n e q rispettivamente e siano λ1, ..., λn gli autovalori di A, μ1, ..., μq quelli di B. Allora gli autovalori di sono
Ne segue che la traccia è e che il determinante è .
Valori singolari
Siano A e B matrici rettangolari con valori singolari non nulli, rispettivamente , i=1,..,rA e , j=1,..,rB.
Allora il prodotto ha rArB valori singolari che sono esattamente , i=1,..,rA, j=1,..,rB.
Dal momento che il rango di una matrice è uguale al numero di valori singolari non nulli, allora è .
Relazioni col prodotto tensoriale astratto
Il prodotto di Kronecker tra matrici corrisponde al prodotto tensoriale astratto di mappe lineari. Specificatamente, se le matrici A e B rappresentano le trasformazioni lineari V1 → W1 e V2 → W2, allora la matrice rappresenta il prodotto tensoriale tra la due mappe V1 V2 → W1 W2.
Applicazioni al graph matching
Se e sono le matrici di adiacenza di due grafi non pesati, allora è la matrice di adiacenza di un grafo, detto di associazione, i cui vertici corrispondono ad assegnamenti fra i vertici dei due grafi originali e le cui clique massime/massimali corrispondono a match massimi/massimali fra i due grafi originali.
Equazioni matriciali
Il prodotto di Kronecker può essere usato per la rappresentazione di alcune equazioni matriciali. Si consideri ad esempio l'equazione AXB=C, dove A,B e C sono matrici date e X è incognita. Possiamo riscrivere tale equazione come
dove se X è di ordine m×n, vec(X) denota il vettore di dimensione m×n formato dalle entrate di X scritte ordinatamente per colonna, cioè
- .
Dalle proprietà enunciate finora, ne viene che l'equazione AXB=C ha un'unica soluzione se e solo se A e B sono non singolari.
Storia
Il prodotto di Kronecker prende il nome da Leopold Kronecker, ma ci sono poche prove che Kronecker sia stato il primo a definirlo e usarlo. In effetti, in passato è anche stato usato col nome di matrice di Zehfuss, da Johann Georg Zehfuss.[1]
Note
Collegamenti esterni