# Covarianza e controvarianza

In matematica e fisica, in particolare in algebra multilineare e nel calcolo tensoriale, le nozioni di covarianza e controvarianza si riferiscono al modo in cui la descrizione di una data entità geometrica o fisica varia quando si effettua un cambiamento di coordinate, come una rotazione o una dilatazione dello spazio. Nel caso di una rotazione di una base ortogonale la differenza tra vettori e covettori non si percepisce.

## Descrizione

* Affinché un vettore sia indipendente dalla base (sistema di riferimento) in cui viene ambientato è necessario che le sue componenti subiscano una trasformazione "contraria" a quella che subiscono i vettori di base $\mathbf {e} _{i}$ quando si cambia la base. Un vettore è per questo motivo detto vettore controvariante, e le sue componenti contravariano al fine di mantenerne l'invarianza rispetto al sistema di riferimento: la trasformazione delle coordinate avviene in maniera opposta rispetto al cambio di base, il quale rappresenta la rispettiva trasformazione inversa. Esempi di vettori contravarianti sono la posizione di un oggetto relativamente ad un osservatore e le sue derivate rispetto al tempo, come la velocità e l'accelerazione.
* Affinché un vettore duale $\alpha$, ovvero appartenente allo spazio duale dello spazio di partenza, sia indipendente dalla base in cui viene scritto è necessario che le sue componenti subiscano la stessa trasformazione dei vettori (funzioni lineari) di base $\mathbf {e} ^{i}$ quando si cambia la base. Un vettore duale è perciò detto vettore covariante, e le sue componenti covariano al fine di mantenerne l'invarianza rispetto al sistema di riferimento: la trasformazione delle coordinate è la stessa del cambio di base. Esempi di vettori covarianti si ottengono solitamente applicando il gradiente ad una funzione.
Se quindi il sistema di riferimento subisce una trasformazione descritta dalla matrice invertibile $M$ in modo che le coordinate $\mathbf {x}$ di un vettore diventano $\mathbf {x} '=M\mathbf {x}$, un vettore covariante $\mathbf {v}$ si trasforma nello stesso modo, ovvero $\mathbf {v} '=M\mathbf {v}$.
Il concetto di covarianza e controvarianza è di grande importanza nell'ambito dei tensori, oggetti matematici che sono in generale caratterizzati sia da componenti covarianti che controvarianti, e che per tale motivo sono detti avere varianza mista.
Dato uno spazio vettoriale $V$ con una base $\{\mathbf {e} _{i}\}$ e il suo spazio duale $V^{*}$ con la base duale $\{\mathbf {e} ^{i}\}$, in relazione a tale dualità gli elementi di $V^{*}$ si dicono covettori in quanto sono dei funzionali lineari sullo spazio $V$ che, grazie al teorema di Riesz, possono essere "combinati" con gli elementi di $V$, cioè i vettori, per dare uno scalare. Dopodiché i vettori e i covettori restano due oggetti distinti, definiti in spazi distinti, aventi ognuno le proprie componenti rispetto alla base data:
* le componenti del vettore $\mathbf {v}$ rispetto a $\{\mathbf {e} _{i}\}$ vengono indicate con $v^{i}$ e si dicono componenti controvarianti;
* le componenti di una applicazione $f$ rispetto alle funzioni $\{\mathbf {e} ^{i}\}$ vengono indicate con $f_{i}$ e si dicono componenti covarianti.

## Definizione

Sia $V$ uno spazio vettoriale di dimensione n sul campo $S$, e siano $\mathbf {f} =(\mathbf {X} _{1},\dots ,\mathbf {X} _{n})$ e $\mathbf {f} '=(\mathbf {X} '_{1},\dots ,\mathbf {X} '_{n})$ basi di $V$. Sia il cambio di base da $\mathbf {f}$ a $\mathbf {f} '$ dato da:
    $\mathbf {X} '_{j}=\sum _{i}a_{j}^{i}\mathbf {X} _{i}$
ovvero:
    $\mathbf {f} \mapsto \mathbf {f} '=\left(\sum _{i}a_{1}^{i}\mathbf {X} _{i},\dots ,\sum _{i}a_{n}^{i}\mathbf {X} _{i}\right)=\mathbf {f} A$
dove $A$ è la matrice di cambiamento di base, una matrice invertibile di dimensione $n\times n$ e di elementi $a_{j}^{i}$.

### Trasformazione controvariante

Un vettore $\mathbf {v} \in V$ è espresso unicamente dalla combinazione lineare degli elementi della base $\mathbf {f}$ come:
    $\mathbf {v} =\sum _{i}v^{i}[\mathbf {f} ]\mathbf {X} _{i}$
dove $v^{i}[\mathbf {f} ]$ sono scalari, e rappresentano le coordinate di $\mathbf {v}$ nella base $\mathbf {f}$. Detto $\mathbf {v} [\mathbf {f} ]$ il vettore delle componenti di $\mathbf {v}$:
    $\mathbf {v} [\mathbf {f} ]={\begin{bmatrix}v^{1}[\mathbf {f} ]\\v^{2}[\mathbf {f} ]\\\vdots \\v^{n}[\mathbf {f} ]\end{bmatrix}}$
si osserva che $\mathbf {v}$ può essere scritto come prodotto matriciale:
    $\mathbf {v} =\mathbf {f} \,\mathbf {v} [\mathbf {f} ]$
e analogamente nella base $\mathbf {f} '$:
    $\mathbf {v} =\mathbf {f'} \,\mathbf {v} [\mathbf {f'} ]$
Dal momento che $\mathbf {v}$ non dipende dalla base in cui è espresso si ha:
    $\mathbf {f} \,\mathbf {v} [\mathbf {f} ]=\mathbf {v} =\mathbf {f'} \,\mathbf {v} [\mathbf {f'} ]$
e poiché $\mathbf {f} '=\mathbf {f} A$ si ha:
    $\mathbf {f} \,\mathbf {v} [\mathbf {f} ]=\mathbf {f} A\,\mathbf {v} [\mathbf {f'} ]$
da cui si ottiene la regola di trasformazione:
    $\mathbf {v} [\mathbf {f'} ]=A^{-1}\mathbf {v} [\mathbf {f} ]$
In termini di componenti essa diviene:
    $v^{i}[\mathbf {f'} ]=\sum _{j}{\tilde {a}}_{j}^{i}v^{j}[\mathbf {f} ]$
dove i coefficienti ${\tilde {a}}_{j}^{i}$ sono le entrate della matrice inversa di $A$.
Dato che le componenti di $\mathbf {v}$ si trasformano come l'inversa di $A$, si dice che esse si trasformano in modo controvariante in seguito al cambio di base.
Il modo in cui $A$ lega le due coppie si rappresenta attraverso il seguente diagramma:
    $\mathbf {f} \longrightarrow \mathbf {f'}$
    $v[\mathbf {f} ]\longleftarrow v[\mathbf {f'} ]$

### Trasformazione covariante

Un funzionale lineare $\alpha$ su $V$ è determinato univocamente dalla sua azione sui vettori di una base di $V$. Detti $\mathbf {X} _{i}$ gli elementi della base $\mathbf {f}$ di $V$, le componenti di $\alpha$ rispetto a $\mathbf {f}$ sono:
    $\alpha _{i}[\mathbf {f} ]=\alpha (\mathbf {X} _{i})\quad i=1,2,\dots ,n$
Passando dalla base $\mathbf {f}$ alla base $\mathbf {f} '$ le componenti si trasformano in modo tale che:
    ${\begin{array}{rcl}\alpha _{i}[\mathbf {f'} ]&=&\alpha (\mathbf {X} '_{i})\\&=&\alpha \left(\sum _{j}a_{i}^{j}\mathbf {X} _{j}\right)\\&=&\sum _{j}a_{i}^{j}\alpha (\mathbf {X} _{j})\\&=&\sum _{j}a_{i}^{j}\alpha _{j}[\mathbf {f} ]\end{array}}$
Detto $\mathbf {\alpha } [\mathbf {f} ]$ il vettore delle componenti di $\mathbf {\alpha }$:
    $\mathbf {\alpha } [\mathbf {f} ]={\begin{bmatrix}\alpha _{1}[\mathbf {f} ]&\alpha _{2}[\mathbf {f} ]&\dots &\alpha _{n}[\mathbf {f} ]\end{bmatrix}}$
si ha:
    $\alpha [\mathbf {f'} ]=\alpha [\mathbf {f} ]A$
Dal momento che le componenti del funzionale lineare $\alpha$ si trasformano secondo la matrice $A$, si dice che esse trasformano in modo covariante in seguito al cambio di base.
Il modo in cui $A$ lega le due coppie si rappresenta attraverso il seguente diagramma:
    $\mathbf {f} \longrightarrow \mathbf {f'}$
    $\alpha [\mathbf {f} ]\longrightarrow \alpha [\mathbf {f'} ]$
Se si fosse usata la rappresentazione mediante un vettore colonna, la trasformazione sarebbe stata:
    $\alpha ^{\mathrm {T} }[\mathbf {f'} ]=A^{\mathrm {T} }\alpha ^{\mathrm {T} }[\mathbf {f} ]$

## Complementarità delle basi e delle componenti in spazi con metrica

Se in uno spazio vettoriale $V$ su un campo $K$ è definita una forma bilineare $g:V\times V\to K$, allora è possibile identificare vettori con covettori. In pratica, ad un vettore $\mathbf {v}$ si associa in modo unico il covettore $\alpha$ dato da:
    $\alpha (\mathbf {w} )=g(\mathbf {v} ,\mathbf {w} )\qquad \forall \mathbf {w}$
e tale corrispondenza è biunivoca. In questo modo si può parlare di componente covariante e componente controvariante di uno stesso vettore (covettore).
Data una base $\mathbf {f} =(X_{1},\dots ,X_{n})$ di $V$, esiste quindi un'unica base duale $\mathbf {f} ^{\sharp }=(Y^{1},\dots ,Y^{n})$ di $V$ determinata da:
    $Y^{i}(\mathbf {X} _{j})=\delta _{j}^{i}$
dove $\delta _{j}^{i}$ è il delta di Kronecker. Un generico vettore $\mathbf {v}$ può essere quindi scritto come:
    $\mathbf {v} =\sum _{i}v^{i}[\mathbf {f} ]\mathbf {X} _{i}=\mathbf {f} \,\mathbf {v} [\mathbf {f} ]=\sum _{i}v_{i}[\mathbf {f} ]Y^{i}=\mathbf {f} ^{\sharp }\mathbf {v} ^{\sharp }[\mathbf {f} ]$
dove le componenti $v^{i}[\mathbf {f} ]$ e $v_{i}[\mathbf {f} ]$ di $\mathbf {v}$ sono rispettivamente controvarianti e covarianti rispetto a $\mathbf {f}$. Applicando un cambio di base si ha infatti:
    $\mathbf {v} [\mathbf {f} A]=A^{-1}\mathbf {v} [\mathbf {f} ]\qquad \mathbf {v} ^{\sharp }[\mathbf {f} A]=A^{T}\mathbf {v} ^{\sharp }[\mathbf {f} ]$
Un altro modo di esprimere questa complementarità è ottenuto calcolando il prodotto scalare di due vettori $\mathbf {v}$ e $\mathbf {w}$ in funzione delle componenti dei due vettori. Infatti sviluppando uno dei due vettori rispetto ad una base e l'altro rispetto alla base duale si ha:
    $\mathbf {v} \cdot \mathbf {w} =\sum _{i,j=1}^{n}v^{i}w_{j}\mathbf {X} _{i}\cdot Y^{j}=\sum _{i,j=1}^{n}v^{i}w_{j}\delta _{ij}=\sum _{i=1}^{n}v^{i}w_{i}=\sum _{i=1}^{n}v_{i}w^{i}$

## Coordinate

La scelta della base $\mathbf {f}$ dello spazio vettoriale $V$ definisce univocamente un set di funzioni coordinate su $V$:
    $x^{i}[\mathbf {f} ](\mathbf {v} )=v^{i}[\mathbf {f} ]$
Le coordinate su $V$ sono dunque controvarianti:
    $x^{i}[\mathbf {f} A]=\sum _{k=1}^{n}{\tilde {a}}_{k}^{i}x^{k}[\mathbf {f} ]$
Un sistema di n quantità $v^{i}$ che si trasformano come le coordinate $x^{i}$ su $V$ definisce un vettore controvariante, mentre un sistema che trasforma in maniera opposta è un vettore covariante.
Data una varietà, dati i vettori tangenti e cotangenti alla varietà in un punto nel quale si definisce un sistema di coordinate locale $x^{i}$, gli assi di riferimento per tale sistema sono i campi vettoriali:
    $X_{1}={\frac {\partial }{\partial x^{1}}},\dots ,X_{n}={\frac {\partial }{\partial x^{n}}}$
che danno luogo al sistema di riferimento $\mathbf {f} =(X_{1},\dots ,X_{n})$, che può essere definito in ogni punto della superficie.
Se si considera un differente sistema di coordinate, con base $\mathbf {f} '$ data da:
    $Y_{1}={\frac {\partial }{\partial y^{1}}},\dots ,Y_{n}={\frac {\partial }{\partial y^{n}}}$
allora il sistema $\mathbf {f}$ è connesso a $\mathbf {f} '$ dall'inversa della Jacobiana $J$:
    $\mathbf {f} '=\mathbf {f} J^{-1}\qquad J=\left({\frac {\partial y^{i}}{\partial x^{j}}}\right)_{i,j=1}^{n}$
ovvero:
    ${\frac {\partial }{\partial y^{i}}}=\sum _{j=1}^{n}{\frac {\partial x^{j}}{\partial y^{i}}}{\frac {\partial }{\partial x^{j}}}$
Un vettore tangente è una combinazione lineare delle coordinate parziali $\partial /\partial x^{i}$, ed è quindi definito come:
    $\mathbf {v} =\sum _{i=1}^{n}v^{i}[\mathbf {f} ]\mathbf {X} _{i}=\mathbf {f} \ \mathbf {v} [\mathbf {f} ]$
Tale vettore è controvariante rispetto al cambio di sistema di riferimento, e rispetto al cambio di coordinate si ha:
    $\mathbf {v} [\mathbf {f} ']=\mathbf {v} [\mathbf {f} J^{-1}]=J\,\mathbf {v} [\mathbf {f} ]$
Dunque le componenti del vettore tangente si trasformano secondo la legge:
    $v^{i}[\mathbf {f} ']=\sum _{j=1}^{n}{\frac {\partial y^{i}}{\partial x^{j}}}v^{j}[\mathbf {f} ]$
Un sistema di n quantità $v^{i}$ che dipendono da coordinate che si trasformano in tale maniera è un vettore controvariante.

## Collocazione degli indici

La combinazione di due serie "complementari" di oggetti, una covariante ed una controvariante, è definita dalla relazione:
    $C=\sum _{i=1}^{n}A_{i}B^{i}=\sum _{i=1}^{n}A^{i}B_{i}$
dove C è un oggetto che è definito in modo indipendente dalla scelta della base. Gli indici delle due serie che vengono combinate possono essere inoltre scambiati, spostando all'apice quelli che erano al pedice e viceversa, e ancora si ottiene lo stesso risultato. Inoltre, combinando indici all'apice e al pedice si ha una "eliminazione" dell'indice, propriamente detta contrazione. Se si ha un prodotto scalare, che corrisponde geometricamente ad una proiezione ortogonale, allora il prodotto con indici all'apice produce indici all'apice e il prodotto con indici al pedice produce indici al pedice.
Nel caso in cui la serie che viene combinata sia una base di vettori, per spostare gli indici dal pedice all'apice e viceversa (operazioni dette di innalzamento e abbassamento degli indici) è necessario costruire la base duale della base considerata.
Invece se la serie che viene combinata è costituita dalle componenti di un vettore, allora per alzare ed abbassare gli indici è necessario ricavare le componenti controvarianti da quelle covarianti e viceversa:
    $v^{k}=\mathbf {v} \cdot \mathbf {e} ^{k}=\sum _{i=1}^{n}v_{i}\mathbf {e} ^{i}\cdot e^{k}\qquad v_{k}=\mathbf {v} \cdot \mathbf {e} _{k}=\sum _{i=1}^{n}v^{i}\mathbf {e} _{i}\cdot e_{k}$
Introducendo due matrici complementari di componenti:
    $g_{ik}\equiv \mathbf {e} _{i}\cdot \mathbf {e} _{k}\qquad g^{ik}\equiv \mathbf {e} ^{i}\cdot \mathbf {e} ^{k}$
le precedenti relazioni diventano:
    $v^{k}=\mathbf {v} \cdot \mathbf {e} ^{k}=\sum _{i=1}^{n}v_{i}g^{ik}\qquad v_{k}=\mathbf {v} \cdot \mathbf {e} _{k}=\sum _{i=1}^{n}v^{i}g_{ik}$
Le matrici $g_{ik}$ e $g^{ik}$ sono le matrici che rappresentano il prodotto scalare dei vettori, e permettono il passaggio dalla formulazione covariante e controvariante di un vettore.