Source: https://www.iro.umontreal.ca/~hamelsyl/parcoursA09.pdf