I am working on my CS degree, and I would like to read Knuth's books eventually. What level of mathematical and programming expertise do I need to understand books 1-3?