Source: https://sites.uclouvain.be/archives-portail/cdc2014/cours-2014-WFARM1302.pdf