Source: https://www.labri.fr/perso/billaud/travaux/SYSRESEAU/polycop-psr.pdf