Source: https://www.csd.uwo.ca/~hlutfiyy/Perv/Papers/forman94.pdf