In an earlier post (written during an earlier life), I made mention of my boss’s boss’s boss, a big man in every sense of the term.
I was talking to him over the ether the other day. He mentioned that he’d had some time to kill, and he’d killed a part of it learning Python. I was impressed beyond words. Here was a man who had hardly had time to sleep, and when time was available, he used it wisely. Lest you form an adverse opinion of his capabilities, let me state that he earned his Ph.D in theoretical computer science from TIFR, Bombay. He’s achieved much, much more than that – but that is a story best saved for another day.
Contrast him with yours truly – younger, lazier, barely scraped through a Master’s degree and ran away from doing a Ph.D. Ran away from the subject of my Master’s, ran away to something I feel more comfortable with. All through my life, I’ve lived with the guilt that I was never a good student, never made good use of my time at school, college, or at the Institute with Tree Lined Avenues. Every time I get a few days off, I vow to read through and complete at least one chapter from one or more of the following books, depending on my mood at the time:
[1] Challenge and Thrill of Pre-College Mathematics, C. R. Pranesachar et al, New Age International Publishers
[2] Analysis-I, Terence Tao, Texts and Readings in Mathematics, 2006.
[3] Linear Algebra, Hoffman, Kunze, Prentice-Hall, 1971.
[4] A Survey of Modern Algebra, Birkhoff, MacLane, Universities Press.
[5] Computer Architecture: A Quantitative Approach. Hennessy, Patterson Morgan Kaufman, 3rd Ed.
[6] Structure and Interpretation of Computer Programs, Sussman, Sussman, Abelson, The MIT Press, 2nd Ed, 1996.
[7] The Art of Computer Programming, Volumes 1-3, Donald E. Knuth, Prentice-Hall.
[8] Algebraic Codes for Data Transmission, Richard E. Blahut, Cambridge University Press, 2003.
[9] Elementary Probability and Stochastic Processes, Kai-Lai Chung, Springer Verlag, 1977
[10] An Introduction to Statistical Signal Processing, Gray, Davisson.
[11] The Design and Implementation of the FreeBSD Operating System, Marshall Kirk McKusick, Wiley.
I’m not quite sure as to /why/ I do this – in part, because I think I’m now in a position to understand and appreciate the contents of these books better, and perhaps partly in atonement for my wasted youth.
The list is truly longer – I’ve restricted it to what is usually uppermost on my mind. Needless to say, I haven’t made much progress (if at all) with /any/ of the items in the list. Consider [6], for instance. I discovered SICP about two years ago, and was moved to tears by the beauty of Scheme. I was so moved that I started writing my own scheme interpreter. The day I started to write it, I made it parse numerical expressions – it would easily understand that (+ 2 3) evaluated to 5. It also understood things like (define pi 3.14159). The next day, I /almost/ made it understand what (define (sum x y) (+ x y)) meant. I then gave up, and haven’t looked at it since.
No wonder then, that I was depressed after yesterday’s chat with the Big Man.
Came today, and I was idly leafing through the pages of the little Green Book [1], when a problem caught my eye:
* Problem: Show that 1 + 2!2 + 3!3 + ... + n!n = (n + 1)! - 1
First thought: WTF is this? Oh, OK.
Second: Too tough, where's the answer section? Oh crap, it
doesn't have the answer to /this/ problem.
Third: Hey, I could use induction!
Fourth: Oh wait a sec. If I induct blindly, I'm not really
understanding the problem. Let's see now... n!n can be written as
(n + 1)! - n!. That's it! I just rewrite the left-hand side as
sum_{k \in (1, ... ,n)}((k + 1)! - k!) and happily watch successive terms
knock each other out, except for the second and the last, which are -1
and (n + 1)! :
1!1 = 2! - 1!
2!2 = 3! - 2!
...
n!n = (n + 1)! - n!
I felt happy, but the happiness was as short lived as the fizz in champagne from yesterday’s bottle. The book was meant for kids in the 9th and 10th standards. Did I even have a brain anymore? That apart – a good problem solver (dare I say mathematician?) would display none of the trepidation of the second and third steps. [S]he would probably jump straight to step four, after optionally lingering at step 1. I hadn’t had enough humiliation for the day, so my eye proceeded to catch another problem:
* Problem: Prove that in any given party, the number of people who have
shaken an odd number of hands is always even.
First thought: Damn. I've seen this problem before... where? I've
forgotten how to do this, damn it.
Second: No, you don't /remember/ how to crack problems, you
effing /understand/ the problem and solve it. Idiot.
Third: Let's see now... why would this number be even?
Hmm... let N_h be the total number of people who have shaken hands, N_e and
N_o be the number of people who've shaken an even and odd number of hands,
respectively.
N_e is obviously even; so for N_o to be even, N_h has to be even. Now why
would the total number of people shaking hands be even? OK, here's how -
each handshake involves two people, so the total number of people shaking
hands is /necessarily/ even. Bingo. Sigh...
Fourth: Damn. It was one of those Russian books. Oh wait... the
guy who wrote it had a funny name. It was a funny name even for a Russian.
He has a twin brother but they didn't collaborate on this book. One of the
their names is that of some ancient Jewish Rabbi. Arrghh... The Brothers
Yaglom. Akiva and Isaak. (True enough, the book I was looking for was "The
USSR Olympiad Problem Book", Shklarsky, Chentzov and Yaglom, Dover
Publications. And no, I haven't gotten beyond the first page.)
It looks like the fear of mathematics that was instilled into me during my schooldays is yet to take its leave. Not a very happy state of affairs, I might add. Someday, I might just be cured of this condition. When, I do not yet know.