Source: http://icps.u-strasbg.fr/~bastoul/teaching/systeme/docs/TD1_section_critique.pdf