Source: http://scheid.perso.math.cnrs.fr/Enseignement/GRO/introGRO.pdf