Source: https://hal.inria.fr/hal-02953047v2/file/BD-JTB-SUB2.pdf