Explorations into the methods and exercises of "Concrete Mathematics: A Foundation for Computer Science" by Graham, Knuth and Patashnik