Source: http://www.lsta.upmc.fr/doct/patra/teaching/LM125-TD4-DimFin-S2.pdf