Source: https://oatao.univ-toulouse.fr/7292/1/vidaljp.pdf