Source: https://pageperso.lis-lab.fr/~alexis.nasr/Ens/THL/lang_reg.pdf