Source: http://csidoc.insa-lyon.fr/these/1999/prieto/chap1.pdf