Source: http://www.dcs.gla.ac.uk/~trinder/papers/sac-18.pdf