Source: https://ses.ens-lyon.fr/fichiers/Articles/ac25a.pdf