Source: https://scd-resnum.univ-lyon3.fr/out/theses/2008_out_camillieri_s.pdf