Source: https://perso.univ-rennes1.fr/guy.casale/enseignement/cours/GEA/complexes.pdf