Introduction to Computational Genomics by Nello Cristianini & Matthew W. Hahn