Source: https://webusers.imj-prg.fr/~christian.blanchet/enseignement/2009-10/partiel_nov_2009_cor.pdf