Source: https://irma.math.unistra.fr/~fbertran/enseignement/Magistere/TD_3_Mag.pdf