http://www.damas.ift.ulaval.ca/~coursMA … -Vidal.pdf