Source: http://www-igm.univ-mlv.fr/~pivoteau/ARCHI/TD/archi_td3et4.pdf