graph theory enumeration bioinformatics coding theory optimization graph minors design theory digital communication comparative genomics experimental mathematics algorithms geometry operations research combinatorics generating functions finite fields matroids asymptotics graph colouring